从“人话”到机器指令,MCP像是一个机器翻译官
在地图案例中,MCP主要做了两件事
①拆解你的自然语言
当你输入“避开晚高峰”,MCP会将其转化为机器能理解的参数,比如{avoid_traffic: true, time_filter: 17:00-19:00}
,精准传达给百度地图
②确保对话不“掉线”
如果网络波动导致请求中断,MCP会自动重试,绝不会让你反复复读“喂喂喂?听到了吗?”







在Credential to connect with这里,输入连接信息

-
Command:npx
-
Arguments:-y @baidumap/mcp-server-baidu-map
-
Environments:BAIDU_MAP_API_KEY=你的百度api_key
需要先注册为百度地图的开发者,然后获取服务秘钥,可以参考百度官方的MCP服务介绍:https://lbs.baidu.com/faq/api?title=mcpserver/base
连接上之后,在Operation字段我们选择list tools,也就是获取到百度MCP支持的工具
当你运行时,会看到节点为我们输出了百度地图mcp的工具列表

4、再添加一个MCP client节点


map_directions这个工具命令,是百度地图的路线规划指令,我们看官网介绍的说明:

也就是我给出起点和终点,这个命令就会帮我自动规划路线。
好的,这几个节点配置完成后,这个简单的工作流就搞定了。
我们可以试一下。
我在对话框输入“百度大厦到天安门的公交路线”并发送。
工作流开始运行。

mmm…然后你会发现发现出问题了。
问题出在哪?我们看一下官网说明

会发现直接用map_directions的工具,是没法直接理解百度大厦和天安门的文本语言的,需要转化为经纬度才行。
行,那我们先直接转为经纬度再试试
“39.915119,116.403963到39.904211,116.407413的公交路线”
我们发送消息给工作流
再看结果,这次就正常了,我们发送自然语言给工作流,工作流成功的调用百度地图MCP协议并给我们返回了地图路线!

那么这样一个简单的工作流就算是跑通了,当然你用的时候,不可能去输入经纬度,所以还得考虑用MCP的地理编码服务,也就是先把你input的地点,转换为经纬度,然后再给到路线规划mcp_tool,去给你输出路线…

是不是很有意思?
具体的配置就先不在这里写了,后续有空再研究
附上百度地图 MCP Server的github地址:https://github.com/baidu-maps/mcp
那么还会有朋友问,有哪些应用是支持已经了MCP的呢?这里给一个宝藏地址,里面都是已经支持MCP服务的列表:
https://github.com/modelcontextprotocol/servers?tab=readme-ov-file