google-calendar-mcp
Allows interaction with Google Calendar API, providing tools for managing calendars and events, including creating, updating, deleting events, searching, and handling recurring events.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@google-calendar-mcp Create a lunch meeting tomorrow at 12pm with John"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Google Calendar MCP Server
Google Calendar APIを操作するMCP (Model Context Protocol) サーバーです。
機能
カレンダー操作
list_calendars- カレンダー一覧の取得get_calendar- カレンダー詳細の取得
イベント操作
list_events- イベント一覧の取得get_event- イベント詳細の取得search_events- イベントの検索create_event- イベントの作成(定期イベント対応)update_event- イベントの更新delete_event- イベントの削除
定期イベント操作
update_recurring_event- 定期イベントの更新thisEventOnly: この予定のみall: すべての予定thisAndFollowing: これ以降の予定
delete_recurring_instance- 定期イベントの特定インスタンス削除
ユーティリティ
get_freebusy- 空き時間情報の取得list_colors- 利用可能なカラーパレットの取得
Related MCP server: mcp-google-calendar
セットアップ
1. Google Cloud Consoleでの準備
Google Cloud Consoleでプロジェクトを作成
Google Calendar APIを有効化
OAuth 2.0クライアントIDを作成
アプリケーションの種類: ウェブアプリケーション
承認済みのリダイレクトURI:
http://localhost:8080/callback
認証情報JSONファイルをダウンロード
2. 環境変数の設定
export CLIENT_SECRET_PATH="/path/to/client_secret.json"
export TOKEN_PATH="/path/to/token.json"3. インストールとビルド
pnpm install
pnpm build4. 初回認証
サーバーを起動すると、初回はブラウザでGoogle認証を求められます。認証後、トークンが保存され、以降は自動的に認証されます。
使用方法
Claude Desktopでの設定
claude_desktop_config.jsonに以下を追加:
{
"mcpServers": {
"google-calendar": {
"command": "node",
"args": ["/path/to/google-calendar-mcp/dist/index.js"],
"env": {
"CLIENT_SECRET_PATH": "/path/to/client_secret.json",
"TOKEN_PATH": "/path/to/token.json"
}
}
}
}Claude Codeでの設定
claude mcp add google-calendar node /path/to/google-calendar-mcp/dist/index.js \
-e CLIENT_SECRET_PATH=/path/to/client_secret.json \
-e TOKEN_PATH=/path/to/token.json使用例
イベント一覧の取得
今日の予定を教えてイベントの作成
明日の14時から15時に「打ち合わせ」という予定を作成して定期イベントの作成
毎週月曜日の10時から11時に「週次ミーティング」を10回作成して定期イベントの個別編集
今週の週次ミーティングだけ時間を11時からに変更して技術スタック
TypeScript
Node.js >= 18.0.0
@modelcontextprotocol/sdk
googleapis
zod
ライセンス
MIT
Available Tools
12 toolscreate_eventA
新しいカレンダーイベントを作成します。定期イベントの作成も可能です
Inputs: end (required), start (required), summary (required), colorId, +8 more.
delete_eventB
カレンダーイベントを削除します
Inputs: eventId (required), calendarId, sendUpdates.
delete_recurring_instanceA
定期イベントの特定のインスタンス(1回分)のみを削除します
Inputs: eventId (required), calendarId, sendUpdates, instanceDate, +1 more.
get_calendarA
指定したカレンダーの詳細情報を取得します
Inputs: calendarId (required).
get_eventA
特定のイベントの詳細情報を取得します
Inputs: eventId (required), calendarId.
get_freebusyA
指定した期間の空き時間情報を取得します。複数のカレンダーの予定が埋まっている時間帯を確認できます
Inputs: timeMax (required), timeMin (required), timeZone, calendarIds.
list_calendarsA
ユーザーがアクセス可能なカレンダーの一覧を取得します
Inputs: no named parameters.
list_colorsA
カレンダーとイベントで使用可能なカラーパレットを取得します
Inputs: no named parameters.
list_eventsB
指定した期間のカレンダーイベント一覧を取得します
Inputs: q, orderBy, timeMax, timeMin, +3 more.
search_eventsC
キーワードでイベントを検索します
Inputs: query (required), timeMax, timeMin, calendarId, +1 more.
update_eventB
既存のカレンダーイベントを更新します
Inputs: eventId (required), end, start, colorId, +7 more.
update_recurring_eventA
定期イベント(繰り返しイベント)を更新します。「この予定のみ」「すべての予定」「これ以降の予定」の3つの編集スコープをサポートします
Inputs: scope (required), eventId (required), end, start, +7 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 12 tools
Each tool targets a distinct resource and action: calendars vs. events, list vs. get vs. search, and specific recurring-event tools are clearly separated from regular event tools. Descriptions further clarify any potential overlap, such as delete_recurring_instance versus delete_event.
All tool names follow a consistent verb_noun pattern (list_, get_, search_, create_, update_, delete_), using snake_case throughout. Compound names like update_recurring_event and delete_recurring_instance are logical extensions of the pattern.
12 tools is well within the ideal 3-15 range for a calendar server. Each tool addresses a meaningful aspect of calendar and event management without unnecessary redundancy or bloat.
The set provides comprehensive event CRUD, recurring event handling, free/busy lookup, and color details. Minor gaps include no ability to create/delete calendars (only list and get), but the core calendar workflow is well covered.
Maintenance
Related MCP Connectors
Hosted Google Calendar MCP server for AI agents. No self-hosting or Google Cloud setup.
A MCP server that works with Google Calendar to manage event listing, reading, and updates.
Manage Google, Outlook & Apple calendars and create private sync rules from chat.
AI-native scheduling: check availability, book meetings, cancel and reschedule via MCP
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceLets LLMs read and manage Google Calendar events.10,039 npm1,215MIT
- AlicenseNot gradedqualityDmaintenanceEnables managing Google Calendar events including creating, listing, updating, and deleting events through natural language.21 npmMIT
- FlicenseNot gradedqualityDmaintenanceIntegrates Google Calendar with AI assistants via MCP, enabling calendar listing and event CRUD operations.-
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Google Calendar through a unified MCP API for managing events, calendars, and related tools.MIT