MCP server by yaowangmx
🚀 Apifox MCP Toolkit for Claude Code
非官方增强型 Apifox MCP 服务器 - 为 VS Code + Claude Code 提供智能 API 文档管理、高级搜索、批量操作和统计分析
📢 项目说明
本项目是非官方的第三方工具,由社区开发者独立维护:
- ✅ 基于 Apifox 公开 API 和 MCP 协议构建
- ✅ 专为 VS Code + Claude Code 环境优化
- ✅ 提供增强功能和本地化支持
- ⚠️ 与 Apifox 官方团队无关,仅供学习和交流使用
官方 MCP vs 本项目:
- Apifox 官方 MCP - 主要支持 VS Code + Cline、Cursor
- 本项目 - 专为 VS Code + Claude Code 优化,官方 npx 方式在此环境下可能无法正常工作
✨ 核心特性
🎯 八大强大工具
| 工具 | 功能说明 | |-----|---------| | 📋 项目列表 | 列出所有已配置的 Apifox 项目 | | 📊 统计分析 | 完整的 API 统计(接口总数、方法分布、路径分组) | | 🔍 智能搜索 | 支持关键词、方法、路径前缀、标签等多维度搜索 | | 📄 接口详情 | 获取完整的 OpenAPI 规范文档,自动解析 $ref 引用 | | ⚡ 批量操作 | 并发获取多个接口详情(支持可配置并发数) | | 🔄 项目对比 | 对比两个项目的接口差异 | | 📤 文档导出 | 导出 Markdown 格式的 API 文档 | | 🗑️ 缓存管理 | 智能双层缓存,显著提升响应速度 |
🔍 智能输入识别
支持 4 种输入格式,让查询更灵活:
// 方式 1: 直接用接口名称 (最直观)
"获取按分组展示的文档列表"
// 方式 2: Apifox 协同链接 (从 UI 直接复制)
"https://app.apifox.com/link/project/XXXXXXX/apis/api-XXXXXXXXX"
// 方式 3: 关键词搜索 (模糊匹配)
"文档列表"
// 方式 4: 传统 API 路径
"/v1/api/document/list"
🧠 多维度匹配算法
智能评分系统,确保精准匹配:
| 匹配类型 | 匹配方式 | 得分 | |---------|---------|------| | API ID 完全匹配 | operationId、x-apifox-id | 100 | | 接口名称完全匹配 | summary 字段 | 90 | | API ID 部分匹配 | ID 字段包含搜索词 | 80 | | 接口名称部分匹配 | summary 包含搜索词 | 70 | | 路径完全匹配 | 路径完全相同 | 60 | | 描述匹配 | description 包含搜索词 | 50 | | 路径部分匹配 | 路径包含搜索词 | 30 | | 标签匹配 | tags 包含搜索词 | 20 |
⚡ 性能优化
- 并发处理: 支持最多 10 个并发请求
- LRU 缓存: 内存 + 文件双层缓存
- 智能过期: 默认 1 小时自动过期
- 批量加速: 比串行操作快 5-10 倍
性能数据:
- 缓存命中率: ~80%
- 响应时间: <100ms (缓存) / <2s (新请求)
- 内存占用: ~50MB
- CPU 优化: 减少 50-70%
- I/O 优化: 提升 300%
🚀 快速开始
前置要求
- Node.js >= 16.0.0
- VS Code + Claude Code 扩展
- Apifox 账号和访问令牌
安装步骤
1. 克隆仓库
git clone https://github.com/yaowangmx/apifox-claude-mcp-for-vs-code.git
cd apifox-claude-mcp-for-vs-code
2. 获取配置信息
🔑 如何获取配置参数:
- 项目 ID (YOUR_PROJECT_ID):
- 在 Apifox 项目 URL 中查看:
https://app.apifox.com/project/YOUR_PROJECT_ID- 访问令牌 (APIFOX_ACCESS_TOKEN):
- 格式:
APS-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx- 获取方法:参考 Apifox 官方 MCP 文档 的"获取访问令牌"章节
3. 配置 MCP 服务器
在您的 Claude Code 配置文件 (.claude/mcp.json) 中添加:
Windows 用户:
{
"mcpServers": {
"apifox-project1": {
"command": "cmd",
"args": ["/c", "npx", "-y", "apifox-mcp-server@latest", "--project=YOUR_PROJECT_ID"],
"env": {
"APIFOX_ACCESS_TOKEN": "APS-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
},
"apifox-stats": {
"_comment": "增强型统计服务器 | GitHub: https://github.com/yaowangmx/apifox-claude-mcp-for-vs-code",
"command": "node",
"args": ["E:\\apifox-claude-mcp-for-vs-code\\apifox-stats-server.js"]
}
}
}
macOS/Linux 用户:
{
"mcpServers": {
"apifox-project1": {
"command": "npx",
"args": ["-y", "apifox-mcp-server@latest", "--project=YOUR_PROJECT_ID"],
"env": {
"APIFOX_ACCESS_TOKEN": "APS-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
},
"apifox-stats": {
"_comment": "增强型统计服务器 | GitHub: https://github.com/yaowangmx/apifox-claude-mcp-for-vs-code",
"command": "node",
"args": ["/path/to/apifox-claude-mcp-for-vs-code/apifox-stats-server.js"]
}
}
}
💡 配置说明:
apifox-project1: 官方 MCP 服务器,用于访问具体项目的 APIapifox-stats: 本项目的增强型服务器,提供统计、搜索、批量等高级功能- 修改
args中的路径为您的实际克隆位置- 官方 npx 方式在 VS Code 环境下可能无法正常工作,推荐使用
apifox-stats
4. 重启 VS Code
完全重启 VS Code 以加载新的 MCP 服务器配置。
📖 工具列表
| 工具名称 | 功能说明 | 主要参数 |
|---------|---------|---------|
| list_apifox_projects | 列出所有已配置的项目 | 无 |
| get_apifox_stats | 获取项目 API 统计 | project_name, format, use_cache |
| search_apis | 搜索和过滤接口 | keyword, method, path_prefix, tag, limit |
| get_api_detail | 获取接口详细信息 | api_path, method, use_cache |
| batch_get_api_details | 批量获取接口详情 | apis, output_format, concurrency |
| compare_projects | 对比两个项目差异 | project1, project2, show_details |
| export_documentation | 导出 API 文档 | project_name, output_file, api_filter |
| clear_cache | 清除缓存数据 | project_name, confirm |
详细说明请查看 安装配置指南
💡 使用示例
示例 1: 智能搜索接口
获取 "获取按分组展示的文档列表" 的详细信息
获取接口详情: https://app.apifox.com/link/project/1234567/apis/api-12345678
示例 2: 批量获取接口
批量获取以下接口的详细信息:
- /v1/api/user/login
- /v1/api/user/register
- /v1/api/user/profile
输出格式: markdown
并发数: 5
示例 3: 项目对比
对比 apifox-dev 和 apifox-prod 两个项目的接口差异,显示详细信息
示例 4: 高级搜索
在 apifox-project1 中搜索所有 POST 方法,路径前缀为 "/v1/api/document" 的接口
示例 5: 导出文档
将 apifox-project1 的 API 文档导出为 Markdown,只包含 GET 和 POST 方法的接口
🛠️ 高级配置
全局安装(推荐)
将服务器文件放到全局位置,所有项目共享:
Windows:
mkdir C:\Users\$env:USERNAME\.claude\global
copy apifox-stats-server.js C:\Users\$env:USERNAME\.claude\global\
配置使用:
{
"mcpServers": {
"apifox-stats": {
"command": "node",
"args": ["C:\\Users\\YourName\\.claude\\global\\apifox-stats-server.js"]
}
}
}
多项目配置
{
"mcpServers": {
"apifox-dev": {
"command": "cmd",
"args": ["/c", "npx", "-y", "apifox-mcp-server@latest", "--project=DEV_PROJECT_ID"],
"env": {"APIFOX_ACCESS_TOKEN": "TOKEN_1"}
},
"apifox-prod": {
"command": "cmd",
"args": ["/c", "npx", "-y", "apifox-mcp-server@latest", "--project=PROD_PROJECT_ID"],
"env": {"APIFOX_ACCESS_TOKEN": "TOKEN_2"}
},
"apifox-stats": {
"command": "node",
"args": ["path/to/apifox-stats-server.js"]
}
}
}
🔧 故障排除
工具未识别
- 确认
.claude/mcp.json文件存在 - 确认文件路径正确(使用绝对路径)
- 完全重启 VS Code
请求超时
- 默认超时:30 秒
- 自动重试:3 次
- 检查网络连接
- 检查 Apifox 访问令牌是否有效
缓存问题
清除缓存:
清除所有缓存: {"confirm": true}
清除特定项目: {"project_name": "apifox-project1", "confirm": true}
API 匹配失败
如果通过接口名称找不到接口:
- 尝试使用更具体的关键词
- 使用
search_apis工具先搜索 - 直接使用 API 路径
📚 文档
🤝 贡献
欢迎贡献!请查看 贡献指南。
如何贡献
- Fork 本仓库
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
📄 开源协议
本项目基于 MIT License 开源。
🙏 致谢
- Apifox - 提供强大的 API 文档管理平台和 API 接口
- Apifox MCP 官方文档 - 提供灵感和技术参考
- Model Context Protocol - 提供 MCP 规范标准
- Claude Code - 提供 AI 驱动的开发工具
📮 联系方式
⚖️ 免责声明
本项目是基于 Apifox 公开 API 的非官方第三方工具,仅供学习和交流使用:
- ✅ 遵循 MIT 开源协议
- ✅ 使用 Apifox 公开 API
- ⚠️ 与 Apifox 官方无关
- ⚠️ 如有问题请通过 GitHub Issues 联系项目维护者
⭐ Star History
如果这个项目对您有帮助,请给个 Star ⭐
使用 ❤️ 和 Claude Sonnet 4.5 构建 | Version 1.0.0