Google Workspace MCP Server
gws-mcp-server
Google Workspace CLI (gws) 操作を Model Context Protocol ツールとして公開する MCP サーバーです。
なぜこれが必要なのか?
gws CLI には組み込みの MCP サーバーがありましたが、v0.8.0 で削除されました。理由は、200〜400 個ものツールを公開していたため、MCP クライアントでコンテキストウィンドウが肥大化してしまったからです。このサーバーは厳選されたアプローチを採用しています。公開する Google サービスを選択でき、価値が高く範囲が限定された操作のみがツールとして登録されます。
前提条件
クイックスタート
# Install
npm install -g gws-mcp-server
# Or run from source
git clone https://github.com/conorbronsdon/gws-mcp-server.git
cd gws-mcp-server
npm install && npm run build設定
Claude Code (.mcp.json)
{
"mcpServers": {
"google-workspace": {
"command": "npx",
"args": [
"gws-mcp-server",
"--services", "drive,sheets,calendar,docs,gmail"
]
}
}
}Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"google-workspace": {
"command": "npx",
"args": [
"gws-mcp-server",
"--services", "drive,sheets,calendar"
]
}
}
}オプション
フラグ | 説明 | デフォルト |
| 公開するサービスのカンマ区切りリスト | すべてのサービス |
|
|
|
利用可能なサービスとツール
drive (8 ツール)
drive_files_list— ファイルの検索と一覧表示drive_files_get— ファイルメタデータの取得drive_files_create— ファイルの作成(アップロードオプション付き)drive_files_copy— ファイルのコピー(形式変換に便利)drive_files_update— ファイルのメタデータ/コンテンツの更新drive_files_delete— ファイルの削除drive_files_export— Google Workspace ファイル(ドキュメント、スプレッドシート、スライド)を他の形式にエクスポートdrive_permissions_create— ファイルの共有
sheets (4 ツール)
sheets_get— スプレッドシートのメタデータ取得sheets_values_get— セル値の読み取りsheets_values_update— セル値の書き込みsheets_values_append— 行の追加
calendar (5 ツール)
calendar_events_list— イベントの一覧表示calendar_events_get— イベント詳細の取得calendar_events_insert— イベントの作成calendar_events_update— イベントの更新calendar_events_delete— イベントの削除
docs (3 ツール)
docs_get— ドキュメントコンテンツの取得docs_create— ドキュメントの作成docs_batchUpdate— ドキュメント更新の適用
gmail (4 ツール)
gmail_messages_list— メッセージの検索gmail_messages_get— メッセージの読み取りgmail_threads_list— スレッドの検索gmail_threads_get— スレッド全体の読み取り
合計: 24 ツール (旧実装の 200〜400 ツールと比較)
新しいツールの追加
src/services.ts を編集してツール定義を追加します。各ツールは gws CLI コマンドに直接マッピングされます:
{
name: "drive_files_list", // MCP tool name
description: "List files in Drive", // Shown to AI
command: ["drive", "files", "list"],// gws CLI args
params: [ // Maps to --params JSON
{ name: "q", description: "Search query", type: "string", required: false },
],
bodyParams: [ // Maps to --json body
{ name: "name", description: "File name", type: "string", required: true },
],
}アーキテクチャ
MCP Client (Claude) ←→ stdio ←→ gws-mcp-server ←→ gws CLI ←→ Google APIsこのサーバーは軽量なラッパーです。MCP ツール呼び出しを gws CLI 呼び出しに変換し、必要に応じて --params や --json を渡し、JSON 出力を返します。
免責事項
このアカウントで表明されるすべての見解、意見、声明は私個人のものであり、個人的な立場でなされたものです。これらは Modular の見解、立場、方針を反映するものではなく、そのように解釈されるべきではありません。このアカウントは Modular とはいかなる形でも提携、承認、支持されていません。
ライセンス
MIT
Latest Blog Posts
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/conorbronsdon/gws-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server