mcpField
G
Grpc Invoke Mcp

Grpc Invoke Mcp

ローカル
github.com/grulex開発ツール122 週間前に更新

Grpc Invoke Mcp について

grpc-invoke-mcp は、gRPC API を扱う開発者や AI エージェント向けの MCP サーバーです。サーバーリフレクションまたはローカルの `.proto` ファイルでサービス定義を調べ、一方向 RPC を呼び出せます。

主な機能

  1. 01サービス、メソッド、メッセージ型の確認
  2. 02JSON リクエストによる一方向 RPC の呼び出し
  3. 03リフレクションまたはローカル `.proto` ファイルの利用
  4. 04TLS または平文 HTTP/2 での接続
  5. 05カスタムメタデータヘッダーの送信

活用シーン

  1. 01呼び出し前の gRPC API の調査
  2. 02リクエストとレスポンスのテスト
  3. 03エージェントからの内部マイクロサービス呼び出し
  4. 04開発中の gRPC 連携のデバッグ

MCP 対応

stdio 経由の MCP サーバーとして `grpc_describe` と `grpc_call` ツールを提供します。MCP 対応エージェントが gRPC のスキーマを調べ、一方向メソッドを呼び出せます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"grpc-invoke": {
"command": "npx",
"args": [
"-y",
"@grulex/grpc-invoke-mcp"
]
}
}
}
起動コマンドnpx -y @grulex/grpc-invoke-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@grulex/grpc-invoke-mcp0.1.5

ツール

2

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
targetstringはいhost:port(例:localhost:50051)
methodstringはい完全修飾メソッド名(例:helloworld.Greeter/SayHello)
request_jsonobjectいいえJSON リクエスト本文
plaintextbooleanはいTLS の代わりに平文の HTTP/2 を使用する
use_reflectionbooleanはいgRPC サーバーリフレクションを使用する
proto_filesnull|arrayいいえ.proto ファイルへのパス
import_pathsnull|arrayいいえproto のインポートパス
headersobjectいいえリクエストメタデータヘッダー
timeout_msintegerいいえタイムアウト(ミリ秒)

詳細

gRPC Invoke MCP

npm version npm downloads license

grpc-invoke-mcp は、Claude Code、Codex、Cursor などの MCP 互換ツールから gRPC メソッドを呼び出すための MCP サーバーです。

エージェントが、サーバーリフレクションまたはローカルの .proto ファイルを使って、gRPC API を簡単に調査し、単項 RPC を呼び出せるようにします。エージェントがサービスを探索し、リクエストとレスポンスのスキーマを把握し、実際に gRPC を呼び出し、エージェント主導の開発中に使い捨てのスクリプトを書かずに gRPC 連携をテストしたい場合に便利です。

機能

  • MCP 互換エージェントから gRPC メソッドを呼び出す
  • gRPC サービス、メソッド、メッセージ型を記述する
  • サーバーリフレクションまたはローカルの .proto ファイルを使う
  • TLS またはプレーンテキストの HTTP/2 経由で接続する
  • カスタムメタデータヘッダーを送信する
  • 単項 RPC に JSON リクエストボディを渡す
  • Claude Code、Codex、Cursor などの MCP クライアントで動作する

インストール

npx でサーバーを実行します。

npx -y @grulex/grpc-invoke-mcp@latest

インストール時に、パッケージがプラットフォーム固有の grpc-invoke-mcp バイナリをダウンロードします。

エージェントの設定

Claude Code

プロジェクトの設定ファイル:.mcp.json

{
  "mcpServers": {
    "grpc-invoke": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@grulex/grpc-invoke-mcp@latest"]
    }
  }
}

CLI での設定(任意):

claude mcp add --transport stdio grpc-invoke -- npx -y @grulex/grpc-invoke-mcp@latest
Codex

ユーザーの設定ファイル:~/.codex/config.toml

[mcp_servers.grpc-invoke]
command = "npx"
args = ["-y", "@grulex/grpc-invoke-mcp@latest"]

CLI での設定(任意):

codex mcp add grpc-invoke -- npx -y @grulex/grpc-invoke-mcp@latest
Cursor

プロジェクトの設定ファイル:.cursor/mcp.json

{
  "mcpServers": {
    "grpc-invoke": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@grulex/grpc-invoke-mcp@latest"]
    }
  }
}

~/.cursor/mcp.json にグローバルインストールすることもできます。

利用可能なツール

grpc_describe

このツールを使って、サービス、メソッド、メッセージ型を調査します。

主な用途:

  • gRPC サーバーが公開しているサービスを一覧表示する
  • 呼び出す前にメソッドのシグネチャを確認する
  • リフレクションを使ってメッセージスキーマを調べる
  • ローカルの .proto ファイルから API を記述する
grpc_call

このツールを使って、JSON リクエストボディで単項 gRPC メソッドを呼び出します。

主な用途:

  • エージェントから内部マイクロサービスを呼び出す
  • リクエストとレスポンスのペイロードをテストする
  • 認証ヘッダーやその他の gRPC メタデータを送信する
  • ローカル、ステージング、本番環境で安全なエンドポイントに接続する

プロンプトの例

  • 「リフレクションを使って、localhost:50051 が公開しているサービスを説明してください。」
  • 「helloworld.Greeter/SayHello のリクエストスキーマを表示してください。」
  • 「{ \"name\": \"World\" } を指定して、localhost:50051 の helloworld.Greeter/SayHello を呼び出してください。」
  • 「リフレクションの代わりに proto_files と import_paths を使って、package.Service/Method を呼び出してください。」

仕組み

このパッケージは、stdio 経由で MCP サーバーを公開します。エージェントがローカルでサーバーを起動し、次のようなツールを検出します。

  • スキーマの調査に使う grpc_describe
  • 単項 RPC の呼び出しに使う grpc_call

内部では、npm パッケージがインストール時に同梱されたネイティブの grpc-invoke-mcp バイナリを起動します。このバイナリは次に対応しています。

  • gRPC サーバーリフレクション
  • ローカルの .proto 定義
  • プレーンテキストまたは TLS 接続
  • リクエストのメタデータヘッダー

対応プラットフォーム

インストーラーは現在、次のプラットフォームを対象としています。

  • macOS Apple Silicon
  • macOS Intel
  • Linux x64
  • Linux ARM64
  • Windows x64
  • Windows ARM64

トラブルシューティング

npx でサーバーを起動できない

Node.js と npx がインストールされ、PATH から利用できることを確認してください。

バイナリのダウンロードに失敗する

npm パッケージはインストール時にリリース成果物をダウンロードするため、マシンが GitHub Releases にアクセスできる必要があります。

リフレクションが動作しない

接続先サーバーが gRPC リフレクションを公開していない場合は、代わりにローカルの .proto ファイルと import_paths を使ってください。

TLS または接続のエラー

接続先のホスト、ポート、TLS 設定、およびサーバーがプレーンテキストと TLS のどちらを想定しているかを確認してください。

エージェントが MCP サーバーを使用しない

クライアントに適した場所に設定ファイルがあることを確認してください。必要に応じてクライアントを再起動し、MCP 一覧またはツールパネルにサーバーが表示されていることを確認してください。

grpc-invoke-mcp を使用する理由

gRPC サービスを扱う場合、この MCP サーバーを使うと、AI エージェントがそれらのサービスを直接調査して呼び出せます。API の詳細を手作業で翻訳する代わりに、Claude Code、Codex、Cursor などの MCP 対応エージェントにコントラクトを調査させ、安全で的を絞ったリクエストを実行させることで、エージェント主導の開発ワークフローにおけるデバッグ、統合作業、API の調査、gRPC のテストを行えます。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。