google-drive について
google-driveは、Google Drive、Docs、Sheets、SlidesおよびWorkspace管理機能を操作するMCPサーバーです。ドキュメント編集、数式や書式を含むスプレッドシート操作、プレゼンテーション編集、共有ドライブ管理に対応し、OAuth2、サービスアカウント委任、Application Default Credentialsを利用できます。
主な機能
- 01Driveのファイル、フォルダー、共有、改訂の管理
- 02Docsのテキストと書式の編集
- 03Sheetsのデータ、数式、グラフ、書式の編集
- 04Slidesのコンテンツとレイアウトの作成・編集
- 05共有ドライブ権限と外部共有の監査
- 06ドキュメントとスプレッドシートの概要集約
活用シーン
- 01共有ドライブ全体の外部アクセス確認
- 02複数のスプレッドシートへの一括書式設定
- 03Docsのアウトラインからプレゼンテーションを作成
- 04ドキュメントの構成とリンクの確認
MCP 対応
MCPクライアントにツール、ワークフロープロンプト、URIベースの読み取り専用リソースを提供します。stdioとStreamable HTTPのトランスポートに対応し、認証方式を設定できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @us-all/google-drive-mcpGOOGLE_CLIENT_IDシークレットOAuth client ID. Required for OAuth refresh-token auth method.GOOGLE_CLIENT_SECRETシークレットOAuth client secret. Required for OAuth refresh-token auth method.GOOGLE_REFRESH_TOKENシークレットOAuth refresh token. Required for OAuth refresh-token auth method.GOOGLE_APPLICATION_CREDENTIALSシークレットPath to service account JSON key. Required for SA + DWD auth method (alternative to OAuth).GOOGLE_SERVICE_ACCOUNT_KEY_PATHシークレットAlias for GOOGLE_APPLICATION_CREDENTIALS.GOOGLE_IMPERSONATE_USERWorkspace user email to impersonate (DWD). Required when using service account auth.GOOGLE_DRIVE_SCOPESComma-separated OAuth scopes. Defaults are read-only; write mode broadens Drive/Docs scopes as needed.GOOGLE_DRIVE_ALLOW_WRITESet to 'true' to enable write tools. Default read-only.GD_TOOLSComma-separated category allowlist. Default: all categories enabled.GD_DISABLEComma-separated category disablelist.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Google Drive MCP サーバー
Workspace の高度な編集に対応する MCP — 数式を認識する Sheets、完全な Slides 編集、読み取り専用の Claude.ai コネクタが意図的に提供しない共有ドライブの監査機能を備えています。
Drive、Docs、Sheets、Slides、GWS 管理機能、集計機能にわたる 98 個のツールを提供します。組織規模の自動化には、サービスアカウントとドメイン全体の委任を利用できます。GWS に対応した機能検出により、Workspace アカウントで機能が自動的に有効になります。
他のツールにはない機能
- 高度な Sheets 編集 — グラフ、条件付き書式、保護された範囲、名前付き範囲、データ検証、罫線、セルの結合、並べ替え、検索と置換、数式、CJK のシート名に対応した A1 形式の引用符の二重化に対応しています。Workspace のファーストパーティコネクタは Sheets を CSV として読み込むため、数式は保持されません。
- 完全な Slides 編集 — プレゼンテーション、スライド、図形、表、画像、書式設定に対応しています。コネクタではまったく利用できません。
- 共有ドライブの管理ツール —
list-shared-drives、get-shared-drive、create-shared-drive、権限の一覧表示・共有・削除、ファイルのアクティビティ、ラベル、承認に対応しています。コネクタが意図的に公開していない Workspace のガバナンス機能です。 - 3 種類の認証モード — OAuth2(個人用または GWS)、サービスアカウントとドメイン全体の委任(組織規模)、アプリケーションのデフォルト認証情報(自動検出)を利用できます。
- 集計ツール —
audit-shared-drive-permissions(単一の共有ドライブ監査)とaudit-external-shares(外部ドメインへの共有集中度の上位ビューを含む、ドライブ横断/マイドライブ監査)、summarize-spreadsheet(メタデータ+タブごとのサンプル+名前付き範囲)、summarize-doc(ファイル+コンテンツ+権限+コメント)を利用できます。 - MCP プロンプト(3 種類)—
cleanup-shared-with-me、analyze-doc-structure、bulk-format-spreadsheetを利用できます。 - GWS 対応 — 起動時に
capabilities.tsがアカウントの種類を検出します。個人アカウントで GWS 専用ツールを使うと、原因のわかりにくい 403 エラーではなく、明確なエラーが返されます。
試してみましょう — 5 つのプロンプト
サーバーを Claude Desktop または Claude Code に接続し、次のいずれかを貼り付けてください。
- 共有ドライブの権限監査 — 「すべての共有ドライブで外部との共有を監査してください。
us-all.co.krの外部にいて、何かにアクセスできる人を一覧にしてください。ドライブごとにまとめ、アクセスレベル順に並べてください。」 - 条件付き書式の一括設定 — 「ドライブ内の
sales-*に該当するすべてのスプレッドシートで、amount列に次の条件付き書式を適用してください。0 未満なら赤、0~100 なら黄色、100 より大きければ緑にしてください。」 - Doc のアウトラインから Slides を作成 — 「この Google Doc のアウトラインを 12 枚のプレゼンテーションに変換してください。タイトルスライドの後、各 H2 に 1 枚ずつスライドを割り当て、H3 を箇条書きにしてください。最後は Q&A スライドにしてください。会社のテンプレートを使ってください。」
- Doc の構造分析 — 「この Doc の構造を分析してください。見出しの階層、内部リンクと外部リンクの状態、画像の代替テキストの網羅状況を確認し、具体的な改善案を 3 つ提案してください。」
- 共有アイテムの整理 — 「180 日以上前に共有され、まだ開いたことのないファイルを探してください。共有者、最終更新日時、保持すべきかどうかの推測とともに一覧にしてください。」
これと代替手段の使い分け
| Anthropic 1st-party Workspace connector | taylorwilsdon/google_workspace_mcp | xing5/mcp-google-sheets | @us-all/google-drive-mcp (これ) | |
|---|---|---|---|---|
| スター数/利用可否 | n/a (Claude.ai built-in, Feb 2026) | 2.3K★ | 836★ | — |
| 対応範囲 | Drive 読み取り + CSV としての Sheets 読み取り | Gmail+Calendar+Drive+Docs+Sheets+Slides+Forms+Chat+Tasks+Contacts+Apps Script | Sheets のみ | Drive + Docs + Sheets + Slides + GWS 管理 |
| Sheets の数式編集 | ❌ (CSV の往復変換で数式が失われます) | ✅ 基本機能 | ✅ 専門機能 | ✅ 高度な機能 (グラフ/条件付き書式/名前付き範囲) |
| Slides の編集 | ❌ | ✅ | ❌ | ✅ 高度な機能 |
| 共有ドライブの管理 | 一部対応 | ✅ | ❌ | ✅ 高度な機能 |
| フォルダー操作 | ❌ | ✅ | ❌ | ✅ |
| 集計ツール | ❌ | ❌ | ❌ | ✅ summarize-spreadsheet, summarize-doc, audit-external-shares |
| MCP プロンプト | ❌ | ❌ | ❌ | ✅ 4 |
| 認証方式 | 管理された OAuth | OAuth + SA + ステートレス | SA / OAuth / ADC | OAuth + SA + DWD + ADC |
| トランスポート | n/a (Claude.ai のみ) | stdio + HTTP | stdio | stdio |
Claude.ai で設定不要の Drive 読み取りワークフローを実行する場合は、1st-party connector を使用してください。Workspace の全機能 (Gmail / Calendar / Forms など) が必要な場合は、taylorwilsdon を使用してください。Drive + Docs + Sheets + Slides の高度な編集、共有ドライブのガバナンス、コネクターでは実行できない一括操作には、このサーバーを使用してください。
インストール
Claude Desktop
{
"mcpServers": {
"google-drive": {
"command": "npx",
"args": ["-y", "@us-all/google-drive-mcp"],
"env": {
"GOOGLE_CLIENT_ID": "<your-client-id>",
"GOOGLE_CLIENT_SECRET": "<your-client-secret>",
"GOOGLE_REFRESH_TOKEN": "<your-refresh-token>"
}
}
}
}
Claude Code
claude mcp add google-drive -s user -- npx -y @us-all/google-drive-mcp
(環境変数は別途、または .mcp.json で設定してください。)
Docker
docker run --rm -i --env-file .env ghcr.io/us-all/google-drive-mcp-server
ソースからビルド
git clone https://github.com/us-all/google-drive-mcp-server.git
cd google-drive-mcp-server && pnpm install && pnpm build
node dist/index.js
認証の設定
OAuth2 (個人または GWS)
- Google Cloud Console → プロジェクトを作成します
- Drive API、Docs API、Sheets API、Slides API、Drive Activity API、Drive Labels API を有効にします
- OAuth2 認証情報 (Desktop App) を作成します
- 更新トークンを取得します (OAuth2 playground または独自のフローを使用)
GOOGLE_CLIENT_ID、GOOGLE_CLIENT_SECRET、GOOGLE_REFRESH_TOKENを設定します
サービスアカウント + ドメイン全体の委任 (組織規模)
- Google Cloud Console でサービスアカウントを作成します
- JSON キーをダウンロードします
- Workspace Admin Console → Security → API Controls → Domain-Wide Delegation → SA の Client ID を追加し、必要なスコープを付与します
GOOGLE_SERVICE_ACCOUNT_KEY_PATHとGOOGLE_IMPERSONATE_USERを設定します
アプリケーションのデフォルト認証情報 (設定不要)
gcloud auth application-default login --client-id-file=client_secret.json --scopes=... — 起動時に自動検出されます。Windows の ADC パス (%APPDATA%\gcloud\) にも対応しています。
設定
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
GOOGLE_CLIENT_ID | OAuth2 | — | OAuth2 Client ID |
GOOGLE_CLIENT_SECRET | OAuth2 | — | OAuth2 Client Secret |
GOOGLE_REFRESH_TOKEN | OAuth2 | — | OAuth2 Refresh Token |
GOOGLE_SERVICE_ACCOUNT_KEY_PATH | SA | — | サービスアカウント JSON キーへのパス |
GOOGLE_IMPERSONATE_USER | ❌ | — | なりすます GWS ユーザーのメールアドレス (SA のみ) |
GOOGLE_DRIVE_ALLOW_WRITE | ❌ | false | 変更操作を有効にするには true を設定します |
GOOGLE_DRIVE_SCOPES | ❌ | 読み取り専用の Drive Activity + Docs スコープ (または、書き込みが有効な場合はより広範な Drive/Docs スコープ) | OAuth スコープのカンマ区切りの上書き値 |
GD_TOOLS | ❌ | — | カテゴリーのカンマ区切り許可リスト。トークンを最も節約できます。 |
GD_DISABLE | ❌ | — | カンマ区切りの拒否リスト。GD_TOOLS が設定されている場合は無視されます。 |
MCP_TRANSPORT | ❌ | stdio | Streamable HTTP トランスポートを有効にするには http を指定します |
MCP_HTTP_TOKEN | 条件付き | — | Bearer トークン。MCP_TRANSPORT=http の場合に必須です |
MCP_HTTP_PORT | ❌ | 3000 | HTTP リッスンポート |
MCP_HTTP_HOST | ❌ | 127.0.0.1 | HTTP バインドホスト (localhost では DNS リバインディング保護が自動的に有効になります) |
MCP_HTTP_SKIP_AUTH | ❌ | false | Bearer 認証をスキップします。認証を処理するリバースプロキシの背後で使用する場合などに指定します |
カテゴリー (7): drive、sheets、docs、slides、shared-drives、labels、approvals。これらに加えて、meta は常に有効です。
MCP_TRANSPORT=http の場合: POST /mcp (Bearer 認証付き JSON-RPC) + GET /health (公開ヘルスチェック)。
トークン効率
| シナリオ | ツール | スキーマトークン | デフォルトとの比較 |
|---|---|---|---|
| デフォルト(すべてのカテゴリ) | 96 | 18,400 | — |
一般的な設定(GD_TOOLS=drive,docs,sheets) | 68 | 13,700 | −25% |
限定的な設定(GD_TOOLS=drive) | 25 | 4,000 | −78% |
extractFields による list-files/get-file/sheets-get-spreadsheet/docs-get-document の射影(デフォルトは tabsCount、rowCount、columnCount、locale、timeZone)。list-files のスリムなデフォルト設定では、約80%を削減します(capabilities の40個のブール値を持つオブジェクトと contentRestrictions を除外)。
GWS の検出
capabilities.ts は起動時に about.get() とドメインチェックを使用してアカウントの種類を検出します。
| 機能 | 個人アカウント | GWS Standard+ | GWS Enterprise |
|---|---|---|---|
| ファイルの CRUD/検索/エクスポート | ✅ | ✅ | ✅ |
| Docs/Sheets/Slides の編集 | ✅ | ✅ | ✅ |
| コメントとリビジョン | ✅ | ✅ | ✅ |
| Drive のアクティビティ | ✅ | ✅ | ✅ |
| 共有ドライブ | — | ✅ | ✅ |
| ラベル(分類) | — | ✅ | ✅ |
| 承認 | — | ✅ | ✅ |
| ドメイン全体の委任 | — | ✅ | ✅ |
GWS 専用ツールは、個人アカウントでは明確なメッセージとともに GWSFeatureError をスローします。原因不明の403エラーは発生しません。
MCP プロンプト(4件)
MCP の prompts/list から利用できるワークフローテンプレートです。
audit-shared-drive-permissions— 外部共有を組織全体で監査し、アクセスレベルの例外を特定します。cleanup-shared-with-me— 放置された古い共有を見つけ、整理方法を提案します。analyze-doc-structure— 見出しの階層、リンクの健全性、代替テキストの網羅性を確認します。bulk-format-spreadsheet— 複数のシート/タブに一貫した書式を適用します。
MCP リソース
URI ベースの読み取り専用アクセスです。
gdrive://file/{fileId}gdrive://spreadsheet/{spreadsheetId}gdrive://document/{documentId}gdrive://presentation/{presentationId}gdrive://folder/{folderId}gdrive://shared-drive/{driveId}(GWS の利用が必要)gdrive://about/me
ツール(98件)
7つのカテゴリがあります。実行時にツールを探すには search-tools を使用してください。以下に全リストを折りたたんであります。
| カテゴリ | ツール数 |
|---|---|
| Sheets(データ/構造/書式設定/高度な機能) | 30 |
| Drive(ファイル/検索/フォルダー/権限/エクスポート/コメント/リビジョン/アクティビティ) | 24 |
| Slides(プレゼンテーション/スライド管理/コンテンツ/書式設定) | 20 |
| Docs(ドキュメント/編集/書式設定/要素) | 13 |
| GWS 専用(共有ドライブ/ラベル/承認/監査) | 9 |
集計(summarize-spreadsheet、summarize-doc、audit-external-shares) | 3 |
メタ(search-tools) | 1 |
ツールの全リスト
Drive(24件)
get-about、list-files、get-file、read-file、create-file、update-file、copy-file、delete-file、search-files、create-folder、move-file、get-folder-tree、list-permissions、share-file、remove-permission、export-file、get-download-link、list-comments、get-comment、create-comment、resolve-comment、list-revisions、get-revision、get-activity
Google Docs(13件)
ドキュメント:docs-get-document、docs-create-document、docs-get-content、docs-list-tabs
編集:docs-insert-text、docs-delete-range、docs-replace-text、docs-batch-update
書式設定:docs-format-text、docs-format-paragraph
要素:docs-insert-table、docs-insert-image、docs-insert-page-break
Google Slides(20)
プレゼンテーション:slides-get-presentation、slides-create-presentation、slides-duplicate-presentation
スライド管理:slides-get-slide、slides-add-slide、slides-delete-slide、slides-move-slide、slides-duplicate-slide
コンテンツ:slides-insert-text、slides-replace-text、slides-insert-text-box、slides-insert-image、slides-insert-table、slides-update-table-cell、slides-insert-shape
書式設定:slides-format-text、slides-format-shape、slides-resize-element、slides-set-slide-background、slides-batch-update
GWS 専用(9)
list-shared-drives、get-shared-drive、create-shared-drive、audit-shared-drive-permissions、list-file-labels、apply-label、remove-label、list-approvals、get-approval
集約
summarize-spreadsheet、summarize-doc、audit-external-shares
audit-external-shares は GWS 専用の audit-shared-drive-permissions を補完するツールです。呼び出し元が参照できるすべてのコーパス(個人アカウントでは My Drive のみ)を対象に実行し、外部ドメインの集中度を示すビューを追加します。
メタ
search-tools — キーワードでほかのツールを検索します。常に有効です。
アーキテクチャ
Claude → MCP stdio → src/index.ts
├── config.ts (OAuth2 / SA / ADC)
├── capabilities.ts (Personal vs GWS detect)
├── client.ts (Google API auth)
└── tools/{files,search,folders,permissions,export,comments,revisions,
about,activity,docs,sheets,slides,shared-drives,labels,approvals,
aggregations}.ts
↓
Drive API v3 / Docs API v1 / Sheets API v4 /
Slides API v1 / Drive Activity API v2 / Drive Labels API v2
@us-all/mcp-toolkit を基盤として構築されています。
extractFields— トークン効率に優れたレスポンスの射影aggregate(fetchers, caveats)—summarize-doc用のファンアウトヘルパーcreateWrapToolHandler— Google のクエリ文字列key=...の秘匿化、WriteBlockedError/GWSFeatureErrorのパススルー、Google API エラーの抽出search-toolsメタツール
すべての Drive API 呼び出しに supportsAllDrives: true が渡されるため、共有ドライブをそのまま利用できます。
技術スタック
Node.js 22+ • TypeScript strict ESM • pnpm • @modelcontextprotocol/sdk • googleapis(Drive v3 / Docs v1 / Sheets v4 / Slides v1 / Activity v2 / Labels v2)• zod • dotenv • vitest。
制限事項
- Approvals API —
googleapisSDK には型付きバインディングがないため、認証ヘッダーを抽出して rawfetchを使用します。 search-files— プレーンテキストをfullText contains '...'で自動的にラップします。高度な検索では、Drive のクエリ構文を直接渡してください。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。