使用说明
MCP服务器示例
使用FastMCP实现模型上下文协议(MCP)服务器的简单示例。此服务器公开了一个可由MCP客户端调用的基本添加函数。
什么是MCP?
模型上下文协议(MCP)是一种允许AI模型与外部工具和服务交互的协议。它使AI模型能够调用服务器公开的函数(工具),传递参数并接收结构化响应。
特性
- 简单的MCP服务器实现
- 将附加功能作为工具公开
- 内置FastMCP,便于创建MCP服务器
- 跨平台支持(Windows、macOS、Linux)
先决条件
- Python 3.13或更高版本
- uv包管理器(推荐)或pip
- Windows、macOS或Linux
安装
使用紫外线(推荐)
-
如果您还没有安装uv:
curl -LsSf https://astral.sh/uv/install.sh | sh -
a.在窗户上安装紫外线
-
powershell -c "irm https://astral.sh/uv/install.ps1 | more" -
克隆此存储库:
git clone https://github.com/yourusername/mcp_server_example.git cd mcp_server_example -
创建并激活虚拟环境(可选但推荐):
创建venv
uv inituv venv # On Windows: .venv\Scripts\activate # On macOS/Linux: source .venv/bin/activate -
安装依赖项:
uv pip install fastmcp
运行服务器
-
启动MCP服务器:
fastmcp run server.py:mcp
测试服务器
使用风帆
-
如果还没有,请在IDE中安装Windsurf扩展。
-
在Windsurf中,您现在可以使用以下配置连接到MCP服务器:
` “命令”:“YOUR_PROJECT_PATH/mcp_server_example/.venv/bin/python”, “args”:[ “YOUR_PROJECT_PATH/mcp_server_example/mcp/server.py” ],
`
- 连接后,您应该看到
addWindsurf界面中提供的工具。
可用工具
添加
将两个数字相加。
参数:
a(int):第一个数字b(int):第二个数字
退货:
- int:a和b的和
发展
添加新工具
要向MCP服务器添加新工具,请执行以下操作:
- 打开
mcp/server.py - 使用添加新功能
@mcp.tool()装饰器 - 使用参数和返回值的类型提示定义函数
例子:
@mcp.tool()
def multiply(a: int, b: int) -> int:
"""Multiply two numbers together."""
return a * b
依赖项
fastmcp:用于创建MCP服务器的FastMCP框架