remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Supports containerization of the MCP server for deployment to Google Cloud Run, with the deployment script handling Docker container building and pushing to Google Container Registry.
Enables hosting an MCP server on Google Cloud Run with IAM authentication, allowing teams to securely access the server over the internet using Cloud SDK for authentication and proxy connections.
Google Cloud Run で MCP SSE サーバーをホストする
現時点では(2024年3月4日)、MCPは認証と認可の対応に取り組んでいます。2025年上半期には完了する予定です。問題は、今すぐにでもMCPサーバーをチームと共有したいということです。それで、今の状況です。CursorなどでSSE MCPサーバーを使用する唯一の即効性のある解決策は、ネットワーク層ベースのソリューション(例:プロキシ)です。Basic認証やAPIキーは諦めましょう。
GCP Cloud Run とユーザーベースの IAM 認証を利用して、クライアントがインターネット経由でカスタム MCP サーバーにアクセスできるようにするシンプルで安全な方法を作成しました。
仕組み
MCPサーバーはGoogle Cloud Runでホストされています。Cloud Run IAM認証を利用することで、Google Cloud SDKを使用してプロキシ接続を作成し、インターネットから安全にサーバーに接続できます。
TLDR README
すでに docker と gcloud CLI がローカルにセットアップされている場合は、最小限の設定ですぐに使用できるはずです。
**ステップ 1:**プロジェクト ID、サービス アカウントのメールなどを使用してdeploy.sh
更新します。
**ステップ 2:**デプロイが成功したら、提供されたクラウド実行 URL を取得し、プロジェクト ID とともにmcp_proxy.ts
に追加します。
**ステップ3:**プロキシnpx ts-node mcp_proxy.ts
を実行する
ステップ 3: http://localhost:3030を使用して MCP サーバーにアクセスします - [設定] > [機能] > [MCP サーバー] の下にあるカーソルに追加します (コマンドではなく SSE を選択してください)
長くて退屈なREADME
展開手順
- リポジトリをクローンする
npm install
実行して依存関係をインストールしますnpm run dev
を実行してローカルでサーバーを起動します。
Google Cloud Runへのデプロイ
MCP サーバーを Google Cloud Run にデプロイするには:
- Google Cloud SDKがインストールされていることを確認してください
- プロジェクトの詳細で
deploy.sh
スクリプトを更新します。PROJECT_ID
: Google Cloud プロジェクト IDREGION
: ご希望の GCP リージョンSERVICE_ACCOUNT_EMAIL
: 適切な権限を持つサービスアカウントのメールアドレス
- デプロイメント スクリプトを実行します。Copy
デプロイメント スクリプトは次の処理を実行します。
- MCPサーバー用のDockerコンテナを構築する
- Google Container Registry にプッシュする
- 認証を有効にして Cloud Run にデプロイする
デプロイされたMCPサーバーに接続する
デプロイされた MCP サーバーに接続するには:
- MCP プロキシをローカルで実行します。Copy
- プロキシは次のことを行います。
- Google Cloud で認証されているか確認する
- 認証トークンを自動的に取得する
- ローカルプロキシサーバーを作成します(デフォルト: http://localhost:3030 )
- 認証されたリクエストを Cloud Run サービスに転送する
- MCPクライアントをローカルプロキシURLに接続するように設定する
カーソルでMCPサーバーを使用する
- まず、プロキシを実行して、ローカルマシンと Google Cloud Run でホストされている MCP サーバー間の接続を確立します。
- 次に、MCP サーバー セクションの [設定] > [機能] タブ内で、ローカル プロキシ サーバーをカーソルに追加します。
- さあ、準備完了です!新しいコンポーザーを起動し(エージェントモードになっていることを確認してください)、特定の場所の天気を調べてみましょう。プロキシが接続されているターミナルの出力とコンポーザーの出力を合わせると、以下のようになります。
安全
この設定により、セキュリティ上の利点がいくつか得られます。
- MCP サーバーは認証なしでは公開できません
- すべての接続はGoogle Cloud IAMで保護されています
- チームメンバーが接続するにはGoogle Cloud SDKへのアクセスが必要です
接続の問題
mcp_proxy.ts
の Cloud Run URL がデプロイされたサービスと一致していることを確認します。- Cloud Run ログでサーバー側のエラーがないか確認する
貢献
貢献を歓迎します!お気軽に問題やプルリクエストを送信してください。
ライセンス
This server cannot be installed
Google Cloud Run でホストされる安全な MCP (Model Context Protocol) サーバー。Google Cloud IAM 経由で認証されたアクセスを提供することでチームのコラボレーションを可能にし、公式の MCP 認証が実装される前にチームがインターネット経由でカスタム MCP サーバーを共有できるようにします。