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),如下图:

相关推荐
m0_613856294 小时前
mysql如何利用事务隔离级别解决特定业务冲突_mysql隔离方案选型
jvm·数据库·python
Adios7944 小时前
VPR:Pitts50K和Norland数据集下载
数据库
东风破1374 小时前
DM用户权限、表、约束等对象的基本操作,SQL日志的开启介绍
数据库·sql·dm达梦数据库
abcnull4 小时前
用javaparser做精准测试
java·ast·静态代码分析·精准测试·javaparser
叶小鸡4 小时前
Java 篇-项目实战-苍穹外卖-笔记汇总
java·开发语言·笔记
收获不止数据库4 小时前
达梦9发布会归来:AI 时代,我们需要一款什么样的数据库?
数据库·人工智能·ai·语言模型·数据分析
AI人工智能+电脑小能手4 小时前
【大白话说Java面试题】【Java基础篇】第22题:HashMap 和 HashSet 有哪些区别
java·开发语言·哈希算法·散列表·hash
小宇的天下4 小时前
Virtuoso GUI 界面中的关键模块定义
数据库
bqq198610264 小时前
MySQL 5.7 与 MySQL 8.0 的主要区别
数据库·mysql
juniperhan5 小时前
Flink 系列第21篇:Flink SQL 函数与 UDF 全解读:类型推导、开发要点与 Module 扩展
java·大数据·数据仓库·分布式·sql·flink