Skip to main content
Glama

Google Workspace MCP Server

by epaproditus

Google Workspace MCP サーバー

Gmail およびカレンダー API と連携するためのツールを提供するモデルコンテキストプロトコル(MCP)サーバーです。このサーバーを使用すると、MCP インターフェースを介してメールやカレンダーの予定をプログラムで管理できます。

特徴

Gmailツール

  • list_emails : 受信トレイから最近のメールを一覧表示します(オプションでフィルタリング可能)
  • search_emails : Gmail クエリ構文を使用した高度なメール検索
  • send_email : CC と BCC をサポートして新しいメールを送信します
  • modify_email : メールラベルを変更する(アーカイブ、ゴミ箱、既読/未読としてマーク)

カレンダーツール

  • list_events : 日付範囲でフィルタリングして今後のカレンダーイベントを一覧表示します
  • create_event : 参加者を指定した新しいカレンダーイベントを作成する
  • update_event : 既存のカレンダーイベントを更新する
  • delete_event : カレンダーイベントを削除する

前提条件

  1. Node.js : Node.jsバージョン14以降をインストールします
  2. Google Cloud Console のセットアップ:
    • Google Cloud Consoleに移動
    • 新しいプロジェクトを作成するか、既存のプロジェクトを選択してください
    • Gmail API と Google カレンダー API を有効にします。
      1. 「APIとサービス」>「ライブラリ」に移動します
      2. 「Gmail API」を検索して有効にします
      3. 「Google カレンダー API」を検索して有効にします
    • OAuth 2.0 資格情報を設定します。
      1. 「APIとサービス」>「認証情報」に移動します
      2. 「認証情報を作成」>「OAuthクライアントID」をクリックします
      3. 「Webアプリケーション」を選択
      4. 「承認済みリダイレクト URI」に次の URL を含めるように設定します: http://localhost:4100/code
      5. クライアントIDとクライアントシークレットを書き留めます

セットアップ手順

  1. クローンとインストール:
    git clone https://github.com/epaproditus/google-workspace-mcp-server.git cd google-workspace-mcp-server npm install
  2. 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" } }
  3. リフレッシュトークンを取得:
    node get-refresh-token.js
    これにより、次のようになります。
    • Google OAuth認証のためにブラウザを開きます
    • 次の権限を要求します。
      • https://www.googleapis.com/auth/gmail.modify
      • https://www.googleapis.com/auth/calendar
      • https://www.googleapis.com/auth/gmail.send
    • 資格情報をtoken.jsonに保存します
    • コンソールにリフレッシュトークンを表示する
  4. 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" } } } }
  5. ビルドと実行:
    npm run build

使用例

Gmailの操作

  1. 最近のメールの一覧:
    { "maxResults": 5, "query": "is:unread" }
  2. メールを検索:
    { "query": "from:example@gmail.com has:attachment", "maxResults": 10 }
  3. メールを送信:
    { "to": "recipient@example.com", "subject": "Hello", "body": "Message content", "cc": "cc@example.com", "bcc": "bcc@example.com" }
  4. メールアドレスの変更:
    { "id": "message_id", "addLabels": ["UNREAD"], "removeLabels": ["INBOX"] }

カレンダー操作

  1. イベント一覧:
    { "maxResults": 10, "timeMin": "2024-01-01T00:00:00Z", "timeMax": "2024-12-31T23:59:59Z" }
  2. イベントを作成:
    { "summary": "Team Meeting", "location": "Conference Room", "description": "Weekly sync-up", "start": "2024-01-24T10:00:00Z", "end": "2024-01-24T11:00:00Z", "attendees": ["colleague@example.com"] }
  3. 更新イベント:
    { "eventId": "event_id", "summary": "Updated Meeting Title", "location": "Virtual", "start": "2024-01-24T11:00:00Z", "end": "2024-01-24T12:00:00Z" }
  4. イベントを削除:
    { "eventId": "event_id" }

トラブルシューティング

  1. 認証の問題:
    • 必要なすべてのOAuthスコープが付与されていることを確認する
    • クライアントIDとシークレットが正しいことを確認する
    • リフレッシュトークンが有効かどうかを確認する
  2. APIエラー:
    • API の割り当てと制限については、Google Cloud Console で確認してください。
    • プロジェクトで API が有効になっていることを確認する
    • リクエストパラメータが必要な形式と一致していることを確認する

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています。

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

local-only server

The server can only run on the client's local machine because it depends on local resources.

GmailおよびカレンダーAPIを操作するためのツールを提供します。このサーバーを使用すると、MCPインターフェースを介してメールやカレンダーの予定をプログラムで管理できます。

  1. 特徴
    1. Gmailツール
    2. カレンダーツール
  2. 前提条件
    1. セットアップ手順
      1. 使用例
        1. Gmailの操作
        2. カレンダー操作
      2. トラブルシューティング
        1. ライセンス

          Related MCP Servers

          • -
            security
            A
            license
            -
            quality
            Enables interaction with Gmail and Google Calendar using the MCP protocol, supporting multiple Google accounts, email management, and calendar operations through natural language.
            Last updated -
            12
            TypeScript
            MIT License
            • Apple
          • -
            security
            A
            license
            -
            quality
            MCP server that integrates with Gmail to enable sending, reading, and managing emails through tools like send-email, trash-email, get-unread-emails, and read-email.
            Last updated -
            56
            Python
            GPL 3.0
            • Apple
          • A
            security
            A
            license
            A
            quality
            A Model Context Protocol server that provides tools for interacting with Gmail and Calendar APIs, enabling programmatic management of emails and calendar events.
            Last updated -
            8
            20
            JavaScript
            MIT License
            • Apple
          • -
            security
            A
            license
            -
            quality
            An MCP server that enables Gmail integration, allowing users to manage emails (send, receive, read, trash, mark as read) directly through MCP clients like Claude Desktop.
            Last updated -
            Python
            MIT License

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/epaproditus/google-workspace-mcp-server'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server