google-workspace-mcp について
google-workspace-mcpは、Google Workspace管理者向けのMCPサーバーで、会話を通じてユーザー、グループ、エイリアス、組織部門を管理できます。Admin SDKとドメイン全体の委任を利用し、削除には明示的な確認が必要で、サーバーはデータを保存しません。
主な機能
- 01ユーザーの検索、詳細表示、作成
- 02ユーザーの停止とパスワードのリセット
- 03メールエイリアスの追加、削除、一覧表示
- 04グループとメンバーの管理
- 05組織部門の一覧表示とユーザーの移動
活用シーン
- 01新入社員アカウントの作成と退職者の停止
- 02パスワードのリセットやエイリアスの調整
- 03メールグループのメンバー管理
- 04ユーザーの組織部門間の移動
MCP 対応
互換クライアントにGoogle Workspace管理ツールを公開し、ユーザー、グループ、エイリアス、組織部門を管理できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
uvx google-workspace-admin-mcpGOOGLE_SERVICE_ACCOUNT_FILEシークレットPath to Service Account JSON credentialsGOOGLE_ADMIN_EMAILSuper admin email with domain-wide delegationGOOGLE_CUSTOMER_IDDomain customer ID (default: my_customer)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🔧 Google Workspace MCP サーバー
🇮🇹 イタリア語 | 🇬🇧 英語
イタリア語
Claude AI やその他の互換性のあるアシスタントを通じて Google Workspace を管理するための、MCP(Model Context Protocol)サーバーです。自然な会話を通じて、ユーザー、グループ、エイリアス、組織部門を管理できます。
✨ 機能
| ツール | 説明 |
|---|---|
gw_list_users | 検索とフィルターを使ってユーザーを一覧表示します |
gw_get_user | ユーザーの詳細情報を表示します |
gw_create_user | 自動生成パスワードを使用して新しいユーザーを作成します |
gw_delete_user | ユーザーを削除します(確認が必須です) |
gw_suspend_user | ユーザーを一時停止または再開します |
gw_reset_password | パスワードを自動生成してリセットします |
gw_manage_alias | メールエイリアスを追加、削除、一覧表示します |
gw_list_groups | ドメインまたはユーザーのグループを一覧表示します |
gw_manage_group_member | グループのメンバーを追加または削除します |
gw_list_org_units | 組織部門を一覧表示します |
gw_move_user_org | ユーザーを別の組織部門に移動します |
📋 前提条件
- Python 3.10+
- 管理者アクセス権を持つ Google Workspace アカウント
- Admin SDK API が有効になっている Google Cloud プロジェクト
- Claude Desktop またはその他の MCP クライアント
🚀 インストール
pip install google-workspace-mcp
または、ソースからインストールします:
git clone https://github.com/aringad/google-workspace-mcp.git
cd google-workspace-mcp
pip install -r requirements.txt
🔑 Google Cloud の設定
1. プロジェクトを作成して API を有効にする
- console.cloud.google.com にアクセスします
- 新しいプロジェクトを作成します(または既存のプロジェクトを使用します)
- API とサービス → ライブラリに移動します
- Admin SDK API を検索して有効にします
2. サービスアカウントを作成する
- API とサービス → 認証情報に移動します
- 認証情報を作成 → サービスアカウントを選択します
- 名前を付けます(例:
mcp-workspace-admin) - サービスアカウントに移動し、鍵 → 鍵を追加 → JSONを選択します
- JSON ファイルをダウンロードします(これが認証情報です)
- クライアント ID をメモします(サービスアカウントの詳細に表示される長い番号)
⚠️ サービスアカウントに IAM ロールを割り当てる必要はありません。権限はドメイン全体の委任によって付与されます。
3. ドメイン全体の委任
- admin.google.com にアクセスします
- セキュリティ → アクセスとデータ管理 → API の制御 → ドメイン全体の委任を管理に移動します
- 新規追加をクリックします
- サービスアカウントのクライアント IDを入力します
- OAuth スコープとして、次を入力します:
https://www.googleapis.com/auth/admin.directory.user,https://www.googleapis.com/auth/admin.directory.group,https://www.googleapis.com/auth/admin.directory.orgunit,https://www.googleapis.com/auth/admin.directory.user.alias
- 承認をクリックします
⚙️ 環境変数
| 変数 | 説明 | デフォルト |
|---|---|---|
GOOGLE_SERVICE_ACCOUNT_FILE | 認証情報 JSON ファイルへのパス | ./credentials.json |
GOOGLE_ADMIN_EMAIL | 委任を設定したスーパー管理者のメールアドレス | (必須) |
GOOGLE_CUSTOMER_ID | ドメインの Customer ID | my_customer |
🔌 Claude Desktop の設定
設定ファイルに次を追加します:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"google_workspace": {
"command": "/percorso/completo/google-workspace-mcp/venv/bin/python",
"args": ["/percorso/completo/google-workspace-mcp/server.py"],
"env": {
"GOOGLE_SERVICE_ACCOUNT_FILE": "/percorso/completo/credentials.json",
"GOOGLE_ADMIN_EMAIL": "[email protected]"
}
}
}
}
Claude Desktop を完全に終了し(Mac では Cmd+Q)、再起動します。
🏢 複数クライアントの設定
個別のインスタンスを追加することで、複数のドメインを管理できます:
{
"mcpServers": {
"gw_cliente_alfa": {
"command": "/percorso/venv/bin/python",
"args": ["server.py"],
"env": {
"GOOGLE_SERVICE_ACCOUNT_FILE": "/percorso/credentials-alfa.json",
"GOOGLE_ADMIN_EMAIL": "[email protected]"
}
},
"gw_cliente_beta": {
"command": "/percorso/venv/bin/python",
"args": ["server.py"],
"env": {
"GOOGLE_SERVICE_ACCOUNT_FILE": "/percorso/credentials-beta.json",
"GOOGLE_ADMIN_EMAIL": "[email protected]"
}
}
}
}
💬 使用例
設定が完了したら、Claude に次のように依頼できます:
- 「ドメイン内のユーザーをすべて表示して」
- 「[email protected] という新しいユーザーを作成して。名前は Mario Rossi」
- 「[email protected] ユーザーを一時停止して」
- 「[email protected] のパスワードをリセットして」
- 「[email protected] ユーザーに [email protected] というエイリアスを追加して」
- 「[email protected] を [email protected] グループに追加して」
- 「ドメインはどのような組織部門に分かれているの?」
顧客からのメールをリクエストと一緒にそのままコピーすることもできます。Claude が実行する操作を自動的に解釈します。
🔒 セキュリティ
- Service Account の認証情報をリポジトリにコミットしてはいけません
- 生成される一時パスワードは、英字、数字、記号を含む16文字です
- 削除などの破壊的な操作には、明示的な確認が必要です
- Service Account には、必要最小限の権限のみを付与します
- MCP サーバーはデータを保存しません
🧪 テスト
# Verifica che il server parta
python server.py --help
# Test con MCP Inspector
npx @modelcontextprotocol/inspector python server.py
英語
MCP(Model Context Protocol)サーバーは、Google Workspace Admin と Claude AI およびその他の互換性のあるアシスタントを連携します。自然な会話を通じて、ユーザー、グループ、エイリアス、組織部門を管理できます。
✨ 機能
| ツール | 説明 |
|---|---|
gw_list_users | 検索とフィルターを使ってユーザーを一覧表示 |
gw_get_user | ユーザーの詳細情報を表示 |
gw_create_user | 自動生成されたパスワードで新しいユーザーを作成 |
gw_delete_user | ユーザーを削除(明示的な確認が必要) |
gw_suspend_user | ユーザーを一時停止または再有効化 |
gw_reset_password | パスワードを自動生成してリセット |
gw_manage_alias | メールエイリアスを追加、削除、一覧表示 |
gw_list_groups | ドメインまたはユーザーのグループを一覧表示 |
gw_manage_group_member | グループメンバーを追加/削除 |
gw_list_org_units | 組織部門を一覧表示 |
gw_move_user_org | ユーザーを組織部門間で移動 |
📋 前提条件
- Python 3.10+
- 管理者アクセス権を持つ Google Workspace アカウント
- Admin SDK API が有効になっている Google Cloud プロジェクト
- Claude Desktop またはその他の MCP クライアント
🚀 インストール
pip install google-workspace-mcp
または、ソースからインストールします:
git clone https://github.com/aringad/google-workspace-mcp.git
cd google-workspace-mcp
pip install -r requirements.txt
🔑 Google Cloud の設定
1. プロジェクトを作成して API を有効化する
- console.cloud.google.com にアクセスします
- 新しいプロジェクトを作成します(または既存のプロジェクトを使用します)
- APIs & Services → Library に移動します
- Admin SDK API を検索して有効にします
2. Service Account を作成する
- APIs & Services → Credentials に移動します
- Create Credentials → Service Account を選択します
- 名前を付けます(例:
mcp-workspace-admin) - Service Account に移動し、Keys → Add Key → JSON を選択します
- JSON ファイルをダウンロードします(このファイルが認証情報です)
- Client ID を控えます(Service Account の詳細にある長い番号)
⚠️ Service Account に IAM ロールは必要ありません。権限はドメイン全体の委任によって付与されます。
3. ドメイン全体の委任
- admin.google.com にアクセスします
- Security → Access and data control → API controls → Manage Domain Wide Delegation に移動します
- Add new をクリックします
- Service Account の Client ID を入力します
- OAuth スコープに次を入力します:
https://www.googleapis.com/auth/admin.directory.user,https://www.googleapis.com/auth/admin.directory.group,https://www.googleapis.com/auth/admin.directory.orgunit,https://www.googleapis.com/auth/admin.directory.user.alias
- Authorize を選択します
⚙️ 環境変数
| 変数 | 説明 | デフォルト |
|---|---|---|
GOOGLE_SERVICE_ACCOUNT_FILE | 認証情報 JSON ファイルへのパス | ./credentials.json |
GOOGLE_ADMIN_EMAIL | 委任権限を持つスーパー管理者のメールアドレス | (必須) |
GOOGLE_CUSTOMER_ID | ドメインの顧客 ID | my_customer |
🔌 Claude Desktop の設定
設定ファイルに追加します:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"google_workspace": {
"command": "/full/path/to/google-workspace-mcp/venv/bin/python",
"args": ["/full/path/to/google-workspace-mcp/server.py"],
"env": {
"GOOGLE_SERVICE_ACCOUNT_FILE": "/full/path/to/credentials.json",
"GOOGLE_ADMIN_EMAIL": "[email protected]"
}
}
}
}
Claude Desktop を完全に終了し(Mac では Cmd+Q)、再度起動します。
💬 使用例
設定後、Claude に次のように依頼できます:
- 「ドメイン内のすべてのユーザーを表示して」
- 「[email protected] という新しいユーザーを、名前を John Doe として作成して」
- 「[email protected] を一時停止して」
- 「[email protected] のパスワードをリセットして」
- 「[email protected] に [email protected] のエイリアスを追加して」
- 「[email protected] を [email protected] グループに追加して」
- 「このドメインにはどのような組織部門がありますか?」
依頼が記載されたクライアントからのメールを直接貼り付けることもできます。Claude が実行する操作を自動的に判断します。
🔒 セキュリティ
- サービスアカウントの認証情報をリポジトリにコミットしてはいけません
- 一時パスワードは、英字、数字、記号を含む16文字です
- 破壊的な操作(削除)には、明示的な確認が必要です
- サービスアカウントには、必要最小限の権限のみを付与します
- MCP サーバーはデータを保存しません
🧪 テスト
# Verify server starts
python server.py --help
# Test with MCP Inspector
npx @modelcontextprotocol/inspector python server.py
📄 ライセンス
MIT ライセンス — 詳細は LICENSE をご覧ください。
👨💻 作成者
Mediaform s.c.r.l. が開発 — イタリア、ジェノヴァ
MCP と Google Admin SDK を使用して構築
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。