Skip to content

MCP Server 请求方式(即支持的 JSON-RPC 方法),以及它们的基本用途:


在 MCP Server(如 plugins/golang-filter/mcp-session/common/server.go)中, 包括:

1. tools/list

  • 用途:获取当前 MCP Server 支持的所有工具(API)列表。
  • 请求格式
    json
    { "jsonrpc": "2.0", "method": "tools/list", "params": {}, "id": 1 }

2. tools/call

  • 用途:调用某个具体工具(API),执行实际业务操作。
  • 请求格式
    json
    {
      "jsonrpc": "2.0",
      "method": "tools/call",
      "params": {
        "name": "工具名称",
        "args": { ... }
      },
      "id": 2
    }

3. resources/list

  • 用途:获取 MCP Server 支持的所有资源列表。
  • 请求格式
    json
    { "jsonrpc": "2.0", "method": "resources/list", "params": {}, "id": 3 }

4. resources/read

  • 用途:读取某个具体资源的详细信息。
  • 请求格式
    json
    {
      "jsonrpc": "2.0",
      "method": "resources/read",
      "params": {
        "name": "资源名称"
      },
      "id": 4
    }

5. prompts/list

  • 用途:获取所有 prompt(提示词/模板)列表。
  • 请求格式
    json
    { "jsonrpc": "2.0", "method": "prompts/list", "params": {}, "id": 5 }

6. prompts/get

  • 用途:获取某个 prompt 的详细内容。
  • 请求格式
    json
    {
      "jsonrpc": "2.0",
      "method": "prompts/get",
      "params": {
        "name": "prompt名称"
      },
      "id": 6
    }

其他说明

  • 这些方法均采用 JSON-RPC 2.0 协议,通常通过 HTTP POST、WebSocket 或 SSE 发送。
  • 每个方法的 params 字段根据实际业务需求填写,id 字段用于请求响应对应。
  • MCP Server 还可能支持自定义扩展方法,具体以实际实现为准。

总结表格:

方法名作用典型请求格式片段
tools/list获取工具列表
tools/call调用具体工具
resources/list获取资源列表
resources/read读取资源详情
prompts/list获取 prompt 列表
prompts/get获取 prompt 详情

方法名作用/用途调用示例(JSON-RPC 请求体)
initialize初始化连接/会话json<br>{ "jsonrpc": "2.0", "method": "initialize", "params": {}, "id": 1 }<br>
ping心跳检测json<br>{ "jsonrpc": "2.0", "method": "ping", "params": {}, "id": 2 }<br>
resources/list获取资源列表json<br>{ "jsonrpc": "2.0", "method": "resources/list", "params": {}, "id": 3 }<br>
resources/templates/list获取资源模板列表json<br>{ "jsonrpc": "2.0", "method": "resources/templates/list", "params": {}, "id": 4 }<br>
resources/read读取资源详情json<br>{ "jsonrpc": "2.0", "method": "resources/read", "params": { "name": "资源名" }, "id": 5 }<br>
prompts/list获取 prompt(提示词)列表json<br>{ "jsonrpc": "2.0", "method": "prompts/list", "params": {}, "id": 6 }<br>
prompts/get获取指定 prompt 详情json<br>{ "jsonrpc": "2.0", "method": "prompts/get", "params": { "name": "prompt名" }, "id": 7 }<br>
tools/list获取工具(API)列表json<br>{ "jsonrpc": "2.0", "method": "tools/list", "params": {}, "id": 8 }<br>
tools/call调用具体工具(API)json<br>{ "jsonrpc": "2.0", "method": "tools/call", "params": { "name": "工具名", "args": { ... } }, "id": 9 }<br>
""(空字符串)处理响应消息(一般不用主动调用)无需主动调用,服务端内部处理响应
其他未定义方法返回 Method not found 错误无效方法会返回错误响应

说明:

  • 所有请求均需通过 JSON-RPC 2.0 协议发送,通常用 HTTP POST、WebSocket 或 SSE。
  • id 字段可自定义,用于请求和响应的对应。
  • params 字段根据方法不同填写,部分方法如 tools/call、resources/read、prompts/get 需传递参数。

✨ 网站运行时间: 3年11月15天 ❤️ 道阻且长,行则将至 - 微信号: heikedreamer