2026年5月28日 【MCP】Google Workspace MCP サーバーを色々触ってみた(Workspaceアカウント不要!!) Agent Development Kit Gemini Google Cloud Google Workspace Python Vertex AI 検索する Popular tags 事例紹介 GEN-STEP 生成AI(Generative AI) Vertex AI Search Looker Studio BigQuery AlloyDB Google Workspace Cloud SQL Category Google Cloud Author Tera SHARE 目次 Google Workspace MCP サーバーとは 事前準備(共通) 実際の使用例 デモプレイ まとめ Content AIエージェントを使っていて、こんな場面を思い浮かべたことはないでしょうか? 「今日のスケジュールを確認しながら、関連するドキュメントをDriveから探して、結果をメールで送って」 「Gmailに届いた内容をまとめて、Googleカレンダーに登録しておいて」 これを実現するには、これまでGmail・Drive・Calendarそれぞれに個別のAPI連携を実装する必要がありました。認証の仕組みも個別に用意しなければならず、開発コストが高い作業でした。 この壁を崩す可能性を持つのが、2025年5月に公開された Google Workspace MCP サーバー です。 MCP(Model Context Protocol)という標準プロトコルに乗っかることで、AIエージェントがGmail・Drive・Calendar・Chatなど複数のWorkspaceサービスへ統一的なインターフェースでアクセスできるようになりました。 本記事では実際に触ってみた実体験をもとに紹介します。 試してみたところ「Google公式のホスト型MCPサーバー」と「コミュニティ製のローカルMCPサーバー」という2種類のアプローチが存在することがわかりました。それぞれの違いや使い分けも含めて解説します。 Google Workspace MCP サーバーとは MCPとは何か(おさらい) MCP(Model Context Protocol)は、AIモデルがリモートサーバーのツールを安全に使えるようにするオープンスタンダードです。Anthropicが提唱し、現在は業界標準として広く採用されています。 2種類のアプローチ Google Workspace の MCP サーバーには、大きく分けて 2種類のアプローチがあります。 ① Google 公式ホスト型 MCP サーバー Googleが自社のインフラ上で提供するリモートMCPサーバーです。 [注意] 実際に試してみてわかった壁: 組織の Google Workspace 管理者が admin.google.com でOAuthアプリを「信頼済み」に設定しないとツール実行時に 403 Forbidden が返ります。個人のGoogleアカウント(無料)では利用できません。 ② コミュニティ製ローカルMCP サーバー OSS として公開されているMCPサーバーをローカルで立ち上げる方式です(taylorwilsdon/google_workspace_mcp)。 [確認済み] 無料アカウントで動作確認済みです。 本記事では主にこちらのアプローチを使った実装を紹介します。 2種類のアプローチ比較 事前準備(共通) どちらのアプローチでも、Google Cloud での OAuth クライアント設定は必要です。 Google Cloud プロジェクトの準備 1. 使用するAPIを有効化 GCP コンソール(console.cloud.google.com)から以下のAPIを有効にします: gcloud services enable \ gmail.googleapis.com \ drive.googleapis.com \ calendar-json.googleapis.com \ chat.googleapis.com \ people.googleapis.com \ --project=YOUR_PROJECT_ID 2. OAuth 同意画面の設定 Google Auth Platform → ブランディング で新規作成: アプリ名:任意(例:Workspace MCP) ユーザーの種類:内部(Google Workspace組織の場合)または 外部(個人アカウントの場合) 外部を選択した場合は「テストユーザー」に自分のメールアドレスを追加 3. OAuth クライアントIDの取得(client_secret.json) Google Auth Platform → クライアント → クライアントを作成: アプリケーションの種類:デスクトップアプリ 名前を入力して作成 JSONをダウンロード → client_secret.json として保存 [ヒント] client_secret.json にはクライアントIDとシークレットが含まれています。ファイルを Git にコミットしないよう .gitignore に追加してください。 4. データアクセス(スコープ)の追加 Google Auth Platform → データアクセス → スコープの追加または削除 に以下を貼り付けます: https://www.googleapis.com/auth/gmail.readonly https://www.googleapis.com/auth/gmail.compose https://www.googleapis.com/auth/drive.readonly https://www.googleapis.com/auth/drive.file https://www.googleapis.com/auth/calendar.calendarlist.readonly https://www.googleapis.com/auth/calendar.events.readonly https://www.googleapis.com/auth/chat.messages.readonly https://www.googleapis.com/auth/chat.messages.create https://www.googleapis.com/auth/directory.readonly https://www.googleapis.com/auth/contacts.readonly 実際の使用例 ADK × コミュニティ製ローカルMCPサーバー(エージェント開発) GoogleのAgent Development Kit(ADK)と、コミュニティ製ローカルMCPサーバーを組み合わせた実装です。 ① ローカルMCPサーバーのセットアップ git clone https://github.com/taylorwilsdon/google_workspace_mcp.git cd google_workspace_mcp # 依存関係のインストール uv sync # client_secret.json をプロジェクトルートに配置 cp /path/to/client_secret.json . サーバーの起動: export OAUTHLIB_INSECURE_TRANSPORT=1 export WORKSPACE_MCP_PORT=8001 # ADK Web UI(8000番)とのポート競合を避ける uv run main.py --single-user --transport streamable-http --tool-tier core 起動すると以下のような表示になります: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Google Workspace MCP Server v1.21.0 streamable-http · single-user http://localhost:8001 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Single-user mode enabled Ready for MCP connections –single-user フラグについて: このフラグがないとマルチユーザーモードになり、ツール呼び出しごとにメールアドレスの指定が必要になります。個人開発では–single-user が便利です。 ② ADK プロジェクトの構成 workspace-adk-agent/ ├── workspace_agent/ │ ├── agent.py # エージェント定義 │ ├── .env # 環境変数 │ └── __init__.py └── pyproject.toml pyproject.toml: [project] name = "workspace-adk-agent" version = "0.1.0" requires-python = ">=3.11" dependencies = [ "google-adk>=1.29.0", "mcp>=1.27.1", ] workspace_agent/.env: GOOGLE_GENAI_USE_VERTEXAI=1 GOOGLE_CLOUD_PROJECT=<プロジェクトID> GOOGLE_CLOUD_LOCATION=us-central1 ③ エージェント実装(agent.py) ローカルMCPサーバーを使う場合、認証はサーバー側が管理するため agent.py はシンプルになります。 # workspace_agent/agent.py from datetime import datetime from google.adk.agents import Agent from google.adk.tools.mcp_tool.mcp_toolset import McpToolset, StreamableHTTPConnectionParams LOCAL_MCP_URL = "http://localhost:8001/mcp" root_agent = Agent( name="workspace_agent", model="gemini-2.5-flash", description="Google Workspace(Gmail・Drive・Calendar 等)と連携して業務をサポートするエージェント", instruction=f"""あなたはGoogle Workspaceの各サービスを活用できる業務アシスタントです。 今日の日付は {datetime.now().strftime('%Y年%m月%d日')} です。 以下のサービスのツールを活用して、ユーザーの業務をサポートしてください: - Gmail: メール検索・送信・下書き作成 - Google Drive: ファイル検索・読み取り・作成 - Google Calendar: 予定確認・新規登録・空き時間提案 - Docs / Sheets / Slides / Tasks / Forms にも対応 複数のサービスをまたぐ操作も積極的に対応してください。 回答は日本語で行ってください。""", tools=[ McpToolset( connection_params=StreamableHTTPConnectionParams(url=LOCAL_MCP_URL) ) ], ) コードのポイント: 公式ホスト型の場合はTokenRelayクラスやhttpx_client_factoryを使って OAuth トークンをリクエストごとに注入する実装が必要でしたが、ローカルMCPサーバー方式ではサーバー側が認証を管理するため、接続先URLを指定するだけです。 ④ ADK Web UI での動作確認 uv run adk web ブラウザで http://localhost:8000 を開きます。初回ツール呼び出し時にMCPサーバー側でブラウザが開き、Googleアカウントの認証が走ります。 認証後はトークンがキャッシュされ、再起動しても再認証不要です。 スクリーンショット挿入箇所 ADK Web UI での会話画面(カレンダー確認の様子) Gemini CLI × Google Workspace MCP Gemini CLIは~/.gemini/settings.json に設定を記述するだけで、ターミナルからWorkspaceを操作できます。 設定ファイル(公式ホスト型の場合) { "mcpServers": { "gmail": { "httpUrl": "https://gmailmcp.googleapis.com/mcp/v1", "oauth": { "enabled": true, "clientId": "<クライアントID>", "clientSecret": "<クライアントシークレット>", "scopes": [ "https://www.googleapis.com/auth/gmail.readonly", "https://www.googleapis.com/auth/gmail.compose" ] } }, "calendar": { "httpUrl": "https://calendarmcp.googleapis.com/mcp/v1", "oauth": { "enabled": true, "clientId": "<クライアントID>", "clientSecret": "<クライアントシークレット>", "scopes": [ "https://www.googleapis.com/auth/calendar.events.readonly" ] } } } } [注意] 公式ホスト型エンドポイント(*mcp.googleapis.com)は Google Workspace 管理者による承認が必要です。組織ポリシーによってはアクセスがブロックされます。 接続確認 gemini /mcp auth gmail /mcp auth calendar /mcp list 出力例: gmail - Ready (10 tools) calendar - Ready (8 tools) Claude Code × Google Workspace MCP Claude Codeはコマンド一行でMCPサーバーを登録できます。コミュニティ製ローカルサーバーとの組み合わせが特に簡単です。 コミュニティローカルサーバーを使う場合(推奨) ローカルサーバーを起動した状態で claude mcp add –transport http workspace-mcp http://localhost:8001/mcp Claude Codeを起動してWorkspaceを操作できます: claude > Driveの「企画書」というキーワードで検索して、最新のファイルの内容を教えて 公式ホスト型を使う場合 // .claude/settings.json { "mcpServers": { "workspace-calendar": { "type": "http", "url": "https://calendarmcp.googleapis.com/mcp/v1", "oauth2": { "clientId": "<クライアントID>", "clientSecret": "<クライアントシークレット>", "scopes": ["https://www.googleapis.com/auth/calendar.events.readonly"] } } } } 各クライアントの比較 試してみたいならGemini CLIかClaude Code、エージェントに組み込みたいならADKが最適です。 デモプレイ コミュニティ製ローカルMCPサーバー + ADKエージェントでの動作確認の様子です。 上記のような感じでしっかりツールを操作してくれます。 プロンプトの調整ミスもあり、エージェントがUTCベースだったので、そこは調整する必要ありそうでしたが、しっかりリカバリしてくれました! また、初回実行時には、Googleの認証が必要になってくるので、エージェントのためにそこはこちらが作業をしてあげましょう。 認証が成功すると上記画面が表示されます。 まとめ 本記事では、Google Workspace MCP サーバーの概要と、実際に試した2つのアプローチについて紹介しました。 今回のポイント Google Workspace MCP には 公式ホスト型とコミュニティローカル型の2種類がある 公式ホスト型(*mcp.googleapis.com)は Google Workspace Business/Enterprise アカウントと組織管理者の承認が必要 コミュニティローカル型(taylorwilsdon/google_workspace_mcp)は無料Googleアカウントでも動作し、対応サービスも豊富(12サービス・43ツール) どちらのアプローチでも Google Cloud の OAuth クライアントID(client_secret.json) の取得が必要 ADK を使えば、数十行のコードでWorkspace連携エージェントを構築できる アプローチの選び方 活用シーン 参考リンク Google Workspace MCP サーバーの設定(公式) taylorwilsdon/google_workspace_mcp(GitHub) システムサポートでは、Google Cloudの導入や活用を支援しております。 Google Cloudを導入したい・導入したけど使いこなせていない…という方は、お気軽にご相談ください! Google Cloud 導入・活動支援に関するご相談はこちら 頂きましたご意見につきましては、今後のより良い商品開発・サービス改善に活かしていきたいと考えております。 面白かった 面白くなかった 興味深かった 興味深くなかった 使ってみたい Author Tera 2024年4月に新卒入社、理系出身でAIエージェントやデータ分析の業務を行っています。趣味はテニスでスクールにも通っています。 Agent Development Kit Gemini Google Cloud Google Workspace Python Vertex AI 2026年5月28日 【MCP】Google Workspace MCP サーバーを色々触ってみた(Workspaceアカウント不要!!) Category Google Cloud 前の記事を読む AlloyDBのAI関数でSQLだけで感情分析・要約をしてみた! 次の記事を読む Gemini Embedding 2 でマルチモーダル検索を試す Recommendation オススメ記事 2023年9月5日 Google Cloud 【Google Cloud】Looker Studio × Looker Studio Pro × Looker を徹底比較!機能・選び方を解説 2023年8月24日 Google Cloud 【Google Cloud】Migrate for Anthos and GKEでVMを移行してみた(1:概要編) 2022年10月10日 Google Cloud 【Google Cloud】AlloyDB と Cloud SQL を徹底比較してみた!!(第1回:AlloyDB の概要、性能検証編) BigQuery ML ワークショップ開催のお知らせ 生成AI導入支援パッケージ Discovery AI導入支援パッケージ Google Cloud ホワイトペーパー 新着記事 2026年5月28日 Google Cloud Gemini Embedding 2 でマルチモーダル検索を試す 2026年5月28日 Google Cloud 【MCP】Google Workspace MCP サーバーを色々触ってみた(Workspaceアカウント不要!!) 2026年5月26日 Google Cloud AlloyDBのAI関数でSQLだけで感情分析・要約をしてみた! HOME Google Cloud 【MCP】Google Workspace MCP サーバーを色々触ってみた(Workspaceアカウント不要!!)