mcpbeat

Google Drive

sanjay3290/google-drive

| Interact with Google Drive - search files, find folders, list contents, download files, upload files, find a file/folder, list Drive contents, download or upload files, create folders, move files, or organize Drive content. Lightweight integration with standalone OAuth authentication supporting full read/write access.

This is a copy. The original lives at christophacham/google-drive.

10k tokens
context cost
the whole folder, loaded on every use
6
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
363
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/sanjay3290/ai-skills --skill google-drive

The instruction itself

8 sections, as written by the author

Google Drive

Lightweight Google Drive integration with standalone OAuth authentication. No MCP server required. Full read/write access.

> Requires Google Workspace account. Personal Gmail accounts are not supported.

First-Time Setup

Authenticate with Google (opens browser):

python scripts/auth.py login

Check authentication status:

python scripts/auth.py status

Logout when needed:

python scripts/auth.py logout

Read Commands

All operations via scripts/drive.py. Auto-authenticates on first use if not logged in.

# Search for files (full-text search)
python scripts/drive.py search "quarterly report"

# Search by title only
python scripts/drive.py search "title:budget"

# Search using Google Drive URL (extracts ID automatically)
python scripts/drive.py search "https://drive.google.com/drive/folders/1ABC123..."

# Search files shared with you
python scripts/drive.py search --shared-with-me

# Search with pagination
python scripts/drive.py search "report" --limit 5 --page-token "..."

# Find a folder by exact name
python scripts/drive.py find-folder "Project Documents"

# List files in root Drive
python scripts/drive.py list

# List files in a specific folder
python scripts/drive.py list 1ABC123xyz --limit 20

# Download a file
python scripts/drive.py download 1ABC123xyz ./downloads/report.pdf

Write Commands

# Upload a file to Drive root
python scripts/drive.py upload ~/Documents/report.pdf

# Upload to a specific folder
python scripts/drive.py upload ~/Documents/report.pdf --folder 1ABC123xyz

# Upload with a custom name
python scripts/drive.py upload ~/Documents/report.pdf --name "Q4 Report.pdf"

# Create a new folder
python scripts/drive.py create-folder "Project Documents"

# Create a folder inside another folder
python scripts/drive.py create-folder "Attachments" --parent 1ABC123xyz

# Move a file to a different folder
python scripts/drive.py move FILE_ID DESTINATION_FOLDER_ID

# Copy a file
python scripts/drive.py copy FILE_ID
python scripts/drive.py copy FILE_ID --name "Report Copy" --folder 1ABC123xyz

# Rename a file or folder
python scripts/drive.py rename FILE_ID "New Name.pdf"

# Move a file to trash
python scripts/drive.py trash FILE_ID

Search Query Formats

The search command supports multiple query formats:

| Format | Example | Description |

|--------|---------|-------------|

| Full-text | "quarterly report" | Searches file contents and names |

| Title | "title:budget" | Searches file names only |

| URL | https://drive.google.com/... | Extracts and uses file/folder ID |

| Folder ID | 1ABC123... | Lists folder contents (25+ char IDs) |

| Native query | mimeType='application/pdf' | Pass-through Drive query syntax |

File ID Format

Google Drive uses long IDs like 1ABC123xyz_-abc123. Get IDs from:

  • search results
  • find-folder results
  • list results
  • Google Drive URLs

Download Limitations

  • Regular files (PDFs, images, etc.) download directly
  • Google Docs/Sheets/Slides cannot be downloaded via this tool
  • For Google Workspace files, use export or dedicated tools

Token Management

Tokens stored securely using the system keyring:

  • macOS: Keychain
  • Windows: Windows Credential Locker
  • Linux: Secret Service API (GNOME Keyring, KDE Wallet, etc.)

Service name: google-drive-skill-oauth

Automatically refreshes expired tokens using Google's cloud function.

How to use it

Copy the folder

Take sanjay3290/google-drive from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.