MCP服务器模板

一个基于FastMCP的最小服务器脚手架,用于构建自定义MCP工具和资源,包含类型化示例、仅stderr日志记录和与uv兼容的干净项目布局。

  • by mbeps
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 mbeps/python-mcp-template

使用说明

MCP服务器模板

用于构建自己的MCP工具和资源的最小FastMCP服务器脚手架。它包括键入的示例、仅stderr日志记录和与以下内容兼容的干净项目布局 uv.

包含什么

  • FastMCP接线 src/mcp_server/main.py.
  • 键入型号 src/mcp_server/models.py.
  • 示例工具: analyze_metrics (键入Pydantic输入/输出)和 echo.
  • 示例资源位于 template://config/defaults.
  • 日志记录配置为仅使用stderr(对stdio传输安全)。

先决条件

  • Python 3.12+
  • 紫外线 用于依赖性管理和执行。

设置并运行

uv sync
uv run src/mcp_server/main.py   # or: uv run mcp-template

用MCP检查器试试

检查循环中没有LLM的工具和资源:

npx @modelcontextprotocol/inspector uv run --directory . src/mcp_server/main.py

扩展模板

  • 将新模型添加到 src/mcp_server/models.py (或一个新模块),带有完整的类型提示。
  • 在以下情况下执行工具逻辑 src/mcp_server/tools/.
  • 在中注册工具/资源 src/mcp_server/main.py 使用 @mcp.tool() 和 @mcp.resource() 装饰师。
  • 将日志记录定向到stderr(请参阅 src/mcp_server/utils/logger.py)所以stdio传输保持干净。

测试和脱毛

uv run pytest
uv run ruff check .