MCP.so
ログイン

Google Calendar MCP Server

@takumi0706

基本情報

カテゴリ

生産性

ライセンス

MIT

トランスポート

stdio

作者

takumi0706

Google Calendar MCP Server について

Claude Desktop と連携するための Google Calendar MCP サーバー

Google Calendar MCP Server の設定

以下の設定を使って、このサーバーを MCP 対応クライアントに追加してください。

{
  "mcpServers": {
    "google-calendar": {
      "command": "npx",
      "args": [
        "-y",
        "@takumi0706/google-calendar-mcp"
      ],
      "env": {
        "GOOGLE_CLIENT_ID": "your_client_id",
        "GOOGLE_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_REDIRECT_URI": "http://localhost:3000/oauth2callback"
      }
    }
  }
}

Google Calendar MCP Server のツール

ツール一覧はまだありません

この掲載には表示できるツール一覧がまだありません。サーバーにツールがないという意味ではありません。対応機能はプロジェクトのドキュメントをご確認ください。

上のボタンで一時的なサンドボックスでこのサーバーを実行し、ツール一覧を取得できます。

概要

Google Calendar MCP Server とは?

この Google Calendar MCP サーバーは、takumi0706 が開発したコミュニティ製の TypeScript サーバーで、Claude Desktop を Google Calendar API に接続します。Google OAuth2 でサインインすると、Claude が自然言語でカレンダーの予定を一覧・作成・更新・削除できるようになります。

npm で @takumi0706/google-calendar-mcp として公開され、stdio でローカルに動作し、MIT ライセンスです。Google の製品ではなく、Google Cloud の OAuth クライアントは自分で用意します。バージョン 2.0.0 では OAuth フローに PKCE が追加され、MCP プロトコルのリビジョン 2026-07-28 に移行し(2025 年の旧リビジョンも引き続き利用可能)、Node.js 20 以降が必須になりました。

Google Calendar MCP Server の使い方

前提条件:

  1. Node.js 20 以降。
  2. Google Calendar API を有効にした Google Cloud プロジェクト。
  3. Google Cloud Console で作成した OAuth2 認証情報(client ID と client secret)。登録するリダイレクト URI は GOOGLE_REDIRECT_URI と一致させる必要があり、README のデフォルトは http://localhost:4153/oauth2callback です。

環境変数:

  • GOOGLE_CLIENT_ID、GOOGLE_CLIENT_SECRET、GOOGLE_REDIRECT_URI(必須)
  • TOKEN_ENCRYPTION_KEY(任意。未設定なら自動生成。ちょうど 64 文字の 16 進数である必要あり)
  • ローカル認証サーバー用の AUTH_PORT / AUTH_HOST(デフォルト 4153 / localhost)と、MCP サーバー用の PORT / HOST(デフォルト 3000 / localhost)
  • localhost にアクセスできない環境(リモートサーバーやコンテナなど)では USE_MANUAL_AUTH=true

Claude Desktop

claude_desktop_config.json にサーバーを追加します。

{
  "mcpServers": {
    "google-calendar": {
      "command": "npx",
      "args": ["-y", "@takumi0706/google-calendar-mcp"],
      "env": {
        "GOOGLE_CLIENT_ID": "your_client_id",
        "GOOGLE_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_REDIRECT_URI": "http://localhost:4153/oauth2callback"
      }
    }
  }
}

初回利用時にブラウザーが開き、Google へのサインインと同意を求められます。USE_MANUAL_AUTH=true の場合は、代わりに Google が表示する認可コードを貼り付けます。

その他の MCP クライアント

README が対象としているのは Claude Desktop です。標準的な stdio サーバーなので、Claude Code、Cursor、VS Code でも同じ env の値で npx -y @takumi0706/google-calendar-mcp コマンドを実行できますが、作者はこれらの手順を文書化していません。

グローバルインストールまたはソースから

npm install -g @takumi0706/google-calendar-mcp
git clone https://github.com/takumi0706/google-calendar-mcp.git
cd google-calendar-mcp
npm install
npm run build
npm start

Google Calendar MCP Server の主な機能

  • 予定の完全な管理:メインのカレンダーや任意のカレンダーで予定を取得・作成・更新・削除。
  • 部分更新:updateEvent は既存の予定を取得してから変更をマージするため、指定しなかった項目は保持される。
  • RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR のような RFC 5545 のルールによる繰り返し予定。
  • colorId(1〜11)による予定の色分けに加え、参加者、場所、説明、タイムゾーンに対応。
  • authenticate ツールで、Claude を再起動せずに Google アカウントを切り替え。
  • v2 でのセキュリティ強化:PKCE(S256)、使い捨てで 10 分で失効する CSPRNG の state、固定のリダイレクト URI、Zod による入力検証、メモリ上での AES-256-GCM によるトークン暗号化。
  • ヘッドレス環境向けの手動認証モード。

Google Calendar MCP Server のツール

サーバーが公開するツールは 5 つです。

  • 取得:getEvents は予定を一覧表示します。任意の引数は calendarId、timeMin/timeMax(ISO 8601)、maxResults(デフォルト 10)、orderBy(startTime または updated)です。
  • 書き込み:createEvent は summary、start、end(日時、または終日の date)に加え、任意で説明、場所、参加者、colorId、recurrence を含む event オブジェクトを受け取ります。updateEvent は eventId と変更したい項目だけを受け取ります。
  • 削除:deleteEvent は eventId で予定を削除します。
  • アカウント:authenticate は Google へのサインインをやり直し、セッションの途中でアカウントを切り替えるのに使えます。

Google Calendar MCP Server のユースケース

  • 予定の確認:「明日の午後にはどんな会議がある?」
  • 時間の確保:「金曜の東京時間 10:00 に alex@example.com と 30 分の通話を入れて。」
  • 定例の設定:「毎週月・水・金の午前 9 時にチームの定例を追加して。」
  • 安全なリスケジュール:「歯医者の予約を来週火曜の同じ時間に移して。」予定のほかの情報は失われません。
  • カレンダーの整理:「今週の集中作業ブロックをすべて緑にして」「中止になったデザインレビューを削除して」。
  • 別の Google アカウントで再認証し、個人用と仕事用のカレンダーを切り替える。

Google Calendar MCP Server と代替ツールの比較

コミュニティ製の Google Calendar MCP サーバーは数多くあり、その多くはローカルサーバーと自前の Google Cloud OAuth 認証情報という同じ構成です。このサーバーはコンパクト(ツール 5 つ)で、Claude Desktop に特化しており、最近セキュリティが強化されました。Google Cloud プロジェクトを管理したくない場合は、Zapier MCP のようなホスト型の連携プラットフォームを使い、Zapier アカウント経由で Google Calendar の操作を公開する方法もあります。Microsoft のカレンダーなら Outlook MCP Server を参照してください。

Google Calendar MCP Server のトラブルシューティング

  • 認証エラー:client ID と secret を再確認し、Calendar API が有効になっていること、Google Cloud に登録したリダイレクト URI が GOOGLE_REDIRECT_URI と完全に一致していることを確認します。
  • Authentication failed: Invalid state parameter:バージョン 1.0.3 以降に更新します。古いバージョンではポート 4153 を解放して再起動します。
  • localhost にアクセスできない:USE_MANUAL_AUTH=true を設定し、認可コードを手動で貼り付けます。
  • 空のパラメーターでエラー -32602:空文字列、null、undefined を無視するバージョン 1.0.7 以降に更新します。
  • 接続エラーやポートの競合:サーバーは 1 つだけ起動します。v2 以降、認証サーバーはポートが使用中なら起動を中止します。

よくある質問

1

これは Google 公式の Google Calendar MCP サーバーですか?

いいえ。GitHub ユーザー takumi0706 によるコミュニティプロジェクトで、Google とは無関係です。Google Calendar API の呼び出しには公式の `googleapis` クライアントを使っています。

2

Google Calendar MCP サーバーは無料ですか?

はい。サーバーは MIT ライセンスで無料です。Calendar API を有効にした Google Cloud プロジェクトと、自分の OAuth 認証情報が必要です。

3

どの認証情報が必要ですか?

Google OAuth2 の client ID と client secret、それに登録したリダイレクト URI を、`GOOGLE_CLIENT_ID`、`GOOGLE_CLIENT_SECRET`、`GOOGLE_REDIRECT_URI` として渡します。

4

再起動後にもう一度サインインが必要ですか?

はい。OAuth トークンはメモリ上にのみ保持され、ディスクには書き込まれないため、再起動のたびに再認証が必要です。

5

Claude Code、Cursor、VS Code で使えますか?

Claude Desktop 向けに作られ文書化されていますが、標準的な stdio の MCP サーバーです。stdio サーバーを起動できるクライアントなら、同じ環境変数で同じ `npx` コマンドを実行できます。

6

繰り返し予定や複数のカレンダーに対応していますか?

はい。`createEvent` と `updateEvent` は RFC 5545 の `recurrence` ルールを受け付け、どのツールでも任意で `calendarId` を指定できます(デフォルトはメインのカレンダー)。

7

Claude にカレンダーへのアクセスを許可しても安全ですか?

サーバーは予定を作成・変更・削除できます。PKCE、CSRF 対策済みの state 処理、メモリ上で暗号化されたトークンを使っていますが、client secret は秘密にし、削除を伴う依頼は承認前に確認してください。

コメント

「生産性」の他のコンテンツ