mcpField
G
Grpc Invoke Mcp

Grpc Invoke Mcp

本地服务
github.com/grulex开发工具122 周前更新

关于 Grpc Invoke Mcp

grpc-invoke-mcp 是面向开发者和 AI Agent 的 gRPC MCP 服务,可通过服务反射或本地 `.proto` 文件检查服务架构并调用一元 RPC。

主要功能

  1. 01检查服务、方法和消息类型
  2. 02使用 JSON 请求体调用一元 RPC
  3. 03通过反射或本地 `.proto` 文件工作
  4. 04使用 TLS 或明文 HTTP/2 连接
  5. 05发送自定义元数据标头

适用场景

  1. 01调用前探索 gRPC API
  2. 02测试请求和响应载荷
  3. 03通过 Agent 调用内部微服务
  4. 04开发期间调试 gRPC 集成

MCP 相关

通过 stdio 的 MCP 服务提供 `grpc_describe` 和 `grpc_call` 工具。兼容 MCP 的 Agent 可检查 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是使用明文 HTTP/2,而不是 TLS
use_reflectionboolean是使用 gRPC 服务器反射
proto_filesnull|array否.proto 文件的路径
import_pathsnull|array否proto 导入路径
headersobject否请求元数据标头
timeout_msinteger否超时时间(毫秒)

详细介绍

gRPC Invoke MCP

npm 版本 npm 下载量 许可证

grpc-invoke-mcp 是一个 MCP 服务,可供 Claude Code、Codex、Cursor 等 AI Agent 及其他兼容 MCP 的工具调用 gRPC 方法。

它为 Agent 提供了一种简单的方式,可通过服务端反射或本地 .proto 文件检查 gRPC API 并调用一元 RPC。当你希望 Agent 在 Agent 驱动的开发过程中探索服务、了解请求和响应架构、执行实际的 gRPC 调用并测试 gRPC 集成,而无需编写临时脚本时,这项功能就很有用。

功能

  • 通过兼容 MCP 的 Agent 调用 gRPC 方法
  • 描述 gRPC 服务、方法和消息类型
  • 使用服务端反射或本地 .proto 文件
  • 通过 TLS 或明文 HTTP/2 连接
  • 发送自定义元数据标头
  • 为一元 RPC 传入 JSON 请求正文
  • 适用于 Claude Code、Codex、Cursor 等 MCP 客户端

安装

使用 npx 运行服务:

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

安装过程中,程序包会下载平台专用的 grpc-invoke-mcp 二进制文件。

Agent 设置

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 方法。

常见用例:

  • 通过 Agent 调用内部微服务
  • 测试请求和响应负载
  • 发送身份验证标头或其他 gRPC 元数据
  • 连接到本地、预发布或适用于生产环境的安全端点

示例提示词

  • “使用反射描述 localhost:50051 公开的服务。”
  • “显示 helloworld.Greeter/SayHello 的请求架构。”
  • “使用 { \"name\": \"World\" } 调用 localhost:50051 上的 helloworld.Greeter/SayHello。”
  • “使用 proto_files 和 import_paths 调用 package.Service/Method,而不是使用反射。”

工作原理

此程序包通过 stdio 提供 MCP 服务。你的 Agent 会在本地启动该服务,并发现以下工具:

  • grpc_describe,用于检查架构
  • grpc_call,用于调用一元 RPC

在底层,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。

Agent 未使用 MCP 服务

确认配置文件位于客户端的正确位置;如有需要,重启客户端,并确认服务出现在 MCP 列表或工具面板中。

为什么使用 grpc-invoke-mcp

如果你需要使用 gRPC 服务,这个 MCP 服务可以让 AI Agent 直接检查和调用这些服务。无需手动转换 API 详情,你可以让 Claude Code、Codex、Cursor 或其他兼容 MCP 的 Agent 探索服务契约,并执行安全、精准的请求,用于调试、集成工作、API 探索,以及 Agent 驱动的开发工作流中的 gRPC 测试。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。