MCP 服务器构建器
mcp-server-builder
MCP Server Builder
等级: 强大 (POWERFUL) · 类别: 工程 (Engineering) · 领域: AI / API 集成
概述
使用此技能通过 API 契约而非手动编写的一次性工具包装器来设计和交付生产级 MCP 服务器。它专注于快速脚手架搭建、模式质量、验证以及安全演进。
该工作流支持 Python 和 TypeScript 的 MCP 实现,并将 OpenAPI 视为唯一事实来源。
核心能力
- 将 OpenAPI 路径/操作转换为 MCP 工具定义
- 生成服务器启动脚手架(Python 或 TypeScript)
- 强制执行命名、描述和模式的一致性
- 验证 MCP 工具清单以防止常见的生产环境故障
- 应用版本控制和向后兼容性检查
- 将传输/运行时决策与工具契约设计分离
使用场景
- 需要将内部/外部 REST API 暴露给 LLM Agent
- 计划用强类型工具替换脆弱的浏览器自动化
- 希望在团队和助手之间共享同一个 MCP 服务器
- 在发布 MCP 工具前需要可重复的质量检查
- 希望基于现有的 OpenAPI 规范快速启动 MCP 服务器
关键工作流
1. 从 OpenAPI 到 MCP 脚手架
1. 从有效的 OpenAPI 规范开始。
2. 生成工具清单 + 服务器启动代码。
3. 审查命名和认证策略。
4. 添加特定端点的运行时逻辑。
bash
python3 scripts/openapi_to_mcp.py \
--input openapi.json \
--server-name billing-mcp \
--language python \
--output-dir ./out \
--format text同样支持标准输入 (stdin):
bash
cat openapi.json | python3 scripts/openapi_to_mcp.py --server-name billing-mcp --language typescript2. 验证 MCP 工具定义
在集成测试前运行验证器:
bash
python3 scripts/mcp_validator.py --input out/tool_manifest.json --strict --format text检查项包括:重复命名、无效的模式结构、缺失描述、必填字段为空以及命名规范。
3. 运行时选择
- Python:适用于快速迭代和数据密集型后端。
- TypeScript:适用于统一的 JS 技术栈以及更紧密的前后端契约复用。
- 即使传输/运行时发生变化,也要保持工具契约的稳定性。
4. 生产环境加固
发布前的关键事项:
- 将密钥保存在环境变量中,而非工具模式中
- 优先使用出站主机白名单而非开放代理
- 仅采用增量变更;严禁直接重命名现有工具
完整加固指南:references/production-hardening-guide.md。
脚本接口
python3 scripts/openapi_to_mcp.py --help
--input 读取 OpenAPI
- 生成清单 + 服务器脚手架
- 输出 JSON 摘要或文本报告
python3 scripts/mcp_validator.py --help
参考资料
- references/production-hardening-guide.md — 认证与安全设计、版本策略、常见陷阱、最佳实践、架构设计