google-drive-mcp
google-drive-mcp
Claude Code に Google Drive へのフルスコープアクセス(検索、読み取り、アップロード、名前変更、移動、共有権限の変更)を提供するローカル MCP サーバーです。このサーバーが作成したファイルだけでなく、Drive に既に存在するファイルも操作できます。
既存のコースファイルの名前変更、移動、共有変更といったタスクを実行するために、意図的に広範な https://www.googleapis.com/auth/drive スコープを要求しています。より狭い drive.file スコープではこれらのタスクは不可能だからです。
一度だけのセットアップ
このセットアップは 一度だけ 行います。その後は、すべての Claude Code セッションで google-drive ツールを使用できます。
ステップ 1 — Google Cloud プロジェクトを作成する(既に持っている場合はスキップ)
https://console.cloud.google.com/ にアクセスします。
上部バー → プロジェクトドロップダウン → 新しいプロジェクト。
app-integrationsのような名前を付けます → 作成。数秒待ってから、上部バーでそのプロジェクトが選択されていることを確認します。
ステップ 2 — Google Drive API を有効にする
https://console.cloud.google.com/apis/library/drive.googleapis.com にアクセスします。
プロジェクトが選択されていることを確認 → 有効にする をクリックします。
ステップ 3 — OAuth 同意画面を設定する
https://console.cloud.google.com/auth/overview(API とサービス → OAuth 同意画面)にアクセスします。
プロンプトが表示されたら、ユーザータイプ: 外部 → 作成 を選択します。 (個人の Google アカウントでは外部で問題ありません。「テストユーザー」として登録するだけです。)
必須項目を入力します:
アプリ名:
google-drive-mcp(何でも構いません)ユーザーサポートメール: あなたのメールアドレス
デベロッパーの連絡先メール: あなたのメールアドレス
保存して次へ進みます。
スコープ ページ:ここでスコープを追加する必要はありません。サーバーが認証時に要求します。保存して次へ進みます。
テストユーザー ページ:+ ユーザーを追加 をクリックし、自分の Google メールアドレス(自分の Google アカウント)を追加します。これはアプリが「テスト中」の間は必須です。保存して次へ進みます。
アプリを公開したり、Google の審査を受ける必要は ありません。テストステータスのアプリは、リストしたテストユーザーに対して無期限に動作します。ただし、テストアプリのリフレッシュトークンは、7日間使用しないと期限切れになる可能性があります。Drive ツールで認証エラーが発生した場合は、
npm run auth(ステップ 6)を再実行してください。
ステップ 4 — OAuth クライアントを作成する(デスクトップアプリ)
https://console.cloud.google.com/auth/clients(API とサービス → 認証情報)にアクセスします。
+ 認証情報を作成 → OAuth クライアント ID。
アプリケーションの種類: デスクトップアプリ。名前を
desktop-mcpにします → 作成。ダイアログで JSON をダウンロード をクリックします。
ステップ 5 — クライアントファイルをサーバーが期待する場所に配置する
ダウンロードした JSON を次の正確なパス/名前に保存します:
~/.config/google-drive-mcp/gcp-oauth.keys.jsonたとえば、~/Downloads/client_secret_XXXX.json にダウンロードされた場合:
mkdir -p ~/.config/google-drive-mcp
mv ~/Downloads/client_secret_*.json ~/.config/google-drive-mcp/gcp-oauth.keys.jsonステップ 6 — 認可する(一度だけ)
cd ~/mcp-servers/google-drive-mcp
npm run authこれにより URL が表示され、ブラウザが開きます。管理したい Drive の Google アカウントでサインインします。「Google がこのアプリを確認していません」という警告が表示されます(アプリがテスト中であるため予期されます)→ 詳細 → google-drive-mcp(安全ではないページ)に移動 → 続行 → Drive の権限を許可します。
成功すると、~/.config/google-drive-mcp/.gdrive-credentials.json(リフレッシュトークン — 秘密にしてください。既に chmod 600 になっています)が作成されます。
ステップ 7 — 使用する
サーバーは既に ~/.claude.json に google-drive という名前で登録されています。新しい Claude Code セッションを開始すると、gdrive_* ツールが利用可能になります。(MCP サーバーはセッション開始時に読み込まれるため、登録前に開始したセッションでは表示されません。)
簡単な手動スモークテスト(オプション):
cd ~/mcp-servers/google-drive-mcp && npm start
# prints "google-drive-mcp: connected over stdio", then waits. Ctrl-C to quit.ツール
ツール | 機能 |
| Drive の |
| 最近変更されたファイルを一覧表示 |
| フォルダの直接の子を一覧表示(デフォルトではゴミ箱内のアイテムは除外) |
| 1つのファイルのメタデータとリンク |
| 新しいタブで開くリンクと iframe |
| フォルダを作成(オプションでネスト可能) |
| ローカルファイルをパス指定でアップロード(ストリーム — 大きな PDF に適しています) |
| インラインコンテンツからテキストファイルを作成 |
| ファイルをコピー(フォルダは不可 — Drive API は1回の呼び出しでフォルダをコピーできません) |
| 既存のファイル/フォルダへのショートカットを作成(1つのアイテムを複数の場所に配置可能) |
| ファイル/フォルダの名前を変更 |
| 親の追加/削除による移動 |
| ゴミ箱に移動 — 元に戻せます、Drive は30日間保持 |
| ゴミ箱から復元 |
| 完全削除、ゴミ箱を経由せず、復元不可 — 保護あり(下記参照) |
| 権限を一覧表示(メールアドレス + ロール) |
| 権限を追加 — |
| ID で権限を削除 |
削除について
gdrive_trash が推奨される方法です。元に戻せ、Drive はゴミ箱内のアイテムを30日間保持し、gdrive_untrash で元の場所に戻せます。
gdrive_delete は完全かつ復元不可能で、ゴミ箱には入りません。削除する前にアイテムの現在の名前と完全に一致する confirmName が必要で、これにより何かを破壊する前にメタデータの読み取りが強制されるため、古いファイル ID や誤ったファイル ID は間違ったものを削除する代わりにエラーになります。フォルダを削除すると、その中のすべてのアイテムも削除されます。
登録
両方の設定ファイルに登録されています。これらは独立して読み取られるため、一方に登録しても他方ではサーバーが利用可能になりません:
~/.claude.json(Claude Code)~/Library/Application Support/Claude/claude_desktop_config.json(デスクトップ / Cowork)
それぞれに同一のエントリ:
"google-drive": {
"command": "/opt/homebrew/bin/node",
"args": ["/ABSOLUTE/PATH/TO/mcp-servers/google-drive-mcp/index.js"]
}node への絶対パスが必要であり、スタイル上の選択ではありません。 Finder から起動されたアプリやログイン時に起動されたアプリは、最小限の launchd PATH(/usr/bin:/bin:/usr/sbin:/sbin)を継承するため、Homebrew の /opt/homebrew/bin/node は完全に見えません。単なる "node" では、ターミナルからテストするたびに動作し、毎朝失敗します。~/mcp-servers/trello-mcp/doctor.py は、両方の設定ファイル内のすべてのサーバーについてこれをチェックします。
後で claude CLI をインストールした場合、同等のコマンドは次のとおりです:
claude mcp add --scope user google-drive -- /opt/homebrew/bin/node ~/mcp-servers/google-drive-mcp/index.jsファイル
index.js— MCP サーバー(ツール定義)auth.js— 一度だけのnpm run authループバック OAuth フローlib-auth.js— 共有 OAuth/設定ヘルパー~/.config/google-drive-mcp/gcp-oauth.keys.json— ユーザーが提供(ステップ 5)~/.config/google-drive-mcp/.gdrive-credentials.json—npm run authによって作成
履歴書 / ポートフォリオ用
将来の履歴書セッションで再構築するのではなく、正直なバージョンをここに残します。
なぜこれが存在するのか(既に Drive コネクタがあるのに)。 これは組み込みコネクタを置き換えるのではなく、拡張します。ギャップはバルク作業です。プロジェクト途中で命名規則が変わった後に100個のファイルの名前を変更するのは手作業では面倒ですが、スクリプト化すれば簡単で、一度解決すれば恒久的な解決策になります。それが動機となったケースです。
実際に行ったこと: 目標と制約を設定しました。無料のソリューションで、将来のすべてのプロジェクトで同じ時間を節約できるもの。1つのフォルダだけの使い捨てスクリプトではありません。
既知の運用上の注意点: OAuth アプリの公開ステータスがリフレッシュトークンの有効期間を決定します。「テスト中」では約1週間で期限切れになります(invalid_grant)。アプリを公開すると、Cloud プロジェクトを共有するすべての統合でその制限がなくなります。
ポートフォリオ用の箇条書き: ~/mcp-servers/trello-mcp/README.md の共有バージョンを参照してください。これら3つはまとめて説明するのが最適です。
完全なケーススタディ: https://zeno-blade-creator.github.io/projects/personal-integrations.html
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
An MCP server that gives your AI access to the source code and docs of all public github repos
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/zeno-blade-creator/google-drive-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server