世界上有一种角色叫MCP Client,它是AI Agent和外部世界之间的翻译官。当你对Agent说「帮我查一下天气」,MCP Client就是那个拿着手机打开天气APP的人。它负责向MCP Server发起请求,拿到结果,再翻译给Agent听。没有它,Agent就像一个会思考但没有手的天才——脑子里有一百种方案,但一个都执行不了。
MCP Client在MCP协议中扮演客户端角色,其核心工作流程:
tools/list 获取Server提供的所有工具// MCP Client 核心交互流程
LLM → MCP Client: "我需要读取文件"
MCP Client → MCP Server: tools/call {name: "read_file", args: {path: "/data.txt"}}
MCP Server → MCP Client: {content: "文件内容..."}
MCP Client → LLM: "工具返回了以下内容..."
// 连接方式对比
stdio - 本地进程通信,最简单
SSE - Server-Sent Events,支持远程
Streamable HTTP - 最新标准,推荐使用OpenClaw内置了完整的MCP Client实现,开箱即用:
# openclaw.json 中的MCP配置
{
"mcp": {
"servers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/data"],
"transport": "stdio"
},
"web-search": {
"url": "http://localhost:3001/sse",
"transport": "sse"
}
}
}
}# 查看已连接的MCP工具 openclaw mcp list-tools # 测试MCP Server连接 openclaw mcp test filesystem # 多Server并行调用 - OpenClaw自动路由 "帮我读取data.json并搜索相关的API文档" # → 自动路由到filesystem和web-search两个Server