更新时间:2026-06-10 GMT+08:00
调用MCP服务
智能体运行时支持部署和运行MCP服务器。本章节介绍如何创建、测试并部署MCP服务器。
前提条件
步骤1:创建MCP服务器
- 安装MCP软件包。
pip install mcp
- 创建MCP服务器。
参考以下代码示例创建名为mcp_test.py的服务器。
# mcp_test.py from mcp.server.fastmcp import FastMCP mcp = FastMCP(host="0.0.0.0", stateless_http=True, port=8000) @mcp.tool() def add(a: float, b: float) -> float: """Add two numbers""" return a + b @mcp.tool() def subtract(a: float, b: float) -> float: """Subtract two numbers""" return a - b @mcp.tool() def multiply(a: float, b: float) -> float: """Multiply two numbers""" return a * b @mcp.tool() def divide(a: float, b: float) -> float: """Divide two numbers""" if abs(b) < 1e-9: raise ValueError("Division by zero") return a / b if __name__ == "__main__": mcp.run(transport="streamable-http")代码解释
- FastMCP:创建可以托管工具的MCP服务器。
- @mcp.tool() : 将Python函数转换为MCP工具的装饰器。
- Tools:工具,展示不同类型的操作。
- stateless_http=True:将服务器配置为无状态模式。
步骤2:在本地测试MCP服务器
- 启动MCP服务器。
python mcp_test.py
看到输出信息后,表明服务器正在8000端口上运行。
- 使用curl命令进行客户端测试。
示例如下:
# 获取工具列表 curl -X POST http://127.0.0.1:8000/mcp \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' # 调用工具 curl -X POST http://127.0.0.1:8000/mcp \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{ "jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": { "name": "add", "arguments": {"a": 3, "b": 5} } }' 注意 Streamable HTTP 要求客户端 Accept 头必须同时包含 application/json 和 text/event-stream,否则服务器返回 406 Not Acceptable。
步骤3:将MCP服务器部署到AgentArts
- 在本地自主开发MCP并打包成镜像,并将打包的镜像上传至容器镜像服务。
- 部署智能体运行时,部署时“入栈协议”请选择为“MCP”,具体请参考通过控制台部署智能体运行时。 图1 部署智能体运行时
步骤4:调用已部署的MCP服务器
- 登录AgentArts智能体平台。
- 在左侧导航栏选择“部署运行 > 智能体运行时 ”。
- 在列表单击已创建好的智能体运行时名称,进入智能体运行时详情页。
- 在“基本信息”区域即可查看“访问域名”。 图2 获取访问域名
- 使用API调用智能体运行时
使用API调用智能体运行时的操作,请参考调用智能体运行时。
Streamable HTTP 要求客户端 Accept 头必须同时包含 application/json 和 text/event-stream,否则服务器返回 406 Not Acceptable。
父主题: 调用智能体运行时