更新时间:2026-07-17 gmt 08:00

调用mcp服务-j9九游会登录

智能体运行时支持部署和运行mcp服务器。本章节介绍如何创建、测试并部署mcp服务器。

步骤1:创建mcp服务器

步骤2:在本地测试mcp服务器

步骤3:将mcp服务器部署到agentarts

步骤4:调用已部署的mcp服务器

前提条件

  • 操作系统:linux arm64,服务器可访问公网。

    需使用arm64系统制作的agent镜像,使用x86系统制作的镜像在调用智能体运行时时会调用失败。

    可以使用华为云ecs服务购买服务器,购买时需要选择鲲鹏架构(arm64)。

  • 安装python:请确保python 3.10及以上版本已安装。

    大多数linux发行版(如ubuntu)都预装了python,您可以先通过python3 --version检查。如未安装,可以使用如下命令安装:

    sudo apt update
    sudo apt install python3

步骤1:创建mcp服务器

  1. 安装mcp软件包。
    pip install mcp
  2. 创建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服务器。
    • tools:工具,展示不同类型的操作。
    • @mcp.tool():将python函数转换为mcp工具的装饰器。
    • stateless_http=true:将服务器配置为无状态模式。

步骤2:在本地测试mcp服务器

  1. 启动mcp服务器。
    python mcp_test.py

    看到输出信息后,表明服务器正在8000端口上运行。

  2. 使用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

  1. 在本地自主开发mcp并打包成镜像,并将打包的镜像上传至容器镜像服务。
  2. 部署智能体运行时,部署时“入栈协议”请选择为“mcp”,具体请参考通过控制台部署智能体运行时
    图1 部署智能体运行时

步骤4:调用已部署的mcp服务器

  1. 登录。
  2. 在左侧导航栏选择“部署运行 > 智能体运行时 ”。
  3. 在列表单击已创建好的智能体运行时名称,进入智能体运行时详情页。
  4. 在“基本信息”区域即可查看“访问域名”。
    图2 获取访问域名
  5. 使用api调用智能体运行时

    使用api调用智能体运行时的操作,请参考。

    streamable http 要求客户端accept头必须同时包含application/json和text/event-stream,否则服务器返回406 not acceptable。

相关文档

网站地图