4.1 KiB
MCP 接入点使用指南
本教程以虾哥开源的mcp计算器功能为示例,介绍如何将自己自定义的mcp服务接入到自己的接入点里。
本教程的前提是,你的xiaozhi-server
已经启用了mcp接入点功能,如果你还没启用,可以先根据这个教程启用。
如何为智能体接入一个简单的mcp功能,如计算器功能
如果你是全模块部署
如果你是全模块部署,你可以进入智控台,智能体管理,点击配置角色
,在意图识别
的右边,有一个编辑功能
的按钮。
点击这个按钮。在弹出的页面里,位于底部,会有MCP接入点
,正常来说,会显示这个智能体的MCP接入点地址
,接下来,我们来给这个智能体扩展一个基于MCP技术的计算器的功能。
这个MCP接入点地址
很重要,你等一下会用到。
如果你是单模块部署
如果你是单模块部署,且你已经在配置文件里配置了MCP接入点地址,那么正常来说,单模块部署启动的时候,会输出如下的日志。
250705[__main__]-INFO-初始化组件: vad成功 SileroVAD
250705[__main__]-INFO-初始化组件: asr成功 FunASRServer
250705[__main__]-INFO-OTA接口是 http://192.168.1.25:8002/xiaozhi/ota/
250705[__main__]-INFO-视觉分析接口是 http://192.168.1.25:8002/mcp/vision/explain
250705[__main__]-INFO-mcp接入点是 ws://192.168.1.25:8004/mcp_endpoint/mcp/?token=abc
250705[__main__]-INFO-Websocket地址是 ws://192.168.1.25:8000/xiaozhi/v1/
250705[__main__]-INFO-=======上面的地址是websocket协议地址,请勿用浏览器访问=======
250705[__main__]-INFO-如想测试websocket请用谷歌浏览器打开test目录下的test_page.html
250705[__main__]-INFO-=============================================================
如上,输出mcp接入点是
中ws://192.168.1.25:8004/mcp_endpoint/mcp/?token=abc
就是你的MCP接入点地址
。
这个MCP接入点地址
很重要,你等一下会用到。
第一步 下载虾哥MCP计算器项目代码
浏览器打开虾哥写的计算器项目,
打开完,找到页面中一个绿色的按钮,写着Code
的按钮,点开它,然后你就看到Download ZIP
的按钮。
点击它,下载本项目源码压缩包。下载到你电脑后,解压它,此时它的名字可能叫mcp-calculatorr-main
你需要把它重命名成mcp-calculator
。接下来,我们用命令行进入项目目录即安装依赖
# 进入项目目录
cd mcp-calculator
conda remove -n mcp-calculator --all -y
conda create -n mcp-calculator python=3.10 -y
conda activate mcp-calculator
pip install -r requirements.txt
第二步 启动
启动前,先从你的智控台的智能体里,复制到了MCP接入点的地址。
例如我的智能体的mcp地址是
ws://192.168.1.25:8004/mcp_endpoint/mcp/?token=abc
开始输入命令
export MCP_ENDPOINT=ws://192.168.1.25:8004/mcp_endpoint/mcp/?token=abc
输入完后,启动程序
python mcp_pipe.py calculator.py
如果你是智控台部署
如果你是智控台部署,启动完后,你再进入智控台,点击刷新MCP的接入状态,就会看到你扩展的功能列表了。
如果你是单模块部署
如果你是单模块部署,当设备连接后,会输出类似的日志,说明成功了
250705 -INFO-正在初始化MCP接入点: wss://2662r3426b.vicp.fun/mcp_e
250705 -INFO-发送MCP接入点初始化消息
250705 -INFO-MCP接入点连接成功
250705 -INFO-MCP接入点初始化成功
250705 -INFO-统一工具处理器初始化完成
250705 -INFO-MCP接入点服务器信息: name=Calculator, version=1.9.4
250705 -INFO-MCP接入点支持的工具数量: 1
250705 -INFO-所有MCP接入点工具已获取,客户端准备就绪
250705 -INFO-工具缓存已刷新
250705 -INFO-当前支持的函数列表: [ 'get_time', 'get_lunar', 'play_music', 'get_weather', 'handle_exit_intent', 'calculator']
如果包含了 'calculator'
,说明设备将可以根据意图识别,调用计算器这个工具。