カレンダー自動認証 MCP サーバー
Cluade Desktop と Google カレンダーを連携するための、自動認証機能を備えたモデルコンテキストプロトコル(MCP)サーバーです。このサーバーにより、AI アシスタントは自然言語によるインタラクションを通じて Google カレンダーのイベントを管理できるようになります。
特徴
タイトル、時間、説明、場所を指定してカレンダーイベントを作成する
イベントIDでイベントの詳細を取得する
既存のイベントを更新する(タイトル、時間、説明、場所)
イベントを削除する
指定した時間範囲内のイベントを一覧表示する
Google カレンダー API との完全な統合
自動ブラウザ起動によるシンプルなOAuth2認証フロー
デスクトップとWebアプリケーションの両方の資格情報のサポート
利便性のためのグローバル認証情報ストレージ
Related MCP server: Gmail AutoAuth MCP Server
インストールと認証
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Calendar AutoAuth Server を自動的にインストールするには:
npx -y @smithery/cli install @gongrzhe/server-calendar-autoauth-mcp --client claudeGoogle Cloud プロジェクトを作成し、認証情報を取得します。
a. Google Cloud プロジェクトを作成します。
新しいプロジェクトを作成するか、既存のプロジェクトを選択してください
プロジェクトで Google カレンダー API を有効にする
b. OAuth 2.0 認証情報を作成する:
「APIとサービス」>「認証情報」に移動します
「認証情報を作成」>「OAuthクライアントID」をクリックします
アプリケーションの種類として「デスクトップアプリ」または「Webアプリケーション」を選択します
名前を付けて「作成」をクリックします
Webアプリケーションの場合、承認されたリダイレクトURIに
http://localhost:3000/oauth2callbackを追加します。クライアントのOAuthキーのJSONファイルをダウンロードします
キーファイルの名前を
gcp-oauth.keys.jsonに変更します。
実行認証:
認証には 2 つの方法があります:
a. グローバル認証(推奨):
# First time: Place gcp-oauth.keys.json in your home directory's .calendar-mcp folder mkdir -p ~/.calendar-mcp mv gcp-oauth.keys.json ~/.calendar-mcp/ # Run authentication from anywhere npx @gongrzhe/server-calendar-autoauth-mcp authb. ローカル認証:
# Place gcp-oauth.keys.json in your current directory # The file will be automatically copied to global config npx @gongrzhe/server-calendar-autoauth-mcp auth認証プロセスは次のようになります。
現在のディレクトリまたは
~/.calendar-mcp/でgcp-oauth.keys.jsonを探します。現在のディレクトリで見つかった場合は、
~/.calendar-mcp/にコピーします。Google認証用のデフォルトのブラウザを開きます
資格情報を
~/.calendar-mcp/credentials.jsonとして保存します。
注記:
認証が成功すると、認証情報は
~/.calendar-mcp/にグローバルに保存され、どのディレクトリからでも使用できるようになります。デスクトップ アプリと Web アプリケーションの両方の資格情報がサポートされています
Webアプリケーションの認証情報の場合は、承認されたリダイレクトURIに
http://localhost:3000/oauth2callbackを追加してください。
Claude Desktop で設定:
{
"mcpServers": {
"calendar": {
"command": "npx",
"args": [
"@gongrzhe/server-calendar-autoauth-mcp"
]
}
}
}Docker サポート
Docker を使用する場合:
認証:
docker run -i --rm \
--mount type=bind,source=/path/to/gcp-oauth.keys.json,target=/gcp-oauth.keys.json \
-v mcp-calendar:/calendar-server \
-e CALENDAR_OAUTH_PATH=/gcp-oauth.keys.json \
-e "CALENDAR_CREDENTIALS_PATH=/calendar-server/credentials.json" \
-p 3000:3000 \
mcp/calendar auth使用法:
{
"mcpServers": {
"calendar": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-v",
"mcp-calendar:/calendar-server",
"-e",
"CALENDAR_CREDENTIALS_PATH=/calendar-server/credentials.json",
"mcp/calendar"
]
}
}
}使用例
サーバーは、Claude デスクトップを通じて使用できるいくつかのツールを提供します。
イベントを作成
{
"summary": "Team Meeting",
"start": {
"dateTime": "2024-01-20T10:00:00Z"
},
"end": {
"dateTime": "2024-01-20T11:00:00Z"
},
"description": "Weekly team sync",
"location": "Conference Room A"
}イベント一覧
{
"timeMin": "2024-01-01T00:00:00Z",
"timeMax": "2024-12-31T23:59:59Z",
"maxResults": 10,
"orderBy": "startTime"
}更新イベント
{
"eventId": "event123",
"summary": "Updated Meeting Title",
"start": {
"dateTime": "2024-01-20T11:00:00Z"
},
"end": {
"dateTime": "2024-01-20T12:00:00Z"
}
}イベントを削除
{
"eventId": "event123"
}セキュリティノート
OAuth 認証情報はローカル環境 (
~/.calendar-mcp/) に安全に保存されます。サーバーは永続的な認証を維持するためにオフラインアクセスを使用します
資格情報をバージョン管理に共有したりコミットしたりしないでください
Google アカウント設定で定期的に使用していないアクセスを確認し、取り消してください
認証情報はグローバルに保存されますが、現在のユーザーのみがアクセスできます。
トラブルシューティング
OAuthキーが見つかりません
gcp-oauth.keys.jsonが現在のディレクトリまたは~/.calendar-mcp/にあることを確認してください。ファイルの権限を確認する
資格情報の形式が無効です
OAuthキーファイルに
webまたはinstalled認証情報が含まれていることを確認しますWebアプリケーションの場合、リダイレクトURIが正しく設定されていることを確認します。
ポートはすでに使用されています
ポート3000がすでに使用されている場合は、認証を実行する前にポートを解放してください。
そのポートを使用しているプロセスを見つけて停止することができます
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
ライセンス
このプロジェクトは ISC ライセンスに基づいてライセンスされています。
著者
ゴンジェ
サポート
問題が発生した場合や質問がある場合は、GitHub リポジトリに問題を報告してください。