MCP Base

MCP Base

site icon
2025.04.21 0
Python开发效率Python 基础模板MCP 服务器开发效率
MCP Base 是一个用于构建 Model Context Protocol (MCP) 服务器的 Python 基础模板,提供生产就绪、可扩展的框架,支持快速创建、扩展和部署 MCP 服务器,以便向 LLM 和代理客户端暴露工具、提示和资源。
View on GitHub

Overview

基本能力

产品定位

MCP Base 是一个用于构建 MCP 服务器的 Python 基础模板,旨在为开发者提供一个模块化、可扩展的起点,支持多种传输层(STDIO、SSE、HTTP 等),并展示安全性、可扩展性和可维护性的最佳实践。

核心功能

  • 多传输层支持:支持 STDIO、SSE、HTTP 等多种传输层。
  • 模块化工具/提示/资源:通过创建类并注册来添加新功能。
  • 类型安全输入验证:使用 Pydantic 进行模式验证。
  • 安全最佳实践:目录沙盒、输入验证、错误处理。
  • 可扩展和可维护:清晰的关注点分离、基类和注册表。
  • 生产就绪:日志记录、环境管理、Docker 支持。
  • 全面文档:为用户和贡献者提供详细文档。

适用场景

  • 快速构建 MCP 服务器。
  • 扩展 MCP 服务器功能。
  • 部署生产就绪的 MCP 服务器。

工具列表

  • 文件系统工具:用于文件和目录操作。
  • API 工具:用于与外部 API 交互。
  • 提示工具:用于文本生成和摘要。
  • 资源工具:用于管理静态或动态资源。

常见问题解答

  • 如何添加新工具?/src/tools/ 中创建新类并继承 BaseTool,实现所需方法和输入模式,然后在工具注册表中注册。
  • 如何配置环境? 复制 .env.example.env 并填写所需值。
  • 如何测试? 使用 Pytest 运行 /tests/ 中的测试。

使用教程

使用依赖

pip install -r requirements.txt

安装教程

  1. 复制 .env.example.env 并填写所需值。
  2. 运行服务器:
  3. STDIO 传输bash python main.py --transport=stdio
  4. SSE/HTTP 传输:参考 /src/transports/sse/README.md/src/transports/http/README.md

调试方式

  • 使用日志记录功能查看服务器运行状态。
  • 运行测试以确保功能正常: bash pytest

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。