使用说明
MCP工厂
在几秒钟内将任何API文档转换为可用于生产的MCP服务器。
MCP工厂是一个CLI工具,用于从API文档生成完整的、类型安全的模型上下文协议(MCP)服务器。给它一个OpenAPI规范、Swagger文档或YAML文件,并为Claude Desktop和Claude Code准备一个带有数百个工具的工作MCP服务器。
为什么选择MCP工厂?
- 零手动编码 -自动生成完整的TypeScript MCP服务器
- 类型安全输出 -每个工具上都有完整的TypeScript类型和Zod输入验证
- 全面覆盖API -每个端点都成为MCP工具
- 适用于任何地方 -从任何目录运行,指向任何API文档
- 自动安装 -使用一个命令配置Claude Desktop/Code
安装
npm install -g @stackkedjohn/mcp-factory-cli
快速开始
# Generate MCP server from API documentation
mcp-factory create ./api-docs.yaml
# Build the generated server
cd "My API-mcp"
npm install && npm run build
# Install to Claude Desktop
mcp-factory install "My API"
# Done! Restart Claude and start using it
真实示例:Neon CRM API
# Generate from 466KB OpenAPI spec
mcp-factory create ./neon-crm-v2.11.yaml
# Output:
# ✓ Parsed API: Neon CRM API Reference
# ✓ Generated 276 tools (5,772 lines of code)
# ✓ Build time: <3 seconds
cd "Neon CRM API Reference-mcp"
npm install && npm run build
mcp-factory install "Neon CRM API Reference"
# Now in Claude:
# "Get customer 12345 from Neon CRM"
# "Create a new donation for $100"
# "List all upcoming events"
生成什么
My API-mcp/
├── src/
│ ├── index.ts # MCP server implementation
│ ├── client.ts # HTTP client with auth handling
│ ├── tools.ts # Tool handlers for each endpoint
│ ├── types.ts # TypeScript type definitions
│ └── validation.ts # Zod schemas for input validation
├── build/ # Compiled JavaScript
├── package.json # Dependencies & scripts
├── tsconfig.json # TypeScript configuration
└── README.md # Usage instructions & Claude config
生成的代码特性
- ✅ 类型安全 -每个工具上都有完整的TypeScript类型和Zod输入验证
- ✅ 认证 -处理OAuth、API密钥、承载令牌、基本身份验证
- ✅ 错误处理 -带有状态代码的详细错误消息
- ✅ 文档 -使用配置示例完成README
- ✅ 类型检查 -生成的项目包括
npm test用于类型验证
命令
create
根据API文档生成MCP服务器。
mcp-factory create <input> [options]
Arguments:
input Path to API documentation file or URL
Options:
--ai-parse Use AI to parse unstructured documentation (coming soon)
-o, --output <dir> Custom output directory (default: ./<API Name>-mcp)
支持的格式:
- OpenAPI 3.x(JSON/YAML)
- Swagger 2.0(JSON/YAML)
- 邮差系列(即将推出)
- 非结构化文档
--ai-parse(即将推出)
示例:
# Local file
mcp-factory create ./openapi.yaml
# URL (coming soon)
mcp-factory create https://api.example.com/openapi.json
# Custom output directory
mcp-factory create ./swagger.json -o ./custom-mcp
validate
在不生成代码的情况下验证API规范。
mcp-factory validate <input>
检查API文档是否有效并且可以处理。
list
列出注册表跟踪的所有生成的MCP服务器。
mcp-factory list
显示您生成的所有服务器及其路径和创建日期。
install
在Claude Desktop或Claude Code中自动配置生成的服务器。
mcp-factory install <server-name>
它的作用:
- 在注册表中查找服务器
- 检测克劳德桌面和/或克劳德代码
- 使用正确的路径更新配置
- 提供添加API凭据的下一步步骤
配置文件:
- 克劳德桌面(macOS):
~/Library/Application Support/Claude/claude_desktop_config.json - 克劳德桌面(Windows):
%APPDATA%\Claude\claude_desktop_config.json - 克劳德代码:
~/.claude/config.json
完成工作流程
1.生成服务器
cd ~/my-projects
mcp-factory create ./stripe-openapi.yaml
输出:
ℹ Detecting format: OpenAPI 3.0
✓ Parsed API: Stripe API
ℹ Detected patterns: auth=bearer, pagination=cursor
✓ Generated MCP server with 247 tools
2.构建和测试
cd "Stripe API-mcp"
npm install
npm run build
npm test
生成的文件:
build/index.js-编译的MCP服务器src/*.ts-TypeScript源代码- 测试通过✓
3.安装到Claude
mcp-factory install "Stripe API"
输出:
✓ Installed Stripe API to Claude Desktop
Next steps:
1. Edit config and add API credentials
2. Restart Claude Desktop to load server
4.添加凭据
编辑Claude桌面配置:
{
"mcpServers": {
"Stripe API": {
"command": "node",
"args": ["/path/to/Stripe API-mcp/build/index.js"],
"env": {
"STRIPE_API_KEY": "sk_live_..."
}
}
}
}
5.在Claude中使用
重新启动Claude Desktop,然后:
"List my Stripe customers"
"Create a new payment intent for $50"
"Get details for charge ch_abc123"
Claude自动使用MCP服务器工具进行API调用。
运作原理
- 格式检测 -分析您的文档并确定格式
- API解析 -提取端点、参数、身份验证模式和模式
- 模式分析 -检测分页、速率限制和错误格式
- 代码生成 -使用Handlebars模板创建TypeScript MCP服务器
- 输出 -仅使用API使用的身份验证模式生成干净的TypeScript
关键设计决策:
- 生成代码,不使用运行时抽象(透明,无黑盒)
- TypeScript用于类型安全和IDE支持
- 最小依赖性(MCP SDK、Zod)
- Auth-aware生成(仅包括API的Auth模式的代码)
发展
设置
git clone https://github.com/StackkedJohn/mcp-factory.git
cd mcp-factory
npm install
npm run build
本地测试
# Test with sample OpenAPI spec
node dist/cli.js create test-fixtures/weather-api.json
# Test generated server
cd "Weather API-mcp"
npm install && npm run build && npm test
项目结构
mcp-factory/
├── src/
│ ├── cli.ts # CLI entry point
│ ├── commands/ # Command implementations
│ ├── parsers/ # Format parsers (OpenAPI, Postman)
│ ├── generator/ # Code generation engine
│ ├── schema/ # Internal API schema types
│ ├── registry/ # Server registry management
│ └── utils/ # Logging, errors
├── templates/ # Handlebars templates
│ ├── index.ts.hbs # MCP server template
│ ├── client.ts.hbs # HTTP client template
│ ├── tools.ts.hbs # Tool handlers template
│ └── ...
├── test-fixtures/ # Sample API specs
└── docs/ # Design docs
故障排除
生成的服务器无法启动
# Check build succeeded
npm run build
# Check for TypeScript errors
npm run build -- --noEmit
工具未出现在Claude中
- 验证服务器是否在Claude配置中
- 检查服务器路径是否为绝对路径,而非相对路径
- 重新启动克劳德桌面/代码
- 检查Claude日志是否有错误
身份验证失败
- 在配置中验证API凭据
env部分 - 检查API密钥格式是否符合API的要求
- 首先使用curl测试凭据
链接
- npm包: https://www.npmjs.com/package/@stackkedjohn/mcp工厂cli
- GitHub存储库: https://github.com/StackkedJohn/mcp-factory
- 问题与支持: https://github.com/StackkedJohn/mcp-factory/issues
- MCP文件: https://modelcontextprotocol.io
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
贡献
欢迎投稿!请先打开一个问题来讨论拟议的更改。
建于❤️ 克劳德MCP生态系统
