Errorrrrr/apifox-mcp-server
If you are the rightful owner of apifox-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
This is an MCP (Model Context Protocol) server that facilitates importing OpenAPI and Swagger formatted JSON data into Apifox projects.
Apifox MCP 服务器
这是一个 MCP(Model Context Protocol)服务器,实现了一个可以将 OpenAPI、Swgger 格式的 JSON 数据导入到 Apifox 项目中的工具。
功能特性
- 📡 Apifox 导入工具: 将 OpenAPI 3、Swagger 2 格式的 JSON 数据导入到 Apifox 项目中
安装依赖
pip install -r requirements.txt
MCP 服务器配置
1. 启动服务器
有两种方式启动服务器:
方式一:直接启动
python main.py
方式二:使用启动脚本
./start_server.sh
2. MCP 客户端配置
Claude Desktop 配置
在 Claude Desktop 的配置文件中添加服务器配置:
macOS 配置文件位置: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows 配置文件位置: %APPDATA%\Claude\claude_desktop_config.json
配置示例:
{
"mcpServers": {
"apifox-mcp-server": {
"command": "python",
"args": ["/path/to/your/apifox-mcp-server/main.py"],
"env": {
"APIFOX_TOKEN": "your-apifox-token",
"APIFOX_PROJECT_ID": "your-project-id"
}
}
}
}
💡 提示: 完整的配置示例和说明请参考项目中的
mcp_config_example.json和MCP_CONFIG_README.md文件
其他 MCP 客户端配置
对于其他支持 MCP 的客户端,请参考相应客户端的文档配置 stdio 连接:
python /path/to/apifox-mcp-server/main.py
3. 验证配置
配置完成后,重启 MCP 客户端,您应该能够看到 import_api 工具可用。
4. 环境变量配置
在 MCP 配置文件的 env 字段中设置以下环境变量:
| 环境变量 | 必需 | 说明 |
|---|---|---|
APIFOX_TOKEN | 是 | Apifox API 访问令牌 |
APIFOX_PROJECT_ID | 否 | 默认项目 ID(可在工具调用时覆盖) |
5. 项目路径配置
请确保在配置文件中使用绝对路径,例如:
- 正确:
/Users/username/projects/apifox-mcp-server/main.py - 错误:
./main.py或main.py
使用方法
工具说明
import_api
调用工具,将 OpenAPI 3、Swagger 2 格式的 JSON 数据导入到指定的 Apifox 项目中。
参数:
project_id(可选): Apifox 项目 ID,优先使用环境变量APIFOX_PROJECT_IDinput(必需): 要导入的 OpenAPI 3 或 Swagger 2 格式的 JSON 字符串数据(需要转义)headers(可选): HTTP 请求头,Authorization自动从环境变量APIFOX_TOKEN添加timeout(可选): 请求超时时间,默认 30 秒
配置环境变量后的简化使用:
{
"input": "{\"swagger\": \"2.0\", \"info\": {\"title\": \"API文档\", \"version\": \"1.0.0\"}, \"paths\": {...}}"
}
完整参数使用(覆盖环境变量):
{
"project_id": "specific-project-id",
"input": "{\"swagger\": \"2.0\", \"info\": {\"title\": \"API文档\", \"version\": \"1.0.0\"}, \"paths\": {...}}",
"headers": {
"Authorization": "Bearer specific-token"
},
"timeout": 60
}
重要说明:
- 优先使用环境变量配置,简化工具调用
Authorization格式为Bearer {token},从环境变量APIFOX_TOKEN自动添加X-Apifox-Api-Version: 2024-03-28会自动添加,无需手动指定- 支持 OpenAPI 3.0+ 和 Swagger 2.0 格式
API Token 配置
获取 Apifox API Token
- 登录 Apifox
- 点击右上角头像,进入「账号设置」
- 在左侧菜单中选择「API 访问令牌」
- 点击「生成新令牌」按钮
- 输入令牌名称(如:MCP Server)
- 选择合适的过期时间
- 点击「生成」并复制生成的 token
- 在请求头中使用:
Authorization: Bearer {你的token}
获取项目 ID
- 打开 Apifox 并进入目标项目
- 在项目设置页面可以找到项目 ID
- 或者在项目 URL 中获取项目 ID
故障排除
常见问题
-
工具不可用
- 检查 MCP 服务器是否正常启动
- 确认配置文件中的路径是否正确
- 重启 MCP 客户端
-
认证失败 (401)
- 检查 API Token 是否正确
- 确认 Token 是否已过期
- 验证 Token 格式:
Bearer {token}
-
项目不存在 (404)
- 检查项目 ID 是否正确
- 确认 Token 是否有该项目的访问权限
-
JSON 格式错误 (422)
- 验证输入的 JSON 格式是否正确
- 确认是否为有效的 OpenAPI/Swagger 格式
-
项目 ID 未提供
- 检查环境变量
APIFOX_PROJECT_ID是否正确设置 - 或在工具调用时提供
project_id参数
- 检查环境变量
-
认证信息未提供
- 检查环境变量
APIFOX_TOKEN是否正确设置 - 或在工具调用时的
headers中提供Authorization
- 检查环境变量
调试模式
启动服务器时会显示详细日志,包括:
- API 调用信息
- 请求数据长度
- 响应状态码
- 错误详情
项目结构
apifox-mcp-server/
├── main.py # 主服务器代码
├── requirements.txt # 依赖管理
├── README.md # 项目说明
├── start_server.sh # 启动脚本
├── test_example.py # 测试示例
├── config_example.json # Swagger 2.0 格式示例
├── mcp_config_example.json # MCP 客户端配置示例
└── MCP_CONFIG_README.md # MCP 配置详细说明