ApiPost
STDIOApiPost API管理MCP服务器
ApiPost API管理MCP服务器
基于 MCP 协议和 ApiPost 官方 OpenAPI 实现的 API 管理工具。
在开始安装之前,请确保您的系统已安装以下环境:
| 环境 | 版本要求 | 说明 | 
|---|---|---|
| Node.js | >= 18.0.0 | JavaScript 运行环境(MCP SDK 官方最低要求) | 
| npm | >= 8.0.0 | Node.js 包管理器(通常随 Node.js 一起安装) | 
Node.js 安装:
# macOS (使用 Homebrew) sudo brew install node # Ubuntu/Debian sudo apt update && sudo apt install nodejs npm # CentOS/RHEL sudo yum install nodejs npm
验证安装:
node --version # 应显示 v18.0.0 或更高版本 npm --version # 应显示 8.0.0 或更高版本
git clone https://github.com/jlcodes99/apipost-mcp.git cd apipost-mcp npm install && npm run build
在 MCP 配置文件中添加:
{ "mcpServers": { "apipost": { "command": "node", "args": ["/absolute/path/to/apipost-mcp/dist/index.js"], "env": { "APIPOST_TOKEN": "your_access_token_here", "APIPOST_HOST": "https://open.apipost.net", "APIPOST_SECURITY_MODE": "limited", "APIPOST_DEFAULT_TEAM_NAME": "你的团队名称", "APIPOST_DEFAULT_PROJECT_NAME": "你的项目名称" } } } }
| 变量名 | 是否必需 | 说明 | 
|---|---|---|
APIPOST_TOKEN | 是 | API访问令牌 | 
APIPOST_SECURITY_MODE | 否 | 安全模式:readonly, limited, full | 
APIPOST_DEFAULT_TEAM_NAME | 否 | 默认团队名称 | 
APIPOST_DEFAULT_PROJECT_NAME | 否 | 默认项目名称 | 
| 模式 | 权限 | 说明 | 
|---|---|---|
readonly | 只读 | 仅允许查看接口列表和详情,禁止创建、修改、删除 | 
limited | 读写 | 允许查看、创建、修改接口,禁止删除操作 | 
full | 完全访问 | 允许所有操作,包括查看、创建、修改、删除 | 
| 工具 | 功能 | 主要参数 | 
|---|---|---|
apipost_test_connection | 连接测试 | random_string | 
apipost_workspace | 工作空间管理 | action (必需) | 
apipost_create_folder | 创建目录 | name, parent_id | 
apipost_smart_create | 创建接口 | method, url, name | 
apipost_list | 强化列表搜索 | search, parent_id, target_type, show_structure, recursive, group_by_folder | 
apipost_detail | 查看详情 | target_id | 
apipost_update | 修改接口 | target_id, 其他可选 | 
apipost_delete | 删除接口 | api_ids | 
快速诊断工具,适合首次使用或故障排查:
统一的工作空间管理工具,支持以下操作:
| Action | 功能 | 主要参数 | 说明 | 
|---|---|---|---|
current | 查看当前工作空间 | show_all | 显示当前团队、项目信息,可选显示所有可用选项 | 
list_teams | 列出团队 | show_details | 显示所有可用团队,标识当前团队 | 
list_projects | 列出项目 | team_id, show_details | 显示指定团队的项目列表 | 
switch | 切换工作空间 | team_id, project_id 或 team_name, project_name | 切换到指定的团队和项目 | 
使用示例:
# 查看当前工作空间
apipost_workspace action: "current"
# 列出所有团队
apipost_workspace action: "list_teams" show_details: true
# 列出项目
apipost_workspace action: "list_projects" team_id: "your_team_id"
# 切换工作空间(支持按名称或ID)
apipost_workspace action: "switch" team_name: "团队名" project_name: "项目名"
API文档目录创建工具,支持在指定父目录下创建新的文件夹:
| 参数 | 类型 | 必需 | 说明 | 
|---|---|---|---|
name | string | 是 | 目录名称 | 
parent_id | string | 否 | 父目录ID,使用"0"表示根目录,默认为"0" | 
description | string | 否 | 目录描述(可选) | 
使用示例:
# 在根目录创建目录
apipost_create_folder name: "用户管理" description: "用户相关接口"
# 在指定目录下创建子目录
apipost_create_folder name: "认证接口" parent_id: "folder_123" description: "用户认证相关接口"
| 参数 | 类型 | 说明 | 
|---|---|---|
search | string | 搜索关键词(接口名称、URL、方法、ID、描述) | 
parent_id | string | 父目录ID,精确查找子项目。"0"为根目录 | 
target_type | string | 类型筛选:api(仅接口)、folder(仅目录)、all(全部) | 
show_structure | boolean | 显示树形结构,默认false为列表模式 | 
show_path | boolean | 显示完整路径,默认false | 
recursive | boolean | 递归搜索子目录,默认false | 
depth | number | 深度限制(配合recursive),默认无限制 | 
group_by_folder | boolean | 按目录分组显示,默认false | 
limit | number | 显示数量限制(默认50,最大200) | 
show_all | boolean | 显示全部(忽略limit限制) | 
API接口文档生成器,支持通过分离参数创建完整的API文档,包括请求参数、响应格式、认证方式等:
| 参数 | 类型 | 必需 | 说明 | 
|---|---|---|---|
method | string | 是 | HTTP方法:GET, POST, PUT, DELETE | 
url | string | 是 | 接口URL路径 | 
name | string | 是 | 接口名称 | 
parent_id | string | 否 | 父目录ID,使用"0"表示根目录,默认为"0" | 
description | string | 否 | 接口详细描述 | 
headers | string | 否 | Headers参数JSON数组字符串 | 
query | string | 否 | Query参数JSON数组字符串 | 
body | string | 否 | Body参数JSON数组字符串 | 
cookies | string | 否 | Cookies参数JSON数组字符串 | 
auth | string | 否 | 认证配置JSON字符串 | 
responses | string | 否 | 响应示例JSON数组字符串 | 
使用示例:
# 在根目录创建接口
apipost_smart_create method: "POST" url: "/api/users" name: "创建用户"
# 在指定目录下创建接口
apipost_smart_create method: "GET" url: "/api/users/{id}" name: "获取用户详情" parent_id: "folder_123"
查看 CHANGELOG.md 了解版本更新信息。
💡 提示:这是一个专注于API接口管理的MCP工具,简化了接口创建和管理流程,提高团队协作效率。
⭐ 如果这个项目对你有帮助,请给我们一个星标!