MCP Server Template (Python)
Nisarg38
README
MCP 服务器模板 (Python)
一个开箱即用的模板,用于在 Python 中构建模型上下文协议 (MCP) 服务器。 此模板可帮助您快速创建服务器,这些服务器可以注册和公开工具和提示,供 AI 模型使用。
📚 目录
🚀 快速开始
前提条件
- Python 3.10 或更高版本
3 个简单步骤完成设置
1️⃣ 安装包
# 克隆仓库
git clone https://github.com/nisarg38/mcp-server-template-python.git my-mcp-server
cd my-mcp-server
# 以开发模式安装
pip install -e ".[dev]"
2️⃣ 运行您的服务器
# 使用 Python 运行
python -m src.main
# 或者使用方便的 CLI
mcp-server-template
3️⃣ 您的服务器现在已启动!
访问您的 MCP 服务器:
- 🌐 HTTP: http://localhost:8080
- 💻 或者使用 stdio 传输:
mcp-server-template --transport stdio
您将看到日志输出,确认服务器已成功运行。
🎮 命令行选项
使用以下命令行选项自定义您的服务器行为:
# 更改端口(默认:8080)
mcp-server-template --port 9000
# 启用调试模式以获取更详细的日志
mcp-server-template --debug
# 使用 stdio 传输而不是 HTTP
mcp-server-template --transport stdio
# 设置日志级别(选项:debug, info, warning, error)
mcp-server-template --log-level debug
🛠️ 创建您自己的工具和提示
添加工具
工具是 AI 模型可以调用的函数。 要添加新工具:
- 编辑
src/main.py - 使用
@mcp.tool()装饰器添加一个新函数:
@mcp.tool()
def your_tool_name(param1: str, param2: int) -> Dict[str, Any]:
"""
您的工具描述 - 这将显示给 AI。
Args:
param1: 第一个参数的描述
param2: 第二个参数的描述
Returns:
包含您的结果的字典
"""
# 您的工具逻辑在这里
return {"result": "your result"}
添加提示
提示是 AI 模型可以访问的模板:
@mcp.prompt()
def your_prompt_name(param: str) -> str:
"""您的提示描述。"""
return f"""
您的格式化提示,其中插入了 {param}。
使用此方法来构建结构化的提示模板。
"""
📁 项目结构
src/ # 源代码目录
├── main.py # 带有工具和提示的服务器入口点
├── config.py # 配置设置
├── utils/ # 实用函数
├── tools/ # 工具实现
└── resources/ # 资源定义
test/ # 测试目录
pyproject.toml # 包配置
Dockerfile # Docker 支持
🚢 部署选项
Docker 部署
# 构建 Docker 镜像
docker build -t my-mcp-server .
# 运行容器
docker run -p 8080:8080 my-mcp-server
云部署
此模板旨在与各种云平台配合使用:
- 作为容器部署在 AWS、GCP 或 Azure 上
- 在支持容器化应用程序的无服务器平台上运行
- 与 Kubernetes 配合使用进行编排
🧪 开发指南
# 安装开发依赖项
pip install -e ".[dev]"
# 运行测试
pytest
# 格式化代码
black src test
isort src test
# 运行 linting
flake8 src test
❓ 需要帮助?
- 📚 MCP 文档: modelcontextprotocol.io
- 🐛 提交 issue: GitHub Issues
- 💬 社区: 加入我们的 Discord 社区 (链接即将推出)
用 ❤️ 为 AI 开发者社区制作
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。
Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。
Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。