
Method 1: Running as a Python script

2025.04.21
0
Python工具服务服务器框架开发效率
MCP_Server_Setup 是一个基于 Python 的服务器框架,用于快速构建和部署工具服务。它支持通过标准输入输出(stdio)或服务器发送事件(SSE)进行通信,适用于开发和生产环境。核心功能包括工具定义、客户端-服务器通信以及多种运行模式。
View on GitHub
Overview
基本能力
产品定位
MCP_Server_Setup 是一个用于构建和部署工具服务的服务器框架,特别适合开发需要与客户端进行高效通信的服务。
核心功能
- 工具定义与注册:通过装饰器快速定义和注册工具函数。
- 多种运行模式:支持开发模式、Claude Desktop 集成和直接执行。
- 通信协议支持:支持 stdio 和 SSE 两种通信协议。
- 客户端-服务器交互:提供客户端实现示例,支持工具列表查询和工具调用。
适用场景
- 开发测试:使用 MCP Inspector 进行快速测试和调试。
- 生产部署:通过 HTTP 或 stdio 与客户端进行通信,适用于不同规模的部署需求。
- 工具服务集成:与 Claude Desktop 等工具集成,提供自定义功能。
工具列表
- say_hello:向某人打招呼的工具。
- add:加法工具(示例中提及)。
常见问题解答
- 如何选择通信协议?
- 使用 stdio 如果客户端和服务器在同一进程或紧密耦合。
- 使用 HTTP/SSE 如果服务器和客户端分开运行或需要更好的扩展性。
使用教程
使用依赖
- 确保已安装 Python 3.7+。
- 安装 MCP 框架:
bash pip install mcp
安装教程
- 创建一个 Python 文件(如
server.py
)并定义工具: ```python from mcp.server.fastmcp import FastMCP
mcp = FastMCP("DemoServer")
@mcp.tool() def say_hello(name: str) -> str: """Say hello to someone""" return f"Hello, {name}! Nice to meet you."
if name == "main":
mcp.run()
2. 运行服务器:
- 开发模式:
bash
mcp dev server.py
- Claude Desktop 集成:
bash
mcp install server.py
- 直接执行:
bash
python server.py
```
调试方式
- 使用 MCP Inspector 进行交互式测试:
bash mcp dev server.py
- 检查工具列表:
python tools_result = await session.list_tools() print("Available tools:") for tool in tools_result.tools: print(f" - {tool.name}: {tool.description}")
- 调用工具:
python result = await session.call_tool("say_hello", arguments={"name": "World"}) print(result.content[0].text)