Mcp Server Gcp Manager について
Mcp Server Gcp Managerは、LLMとgcloud CLIをつなぐオープンソースのMCPサーバーです。AIエージェントが自然言語でGoogle Cloud RunとSecret Managerを管理でき、設定確認やAPIの自動有効化にも対応します。
主な機能
- 01Cloud Runサービスの確認
- 02Secret Managerのシークレット作成と更新
- 03Secret Manager APIの自動有効化
- 04サービスのデプロイと設定更新
- 05変更前の既存設定チェック
活用シーン
- 01プロジェクト内のCloud Runサービスを確認
- 02クラウドシークレットを作成または更新
- 03Cloud Runの新しいリビジョンをデプロイ
- 04サービスのメモリやイメージ設定を調整
MCP 対応
このMCPサーバーは、Cloud Runサービスの一覧、シークレット管理、サービスデプロイのツールを提供します。gcloud CLIを通じてGoogle Cloudを操作します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Google Cloud MCP サーバー
AI エージェント(Claude、Llama 3.1、カスタム LangChain ボットなど)が Google Cloud Platform を安全かつ自律的に操作できる、オープンソースの Model Context Protocol(MCP)サーバーです。
このサーバーは、LLM と gcloud CLI の橋渡し役となり、自然言語を使って Cloud Run サービスやシークレットを管理できます。
🚀 特長
-
🔍 サービスの一覧表示:実行中の Cloud Run サービスを詳しく確認できます。
-
🔐 シークレットの管理:Google Secret Manager でシークレットを安全に作成、更新できます。
- 自動修復:Secret Manager API が無効になっている場合、自動的に検出して有効化します。
-
🚀 デプロイと更新:Cloud Run サービスの新しいリビジョンをデプロイしたり、メモリやイメージの構成を更新したりできます。
- 安全対策:変更を適用する前に既存の構成を確認し、誤って上書きするのを防ぎます。
🛠️ 前提条件
-
Python 3.10 以降
-
Google Cloud SDK(gcloud):インストールして認証を済ませておく必要があります。
-
インストール:brew install --cask google-cloud-sdk(Mac)または公式ドキュメントを参照してください。
-
認証:gcloud auth login と gcloud config set project [YOUR_PROJECT_ID] を実行してください。
-
📦 インストール
-
リポジトリをクローンします:
git clone https://github.com/YOUR_USERNAME/mcp-gcp-manager.git cd mcp-gcp-manager -
仮想環境を作成します(推奨):
python3 -m venv venv source venv/bin/activate -
Install Dependencies:
pip install mcp
⚙️ Configuration
The server attempts to automatically find your gcloud executable.
If you see a "gcloud not found" error: You can manually tell the server where gcloud is by setting an environment variable:
# 1. Example for Mac/Linux
export GCLOUD_PATH="/usr/local/bin/gcloud"
# 2. Example for Windows (PowerShell)
$env:GCLOUD_PATH="C:\Program Files\Google\Cloud SDK\google-cloud-sdk\bin\gcloud.exe"
💻 使用方法
オプション 1:Claude Desktop で使用する 公式の Claude Desktop アプリで使用するには、次の内容を claude_desktop_config.json に追加します。
{
"mcpServers": {
"gcp-manager": {
"command": "/path/to/your/venv/bin/python",
"args": ["/path/to/mcp-gcp-manager/server.py"]
}
}
}
オプション 2:LangChain/カスタム Python エージェントで使用する
langchain-mcp-adapters を使用して、このサーバーに接続できます。
from langchain_mcp_adapters.client import MultiServerMCPClient
# 3. Connect to the local server process
client = MultiServerMCPClient({
"gcp": {
"command": "python",
"args": ["server.py"],
"transport": "stdio"
}
})
# 4. Get tools and bind to your model (Llama 3, GPT-4, etc.)
tools = await client.get_tools()
🛡️ 利用可能なツール
| ツール名 | 説明 |
|---|---|
list_running_services | 指定したプロジェクト内のすべての Cloud Run サービスを一覧表示します。 |
create_secret | シークレットを作成/更新します。API の有効化も自動的に処理します。 |
deploy_service | 新しいリビジョンをデプロイします。メモリやイメージなどの更新に対応しています。 |
🤝 コントリビューション
プルリクエストを歓迎します。新しいツールを追加する場合は、適切なエラー処理を実装し、ローカルパスをハードコードしないようにしてください。
📄 ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。