MCP协议(streamable http)简单示例

目的:通过官方mcp库(python-sdk)来实现一个简单的mcp server(基于streamable http协议),然后使用cherry studio来完成对接,让大模型调用这个服务。

一、安装及初始化

## 准备python虚拟化环境
mkdir d:mcp-server
cd d:mcp-server
uv init -p 3.12
uv venv -p 3.12

二、添加官方mcp包

uv add mcp[all]==1.8.1
#当前最新版为1.8.1,从1.8.0开始支持streamable http协议

三、 编写python代码,文件名为:
mcp-server-02-streamable.py

from mcp.server.fastmcp import FastMCP

# stateless_http=True 表明使用无状态通信
# log_level="DEBUG" 方便调试
mcp = FastMCP("StatelessServer", stateless_http=True, log_level="DEBUG")

@mcp.tool('add')
def add(a: int, b: int) -> int:
    """
    函数说明:两个整数相加并返回结果。
    :param a: 第一个整数
    :param b: 第二个整数
    :return: 两数之和
    """
    return a + b

@mcp.tool('multiply')
def multiply(a: int, b: int) -> int:
    """
    函数说明:两个整数相乘并返回结果。
    :param a: 第一个整数
    :param b: 第二个整数
    :return: 两数之积
    """
    return a * b

# 使用 streamable-http 方式运行服务器
if __name__ == "__main__":
    mcp.run(transport="streamable-http")

代码功能:编写了两个tools,分别为两整数相加及两整数相乘。

四、运行代码

uv run .mcp-server-02-streamable.py
## 以下为输出:
[05/14/25 10:56:08] DEBUG    Using proactor: IocpProactor                      proactor_events.py:634
INFO:     Started server process [19964]
INFO:     Waiting for application startup.
                    INFO     StreamableHTTP session manager started    streamable_http_manager.py:109
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)

打开浏览器访问地址:http://localhost:8000/mcp,出现如下内容表明正常。

MCP协议(streamable http)简单示例

mcp streamable http运行

关掉浏览器,打开cherry studio。

五、使用cherry studio来调用上述mcp 工具,实现加法计算、乘法计算及混合计算。

打开cherry studio,转到mcp 服务器配置:

按如下图填写参数:

MCP协议(streamable http)简单示例

mcp 工具配置

提示:名称和描述随意,重点为类型和URL。接图填写即可,最后打开右上角绿色开关,点击保存。注意,在使用过程中,第四步中的运行代码窗口不能关闭,否则运行不成功。

打开Cherry studio聊天窗口,本示例选择qwen3:32b模型,你也可以选择其它大模型尝试。

第一步:列出可用工具

提示词:请列出可用工具

回复:

MCP协议(streamable http)简单示例

第二步:计算两数加法:

提示词:请计算12+68

MCP协议(streamable http)简单示例

第三步:计算两数乘法:

提示词:345*888

MCP协议(streamable http)简单示例

第四步:计算混合运算:

提示词:128*86+34,请计算结果

MCP协议(streamable http)简单示例

第四步:计算带括弧的混合运算:

提示词:(1008+8888)*45,请计算

MCP协议(streamable http)简单示例

完成实验。

总结:通过官方的mcp库,实现了简单的加法及乘法计算,大模型能通过自身能力按四则运算规律分解计算步骤,并将结果汇总。

后续可能性:

1)基于streamable http协议的mcp工具将越来越流行,与stdio协议的工具形成互补。

2)官方mcp库很好用,实现代码简单,为开发者提供了便利。

3)cherry studio软件调用mcp工具很方便,给用户提供了更多的可能性。

4) qwen3:32b调用工具可行性很高,达到可用级别。

© 版权声明

相关文章

暂无评论

none
暂无评论...