> ## Documentation Index
> Fetch the complete documentation index at: https://docs.routemcp.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Google Drive

> Google Drive API — search, read, create, upload, share, comment, and manage files, folders, permissions, revisions, and shared drives. 58 tools accessible through the MCP runtime endpoint.

<img src="https://lh3.googleusercontent.com/uYdjnj7OBSOK4TbMtH1yXGAQwiiC0fjpAn-yNtlkK5gg1_jTCFFcfW_ywlzFvZhoB7dVIaN6oK8xOiBOm2Ejjg=w80-h80" alt="Google Drive" style={{ width: "48px", height: "48px", marginBottom: "16px" }} />

## Overview

| Property   | Value                        |
| ---------- | ---------------------------- |
| Slug       | `google-drive`               |
| Category   | Documents & Storage          |
| Auth       | OAuth 2.0 + PKCE             |
| Base URL   | `https://www.googleapis.com` |
| Tool count | 58                           |
| Rate limit | 5 req/sec, 250 req/min       |

## Supported tools

All 58 slugs surfaced through MCP:

| Area                      | Slugs                                                                                                                                                                                                                                                                                                                       |
| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| About                     | `GOOGLE_DRIVE_GET_ABOUT`                                                                                                                                                                                                                                                                                                    |
| Files (CRUD, move, trash) | `GOOGLE_DRIVE_LIST_FILES`, `GOOGLE_DRIVE_GET_FILE`, `GOOGLE_DRIVE_CREATE_FOLDER`, `GOOGLE_DRIVE_COPY_FILE`, `GOOGLE_DRIVE_UPDATE_FILE`, `GOOGLE_DRIVE_TRASH_FILE`, `GOOGLE_DRIVE_UNTRASH_FILE`, `GOOGLE_DRIVE_DELETE_FILE`, `GOOGLE_DRIVE_EMPTY_TRASH`, `GOOGLE_DRIVE_GENERATE_IDS`, `GOOGLE_DRIVE_CREATE_SHORTCUT_TO_FILE` |
| Content (in/out)          | `GOOGLE_DRIVE_DOWNLOAD_FILE`, `GOOGLE_DRIVE_EXPORT_FILE`, `GOOGLE_DRIVE_UPLOAD_FILE`, `GOOGLE_DRIVE_CREATE_TEXT_FILE`, `GOOGLE_DRIVE_REPLACE_FILE_CONTENT`, `GOOGLE_DRIVE_UPLOAD_FROM_URL`                                                                                                                                  |
| Read inline               | `GOOGLE_DRIVE_READ_DOCUMENT`, `GOOGLE_DRIVE_READ_SPREADSHEET`, `GOOGLE_DRIVE_READ_OFFICE_DOCUMENT`                                                                                                                                                                                                                          |
| Properties & labels       | `GOOGLE_DRIVE_SET_FILE_PROPERTIES`, `GOOGLE_DRIVE_GET_FILE_PROPERTIES`, `GOOGLE_DRIVE_LIST_FILE_LABELS`, `GOOGLE_DRIVE_MODIFY_FILE_LABELS`                                                                                                                                                                                  |
| Permissions               | `GOOGLE_DRIVE_LIST_PERMISSIONS`, `GOOGLE_DRIVE_CREATE_PERMISSION`, `GOOGLE_DRIVE_UPDATE_PERMISSION`, `GOOGLE_DRIVE_DELETE_PERMISSION`, `GOOGLE_DRIVE_GET_PERMISSION`, `GOOGLE_DRIVE_GET_PERMISSION_ID_FOR_EMAIL`                                                                                                            |
| Comments                  | `GOOGLE_DRIVE_LIST_COMMENTS`, `GOOGLE_DRIVE_GET_COMMENT`, `GOOGLE_DRIVE_CREATE_COMMENT`, `GOOGLE_DRIVE_UPDATE_COMMENT`, `GOOGLE_DRIVE_DELETE_COMMENT`                                                                                                                                                                       |
| Replies                   | `GOOGLE_DRIVE_LIST_REPLIES`, `GOOGLE_DRIVE_GET_REPLY`, `GOOGLE_DRIVE_CREATE_REPLY`, `GOOGLE_DRIVE_UPDATE_REPLY`, `GOOGLE_DRIVE_DELETE_REPLY`                                                                                                                                                                                |
| Revisions                 | `GOOGLE_DRIVE_LIST_REVISIONS`, `GOOGLE_DRIVE_GET_REVISION`, `GOOGLE_DRIVE_UPDATE_REVISION`, `GOOGLE_DRIVE_DELETE_REVISION`                                                                                                                                                                                                  |
| Shared Drives             | `GOOGLE_DRIVE_LIST_DRIVES`, `GOOGLE_DRIVE_GET_DRIVE`, `GOOGLE_DRIVE_CREATE_DRIVE`, `GOOGLE_DRIVE_UPDATE_DRIVE`, `GOOGLE_DRIVE_DELETE_DRIVE`, `GOOGLE_DRIVE_HIDE_DRIVE`, `GOOGLE_DRIVE_UNHIDE_DRIVE`                                                                                                                         |
| Changes                   | `GOOGLE_DRIVE_GET_CHANGES_START_TOKEN`, `GOOGLE_DRIVE_LIST_CHANGES`                                                                                                                                                                                                                                                         |
| Apps                      | `GOOGLE_DRIVE_LIST_APPS`, `GOOGLE_DRIVE_GET_APP`                                                                                                                                                                                                                                                                            |
| Access proposals          | `GOOGLE_DRIVE_LIST_ACCESS_PROPOSALS`, `GOOGLE_DRIVE_RESOLVE_ACCESS_PROPOSAL`                                                                                                                                                                                                                                                |

## Connect setup

Google Drive uses Google's OAuth 2.0 with PKCE. You need a Google Cloud project with the **Google Drive API** enabled and OAuth credentials configured for a Web application.

<Steps>
  <Step title="Create a Google Cloud OAuth client">
    Go to [Google Cloud Console → APIs & Services → Credentials](https://console.cloud.google.com/apis/credentials), choose **Create credentials → OAuth client ID → Web application**, then copy the **Client ID** and **Client Secret**.
  </Step>

  <Step title="Add the redirect URI">
    Under **Authorized redirect URIs**, add:

    ```
    https://api.routemcp.io/api/v1/connect/oauth/callback
    ```
  </Step>

  <Step title="Enable the Google Drive API">
    In **APIs & Services → Library**, search for **Google Drive API** and click **Enable** on the same Google Cloud project.
  </Step>

  <Step title="Configure required scopes">
    Add these scopes on the OAuth consent screen:

    * `https://www.googleapis.com/auth/drive`
    * `openid`
    * `email`
    * `profile`
  </Step>

  <Step title="Connect via the widget">
    The end user opens the Connect widget, picks Google Drive, and is sent through the OAuth consent screen.
  </Step>
</Steps>

## Usage

### Through the chat endpoint (recommended)

```bash theme={null}
# List all PDF files in my Google Drive
curl -N -X POST "https://api.routemcp.io/api/v1/mcp/<workspace_id>/chat" \
  -H "x-api-key: sk_live_your_key" \
  -H "x-session-id: user-42" \
  -H "content-type: application/json" \
  -d '{"message": "List all PDF files in my Google Drive."}'

# Share the Q4 Report file with alice@example.com as an editor
curl -N -X POST "https://api.routemcp.io/api/v1/mcp/<workspace_id>/chat" \
  -H "x-api-key: sk_live_your_key" \
  -H "x-session-id: user-42" \
  -H "content-type: application/json" \
  -d '{"message": "Share the Q4 Report file with alice@example.com as an editor."}'
```

### Direct MCP JSON-RPC (Claude Desktop / Cursor / custom MCP clients)

```json theme={null}
{
  "mcpServers": {
    "routemcp": {
      "url": "https://api.routemcp.io/api/v1/mcp/<workspace_id>",
      "headers": {
        "x-api-key": "<YOUR_API_KEY>",
        "x-session-id": "<SESSION_ID>"
      }
    }
  }
}
```

Once connected, MCP clients can invoke any of the 58 tools by slug via the standard `tools/call` JSON-RPC method.
