MCP Server
Protagonistss
README
MCP 服务器
一个基于 FastAPI 实现的,基于模型-控制器-提供者 (MCP) 架构的服务器。
项目结构
.
├── api/ # API 路由和端点
│ └── v1/ # API 版本 1
│ ├── __init__.py
│ └── items.py # Item 端点
├── controllers/ # 业务逻辑和请求处理
│ └── item_controller.py
├── providers/ # 数据访问和外部服务集成
│ └── item_provider.py
├── models/ # 数据模型和数据库模式
│ └── item.py
├── core/ # 核心配置和实用工具
│ ├── config.py # 应用配置
│ └── database.py # 数据库配置
├── main.py # 应用入口点
├── requirements.txt # 项目依赖
├── environment.yml # Conda 环境文件
└── README.md # 项目文档
特性
- 基于 FastAPI 的 REST API: 高性能,易于使用,快速编码
- MCP 架构:
- 模型 (Models): 数据结构和数据库模式
- 控制器 (Controllers): 业务逻辑和请求处理
- 提供者 (Providers): 数据访问和外部服务集成
- 现代技术栈:
- SQLAlchemy 用于 ORM
- Pydantic 用于数据验证
- FastAPI 用于 API 框架
- SQLite 用于开发数据库
- API 特性:
- 自动生成 OpenAPI 文档
- 请求验证
- 响应序列化
- CORS 中间件
- 类型检查
设置
- 创建一个 Conda 环境:
# 创建一个使用 Python 3.12 的新环境
conda create -n codeMcpServer python=3.12
# 激活环境
conda activate codeMcpServer
- 安装依赖:
# 使用提供的环境文件 (推荐)
conda env create -f environment.yml
# 或者使用 pip
pip install -r requirements.txt
# 或者使用 conda 并指定 conda-forge 频道
conda config --add channels conda-forge
conda install --file requirements.txt
- 运行服务器:
uvicorn main:app --reload
服务器将在 http://localhost:8000
启动
依赖
本项目的主要依赖:
- Python 3.12.9
- FastAPI 0.112.2
- SQLAlchemy 2.0.37
- Pydantic 2.11.2
- Uvicorn 0.32.1
- Python-dotenv 0.21.0
有关完整列表,请参见 environment.yml
或 requirements.txt
。
环境管理
导出环境
要导出您的环境以进行共享:
# 导出包含确切版本的完整环境 (不包含前缀)
conda env export | grep -v "^prefix: " > environment.yml
# 或者仅导出手动安装的包
conda env export --from-history > environment.yml
导入环境
要从导出的文件重新创建环境:
conda env create -f environment.yml
API 文档
服务器运行后,您可以访问:
- 交互式 API 文档 (Swagger UI):
http://localhost:8000/docs
- 备选 API 文档 (ReDoc):
http://localhost:8000/redoc
API 端点
Items API (/api/v1/items
)
GET /api/v1/items/
: 列出所有 itemsGET /api/v1/items/{item_id}
: 获取特定 itemPOST /api/v1/items/
: 创建一个新的 itemPUT /api/v1/items/{item_id}
: 更新一个 itemDELETE /api/v1/items/{item_id}
: 删除一个 item
开发
项目组织
该项目遵循 MCP (模型-控制器-提供者) 模式:
- 模型 (Models): 定义数据结构和数据库模式
- 控制器 (Controllers): 处理业务逻辑和请求处理
- 提供者 (Providers): 管理数据访问和外部服务集成
添加新功能
- 在
models/
中创建模型 - 在
providers/
中创建提供者 - 在
controllers/
中创建控制器 - 在
api/v1/
中创建 API 端点
贡献
- Fork 仓库
- 创建一个特性分支
- 提交您的更改
- 推送到分支
- 创建一个 Pull Request
许可证
本项目根据仓库中包含的 LICENSE 文件中的条款获得许可。
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。