跳转到内容

cap_mcp_client / cap_mcp_server

Client 源码:cap_mcp_client.ccomponents/claw_capabilities/cap_mcp_client/src/cap_mcp_client.c · 头文件:cap_mcp_client.hcomponents/claw_capabilities/cap_mcp_client/include/cap_mcp_client.h · Skill:SKILL.mdcomponents/claw_capabilities/cap_mcp_client/skills/cap_mcp_client/SKILL.md

Server 源码:cap_mcp_server.ccomponents/claw_capabilities/cap_mcp_server/src/cap_mcp_server.c · 头文件:cap_mcp_server.hcomponents/claw_capabilities/cap_mcp_server/include/cap_mcp_server.h · Skill:SKILL.mdcomponents/claw_capabilities/cap_mcp_server/skills/cap_mcp_server/SKILL.md

ESP-Claw 通过 cap_mcp_clientcap_mcp_server 两个组件实现 Model Context Protocol (MCP) 支持:

  • cap_mcp_client:允许 LLM 发现并调用远程 MCP 服务器提供的工具
  • cap_mcp_server:将设备自身的 Capability 暴露为本地 MCP 服务端,供外部 MCP 客户端调用
工具 ID说明
mcp_list_tools列出远程 MCP 服务器上的可用工具
mcp_call_tool调用远程 MCP 服务器上的指定工具
mcp_discover发现局域网内广播的 MCP 服务器
参数类型必填说明
server_urlstringMCP 服务器 URL
endpointstringMCP endpoint 路径
cursorstring分页游标
参数类型必填说明
server_urlstringMCP 服务器 URL
tool_namestring要调用的工具名称
endpointstringMCP endpoint 路径
argumentsobject传递给工具的参数
参数类型必填说明
timeout_msinteger发现超时时间
include_selfboolean是否包含自身
属性
Group IDcap_mcp_client
默认 LLM 可见❌(需通过 Skill 激活)
工具数量3

cap_mcp_server 是一个 CLAW_CAP_KIND_HYBRID 类型的 Capability,具有生命周期管理。启动后,它在本地创建一个 MCP 服务端实例,将设备的已注册 Capability 暴露为 MCP 工具,供局域网内的外部 MCP 客户端(如桌面 IDE、其他 ESP-Claw 设备)发现和调用。

  • 支持 MCP SSE(Server-Sent Events)传输
  • 自动将设备 Capability 映射为 MCP 工具
  • 支持 mDNS 广播,局域网可发现
  • 具备完整生命周期(init → start → stop)
属性
Group IDcap_mcp_server
默认 LLM 可见
工具数量0(作为服务端,不暴露 LLM 可调用工具)