本地开发MCP Server+Cline配置使用
MCP 有以下几个核心功能:
- Resources 资源
- Prompts 提示词
- Tools 工具
- Sampling 采样
- Roots 根目录
- Transports 传输层
其中 MCP 的传输层支持了 2 种协议的实现:stdio(标准输入/输出)和 SSE(服务器发送事件),因为 stdio 更为常用,所以本文会以 stdio 为例。
MCP Python SDK (GitHub - modelcontextprotocol/python-sdk: The official Python SDK for Model Context Protocol servers and clients) 虽然提供了 uv 和pip这个包管理工具安装sdk,经过对比还是安装uv更方便些,使用uv启动MCP server会更加的容易。因此需要先安装uv。
一、安装uv
pip3 install uv
二、开发mcp server
参考官网:For Server Developers - Model Context Protocol
1、初始化项目并安装依赖
# 初始化项目
uv init mymcp
cd mymcp
# 创建虚拟环境并进入虚拟环境
uv venv
source .venv/bin/activate
# 安装基本依赖
uv add "mcp[cli]"
2、创建服务脚本,并编写代码
#创建脚本
touch mymcp.py
编写代码,这里用最简单的加法计算为例
#mymcp.py
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("Demo")# 这个Demo就是MCP Server的名字
@mcp.tool()
def add(a: int, b: int) -> int:
"""Add two numbers"""
# print('...', file=sys.stderr)
return a+b
if __name__ == "__main__":
print("Starting MCP server...")
mcp.run(transport='stdio')
3、调试服务
使用官方提供的 Inspector
可视化工具来调试我们的服务器。
#执行调试命令
#注意:如果本次开发完了,退出了,下次想重新调试,需要再source .venv/bin/activate下环境,才可以使用mcp dev
mcp dev mymcp.py
运行后,出现下图即为运行成功
点击http://localhost:5173即可进入浏览器调试。按下图步骤即可进行调试:
三、Cline配置使用
开发完成后想要Claude Desktop访问,可以直接 mcp install server.py 安装,这种方式是用于Claude使用,Cline使用的话需要配置下。
1、配置
打开cline的mcp配置,将如下配置写入cline_mcp_setting.json中,若绿点亮了则表示成功。
"mymcp": {
"command": "uv",
"args": [
"--directory",
"/Users/xxx/xxxx/xxx/mymcp",
"run",
"mymcp.py"
],
"disabled": false,
"autoApprove": []
}
2、测试
配置成功后,cline中使用测试下