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

相关推荐
廿一夏8 小时前
MySql存储引擎与索引
数据库·sql·mysql
Mahir088 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析
java·后端·spring·缓存·面试·循环依赖·三级缓存
晓梦林9 小时前
cp520靶场学习笔记
android·笔记·学习
RyFit10 小时前
SpringAI 常见问题及解决方案大全
java·ai
石山代码10 小时前
C++ 内存分区 堆区
java·开发语言·c++
绝知此事10 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表
无风听海10 小时前
C# 隐式转换深度解析
java·开发语言·c#
lzhdim10 小时前
SQL 入门 15:SQL 事务:从 ACID 到四种常见的并发问题
数据库·sql
瀚高PG实验室11 小时前
瀚高企业版V9.1.1在pg_restore还原备份文件时提示extract函数语法问题
数据库·瀚高数据库
一只大袋鼠11 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git