Google Workspace MCP Server について
Google Workspace MCP Serverは、MCPツールを通じてGmailのメールとGoogle Calendarの予定を管理します。メール検索・送信に加え、予定の作成・更新・削除に対応し、OAuthで認証します。
主な機能
- 01Gmailメールの一覧表示と検索
- 02CC・BCC付きメールの送信
- 03メールのラベルと状態の変更
- 04期間を指定した予定の一覧表示
- 05予定の作成・更新・削除
活用シーン
- 01未読または条件に合うメールの検索
- 02CC付きメールの送信
- 03メールのアーカイブや既読化
- 04参加者を含む予定の管理
MCP 対応
GmailとCalendarの操作を、MCPクライアント向けのツールとして公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Google Workspace MCP サーバー
Gmail と Calendar の API を操作するためのツールを提供する Model Context Protocol (MCP) サーバーです。このサーバーを使用すると、MCP インターフェースを通じてメールとカレンダーイベントをプログラムで管理できます。
機能
Gmail ツール
list_emails: 受信トレイの最近のメールをオプションのフィルタリング付きで一覧表示しますsearch_emails: Gmail のクエリ構文を使用した高度なメール検索send_email: CC と BCC をサポートした新規メールの送信modify_email: メールラベルの変更(アーカイブ、ゴミ箱、既読/未読のマーク)
Calendar ツール
list_events: 日付範囲フィルタリング付きで今後のカレンダーイベントを一覧表示しますcreate_event: 参加者を含む新しいカレンダーイベントの作成update_event: 既存のカレンダーイベントの更新delete_event: カレンダーイベントの削除
前提条件
- Node.js: Node.js バージョン 14 以上をインストールします
- Google Cloud Console のセットアップ:
- Google Cloud Console にアクセスします
- 新しいプロジェクトを作成するか、既存のプロジェクトを選択します
- Gmail API と Google Calendar API を有効にします:
- 「APIs & Services」>「Library」に移動します
- 「Gmail API」を検索して有効にします
- 「Google Calendar API」を検索して有効にします
- OAuth 2.0 認証情報を設定します:
- 「APIs & Services」>「Credentials」に移動します
- 「Create Credentials」>「OAuth client ID」をクリックします
- 「Web application」を選択します
- 「Authorized redirect URIs」に
http://localhost:4100/codeを含めます - Client ID と Client Secret を控えておきます
セットアップ手順
-
クローンとインストール:
git clone https://github.com/epaproditus/google-workspace-mcp-server.git cd google-workspace-mcp-server npm install -
OAuth 認証情報の作成: ルートディレクトリに
credentials.jsonファイルを作成します:{ "web": { "client_id": "YOUR_CLIENT_ID", "client_secret": "YOUR_CLIENT_SECRET", "redirect_uris": ["http://localhost:4100/code"], "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token" } } -
リフレッシュトークンの取得:
node get-refresh-token.jsこれにより、以下が実行されます:
- Google OAuth 認証のためにブラウザが開きます
- 以下の権限が要求されます:
https://www.googleapis.com/auth/gmail.modifyhttps://www.googleapis.com/auth/calendarhttps://www.googleapis.com/auth/gmail.send
- 認証情報が
token.jsonに保存されます - コンソールにリフレッシュトークンが表示されます
-
MCP 設定の構成: MCP 設定ファイルにサーバー構成を追加します:
- VSCode Claude 拡張機能の場合:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - Claude デスクトップアプリの場合:
~/Library/Application Support/Claude/claude_desktop_config.json
mcpServersオブジェクトに以下を追加します:{ "mcpServers": { "google-workspace": { "command": "node", "args": ["/path/to/google-workspace-server/build/index.js"], "env": { "GOOGLE_CLIENT_ID": "your_client_id", "GOOGLE_CLIENT_SECRET": "your_client_secret", "GOOGLE_REFRESH_TOKEN": "your_refresh_token" } } } } - VSCode Claude 拡張機能の場合:
-
ビルドと実行:
npm run build
使用例
Gmail の操作
-
最近のメールを一覧表示:
{ "maxResults": 5, "query": "is:unread" } -
メールを検索:
{ "query": "from:[email protected] has:attachment", "maxResults": 10 } -
メールを送信:
{ "to": "[email protected]", "subject": "Hello", "body": "Message content", "cc": "[email protected]", "bcc": "[email protected]" } -
メールを変更:
{ "id": "message_id", "addLabels": ["UNREAD"], "removeLabels": ["INBOX"] }
Calendar の操作
-
イベントを一覧表示:
{ "maxResults": 10, "timeMin": "2024-01-01T00:00:00Z", "timeMax": "2024-12-31T23:59:59Z" } -
イベントを作成:
{ "summary": "Team Meeting", "location": "Conference Room", "description": "Weekly sync-up", "start": "2024-01-24T10:00:00Z", "end": "2024-01-24T11:00:00Z", "attendees": ["[email protected]"] } -
イベントを更新:
{ "eventId": "event_id", "summary": "Updated Meeting Title", "location": "Virtual", "start": "2024-01-24T11:00:00Z", "end": "2024-01-24T12:00:00Z" } -
イベントを削除:
{ "eventId": "event_id" }
トラブルシューティング
-
認証の問題:
- 必要なすべての OAuth スコープが付与されていることを確認します
- Client ID と Secret が正しいことを確認します
- リフレッシュトークンが有効であることを確認します
-
API エラー:
- Google Cloud Console で API のクォータと制限を確認します
- プロジェクトで API が有効になっていることを確認します
- リクエストパラメータが必要な形式と一致していることを確認します
ライセンス
このプロジェクトは MIT ライセンスの下でライセンスされています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。