MCP 与技能
节点托管的 MCP 服务器¶
在节点机器上的 openclaw.json 中配置 MCP 服务器,而不是在网关上:
{
nodeHost: {
mcp: {
servers: {
localDocs: {
command: "npx",
args: ["-y", "@modelcontextprotocol/server-filesystem", "/srv/docs"],
toolFilter: {
include: ["read_*", "search"],
},
},
internalApi: {
url: "https://mcp.internal.example/mcp",
transport: "streamable-http",
headers: {
Authorization: "Bearer ${INTERNAL_MCP_TOKEN}",
},
},
},
},
},
}
无头节点主机会启动这些服务器,列出它们的工具,并在连接后发布描述符。工具调用通过 mcp.tools.call.v1 返回到该节点;网关不需要匹配的 MCP 配置或 JS 插件。此节点托管的 v1 路径不支持 OAuth MCP 服务器。
当前节点主机在初始配对期间会声明内置的 mcp.tools.call.v1 命令族,即使未配置任何 MCP 服务器。在旧版 OpenClaw 上配对的节点,在节点主机更新后可能会请求一次性的命令面升级。之后添加、删除或筛选服务器不需要重新配对,因为已批准的命令族未发生变化。重启 openclaw node run 或 openclaw node restart 以应用节点 MCP 配置更改;节点主机不会监视此配置。
服务器通告的工具列表更改会实时生效,并替换已发布的节点目录。如果 MCP 传输关闭,或 SSE 或有状态 Streamable HTTP 会话过期,节点会撤回该服务器的过期工具,并以有界退避重新连接。检测到会话过期的失败调用不会被重放;在其工具重新发布后,后续调用可以使用替换连接。
网关操作员可以使用 gateway.nodes.pluginTools.enabled: false 忽略所有由已配对节点发布的代理可见工具,包括节点托管的 MCP 工具。诸如 gateway.nodes.commands.deny: ["mcp.tools.call.v1"] 之类的精确命令拒绝也会阻止执行。
节点托管的技能¶
将技能安装在节点机器的活动 OpenClaw 技能目录下,默认为 ~/.openclaw/skills。OPENCLAW_HOME、OPENCLAW_STATE_DIR 和 OPENCLAW_CONFIG_PATH 会移动该活动配置。OPENCLAW_STATE_DIR 对技能具有优先权;否则,skills/ 位于 openclaw config file 打印的路径旁边。无头节点主机在连接后发布有效的 SKILL.md 文件,并且网关仅在该节点保持连接期间将它们添加到代理技能快照中。每个技能目录名称必须与 name frontmatter 字段匹配,以便抽象节点定位符映射到一个条目,而无需添加另一个协议字段。
初始节点角色配对会批准技能发布。添加、删除或更改技能不需要再次配对或更改网关配置。更改节点技能文件后,重启 openclaw node run 或 openclaw node restart;节点主机不会监视技能目录。
节点托管的技能条目会标识其节点并携带其执行位置。技能文件、引用的相对路径和二进制文件保留在该节点上。代理使用常规 read 工具读取通告的 node://.../SKILL.md 位置。file_fetch 接受操作员批准的绝对节点路径,而不是节点技能定位符;没有常规读取工具的运行时可以改为通过 exec host=node node=<node-id> 运行 cat SKILL.md,并将通告的 node://.../skills/<name> 目录作为 workdir。引用的文件和二进制文件使用相同的 exec 目标和 workdir。节点主机会基于其活动 OpenClaw 状态目录解析该定位符,因此相对路径在节点上解析,而不是在网关机器上解析。发布节点必须已批准 system.run,并且代理的 exec 策略必须允许 host=node;否则,该技能将不会包含在该代理的快照中。
在节点上设置 nodeHost.skills.enabled: false 以停止发布。网关操作员可以使用 gateway.nodes.allowSkills: false 忽略来自所有已配对节点的技能。
本地模型推理¶
桌面或服务器节点可以公开该节点上运行的 Ollama 服务器中具备聊天能力的模型。代理使用 Ollama 插件的 node_inference 工具来发现已安装的模型并远程运行有界提示;网关不需要直接网络访问 Ollama。有关设置、模型过滤和直接验证命令,请参阅 Ollama 节点本地推理。
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw