使用说明

项目简介

Apifox MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在将 Apifox 项目中定义的接口文档以标准化的方式提供给支持 MCP 协议的 AI 编程工具,例如 Cursor 和 Cline。通过此服务器,AI 工具可以理解您的 API 文档结构和内容,从而辅助开发者进行代码生成、修改、文档搜索等任务,提升开发效率。

主要功能点

  • 资源 (Resources) 访问: 将 Apifox 项目的接口文档作为资源托管,并允许 AI 客户端通过 MCP 协议访问这些接口文档数据。
  • 数据访问能力: AI 客户端可以读取项目内的所有接口文档数据,用于代码生成、修改、搜索等操作。
  • 支持多种数据源: 除了 Apifox 项目,还支持直接读取 Swagger/OAS 文件作为数据源。
  • 本地缓存: 接口文档数据默认缓存到本地,提升 AI 客户端访问速度。

安装步骤

  1. 安装 Node.js: 确保已安装 Node.js (>= 18)。
  2. 获取 Apifox Access Token 和项目 ID:
    • 在 Apifox 账号设置中创建 API 访问令牌。
    • 在 Apifox 项目设置中复制项目 ID。
  3. 配置 IDE: 将以下 JSON 配置添加到 IDE 的 MCP 配置文件中,并替换 '<access-token>' 和 '<project-id>' 为您个人的 Apifox API 访问令牌和项目 ID。

服务器配置

以下 JSON 配置可以添加到支持 MCP 的 IDE 的配置文件中 (例如 Cursor 的 '~/.cursor/mcp.json' 或项目内的 '.cursor/mcp.json',Cline 通过面板配置)。

{
  "mcpServers": {
    "API 文档": {
      "command": "npx",
      "args": [
        "-y",
        "apifox-mcp-server@latest",
        "--project-id=<project-id>"
      ],
      "env": {
        "APIFOX_ACCESS_TOKEN": "<access-token>"
      }
    }
  }
}

参数说明:

  • '"API 文档"': MCP Server 的名称,建议包含 "API 文档" 字眼,以便 AI 助手识别用途。
  • '"command": "npx"': 指定启动命令为 'npx',用于执行 npm 包。
  • '"args": [...]': 启动参数列表:
    • '"-y"': 'npx' 参数,自动确认安装 'apifox-mcp-server' 包。
    • '"apifox-mcp-server@latest"': 指定要运行的 npm 包为 'apifox-mcp-server' 的最新版本。
    • '"--project-id=<project-id>"': 指定 Apifox 项目 ID,请替换为您的项目 ID
  • '"env": { ... }': 环境变量配置:
    • '"APIFOX_ACCESS_TOKEN": "<access-token>"': Apifox API 访问令牌,请替换为您的 Access Token

可选配置参数:

  • '"--apifox-api-base-url=<私有化部署服务器的 API 地址>': 用于私有化部署版本的 Apifox,请替换为您的服务器 API 地址。
  • '"--oas=<oas-url-or-path>"': 用于直接读取 Swagger/OAS 文件,替换 '--project-id' 参数,并指定 OAS 文件 URL 或本地路径。

基本使用方法

  1. 确保 Apifox MCP Server 成功配置并运行。
  2. 在 Cursor 或 Cline 等 IDE 工具中,告诉 AI 助手您想要如何利用 API 文档,例如:
    • “通过 MCP 获取 API 文档,然后生成 User 及其相关模型的定义代码”
    • “根据 API 文档,在 Product DTO 里添加 API 文档新增的几个字段”
    • “根据 API 文档给 Order 类的每个字段都加上注释”
    • “根据 API 文档,生成接口 /orders 相关的所有 MVC 代码”
  3. 如果 Apifox 文档更新,告知 AI 助手刷新接口文档数据,以确保 AI 使用的是最新数据。

信息

分类

开发者工具