article
README
🚀 OpenAPI 与 MCP
从 OpenAPI 规范生成类型安全的 MCP(模型上下文协议)服务器,助力高效开发。
🚀 快速开始
此包允许你根据 OpenAPI 规范生成和运行一个类型安全的 MCP 服务器。它提供了 CLI 工具,用于代码生成、配置管理和服务器运行。如果你希望在你的 MCP 客户端中使用外部配置,也可以通过单个命令将其添加到 IDE 或客户端中。
✨ 主要特性
- 依据 OpenAPI 规范生成类型安全的 MCP 服务器。
- 提供 CLI 工具进行代码生成、配置管理和服务器运行。
- 可通过单个命令将外部配置添加到 MCP 客户端。
📦 安装指南
npx -y -p @usemodel-dev/cli@latest
💻 使用示例
基础用法
生成服务器代码
从 OpenAPI 规范生成 MCP 服务器代码:
npx -y -p @usemodel-dev/cli@latest cli generate <ABSOLUTE_PATH_TO_SPEC_YAML_OR_JSON>
这将在
cwd()目录下创建 MCP 服务器文件。
使用 npx 运行服务器
npx -y -p @usemodel-dev/cli@latest server
高级用法
配置 MCP 客户端设置
在你的 MCP 客户端(如 Cursor、Windsurf 等)中添加或更新配置:
npx -y -p @usemodel-dev/cli@latest cli config add <client> '<config_json>'
其中:
<client>可以是:cursor、windsurf或claude<config_json>是包含你配置的 JSON 字符串
示例:
# 为 Cursor 添加或更新服务器配置
npx -y -p @usemodel-dev/cli@latest cli config add cursor '{"@yourorg/mcp": {"url": "http://localhost:3000", "env": { "apiKey": "XXX" } } }'
移除配置
npx -y -p @usemodel-dev/cli@latest cli config remove <client> <servername>
示例:
# 从 Cursor 中移除服务器配置
npx -y -p @usemodel-dev/cli@latest cli config remove cursor @yourorg/mcp
配置存储位置
根据客户端不同,配置存储在以下位置:
- Cursor:
~/.cursor/mcp.json - Windsurf:
~/.codeium/windsurf/mcp_config.json - Claude:
~/Library/Application Support/Claude/claude_desktop_config.json
所有配置均存储在 mcpServers 键下的配置文件中。添加新配置时,它们会与现有配置合并;更新现有配置时,则会覆盖。
🔧 技术细节
本地开发
- 构建服务器:
pnpm build
注意:需要先运行生成命令再进行构建。
- 启动服务器:
pnpm start
这将在 http://localhost:3001 启动服务器。
环境变量
服务器使用 dotenv 管理配置。在项目根目录创建一个 .env 文件,添加必要的环境变量即可。
依赖项
- @modelcontextprotocol/sdk:用于 MCP 实现
- express:用于 Web 服务器框架
- openapi-typescript:用于 TypeScript 类型生成
- zod:用于运行时类型验证
🤝 贡献
该项目托管在 GitHub 上,地址为 https://github.com/@usemodel-dev/cli.git。欢迎提交问题或拉取请求。
📄 许可证
MIT
📦 包信息
当前版本:0.0.1
微信扫一扫