使用说明
MCP服务器模板
一个轻量级的、后端中立的框架,用于构建模型上下文协议(MCP)服务器。模板侧重于管道 每个服务器都需要——确定性信封、Starlette路由、带就绪门的服务器发送事件(SSE)和干净的 用于定位工具的延伸表面。
特性
- 具有确定性的最小HTTP API
{ok,data,errors}信封 - 受保护的SSE端点,强制执行单个活动连接和就绪检查
- FastMCP集成已准备好用于stdio或SSE传输
- 环境驱动的安全限制(
MCP_MAX_*)和审计日志切换 - 可插拔后端发现(
bridge/backends)用于注册自定义工具
快速入门
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt -r requirements-dev.txt
uvicorn bridge.app:create_app --factory --host 127.0.0.1 --port 8000
服务器运行后:
curl -s http://127.0.0.1:8000/api/ping.json | jq
curl -s http://127.0.0.1:8000/api/version.json | jq
配置
运行时行为通过环境变量进行控制 MCP_ 前缀:
MCP_ENABLE_WRITES–启用可写工具(默认值:false)MCP_MAX_WRITES_PER_REQUEST–单个请求中允许的最大写入量(默认值:2)MCP_MAX_ITEMS_PER_BATCH–由强制执行的最大批量大小enforce_batch_limit(默认值:256)MCP_AUDIT_LOG–JSONL审核日志文件的可选路径
一 .env.sample 文件作为参考提供。
HTTP端点
| 路线 | 描述 |
|---|---|
GET /api/ping.json |
健康检查返回 {"pong": true} |
GET /api/version.json |
模板语义版本(默认 0.0.0) |
GET /api/state |
关于SSE就绪和活动连接的诊断 |
GET /api/openapi.json |
为已注册的路线生成OpenAPI文档 |
这 /sse 端点通过单个连接门公开MCP SSE传输。这 /messages 安装提供FastMCP
消息传输,并遵守相同的准备规则。
扩展服务器
将后端模块放入 bridge/backends/ 并实施a register(server: FastMCP) 功能。发现模块
启动时自动接收共享 FastMCP 例如用于注册工具。
示例性存根包含在 bridge/backends/example.py.
发展
使用以下命令运行测试:
./bin/dev # creates .venv if necessary and starts the server
pytest
要尝试SSE传输,请启动服务器并连接两次:
curl -iN http://127.0.0.1:8000/sse
curl -i http://127.0.0.1:8000/sse # returns HTTP 409 while the first stream is active
许可证
此项目根据MIT许可证条款分发。看 许可证 了解详情。
