MCPServer编程与CLINE配置调用MCP

1. MCP Server

如下是使用SSE传输机制,将MCP Server放到一个服务器,Cline在另一个服务器上调用该MCP的方式,写的一个简单的MCP服务器代码。

python 复制代码
from mcp.server.fastmcp import FastMCP

# Create an MCP server
mcp = FastMCP("MyWeatherService",host="0.0.0.0",port=8000)

# Tool implementation
@mcp.tool()
def get_weather(location: str) -> str:
    """Get the current weather for a specified location."""
    return f"Weather in {location}: Sunny, 72F"

# Run the server
if __name__ == "__main__":
    mcp.run(transport='sse')

MCP支持两种传输机制:

(1)Server-Sent Events (SSE):MCP Server和Client分别在不同的服务器上。

(2)STDIO:MCP Server和Client位于同一台服务器。

用如下命令,启动mcp服务

shell 复制代码
(aaa) bbb@ubuntu:/data/ccc/ddd/mcpinit$ python mcpserver.py
INFO:     Started server process [2392864]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)

可以看到,mcp会启动Uvicorn,以支持异步、高并发等服务器特性。

2. Cline配置

Cline中,想要调用这个MCP Server上的tool,需要做两个配置:

(1)配置大模型

具体步骤如下图,先点击1处打开大模型配置,然后2处填入多个大模型相关参数:

(2)配置MCP Server

具体步骤如下,先点击1处打开MCP配置,然后点击2。在3处增加ServerName(MCP Server代码中有指定),在4处填入server url(主要要以sse结尾),点击5就能自动添加。

添加后,可以在installed窗口,看到这个server,如下图所示

点击Restart Server,若链接成功(不报错),说明MCP Server配置正常。

按照这个步骤,可以增加多个MCP Server。

3. Cline调用MCP Server中的工具

首先, 输入一个问题

然后就能看到结果,确实是调用MCP Server中工具的结果(写死的结果"""Sunny, 72",调用了get_weather),如下图:

相关推荐
茉莉玫瑰花茶几秒前
GO [ context 原理解析 ]
数据库·oracle·iphone
西索斯coding13 分钟前
在 中接入 教程:p配置、m填写、扩展思考参数一篇就够(2)
java·前端·javascript·ai
hunterandroid14 分钟前
Android ViewModel + LiveData 工程实践:配置变更、一次性事件与状态恢复
android
隐退山林18 分钟前
JWT令牌技术
java·开发语言·java-ee
派小心.25 分钟前
网站统计多域名数据隔离配置
大数据·数据库·人工智能·小程序·数据分析
w_zero_one26 分钟前
动态规划(三)
java·算法·动态规划
木棉软糖37 分钟前
JDBC 读 ResultSet 读到一半,报 stream closed
java·mysql·spring
DongQiShanRen38 分钟前
六根硬件映射(中):双站校验、生克闭环与驱动接口
数据库·人工智能·算法·rust·哈希算法·集成学习
狂奔的sherry43 分钟前
JRuby 多线程反引号偶发 127:GC 提前释放了 posix_spawn 的 argv
java·linux·ruby·gc·jruby