项目简介

MindBridge X 是一个功能强大的全栈开发工具,它允许您轻松创建和管理模拟 RESTful API。更重要的是,它提供了一个 Model Context Protocol (MCP) 桥接器,能够将这些模拟 API 或您配置的现有 API 转换为可供 LLM 调用的“工具”。此外,它还包含一个命令行代码生成器,利用 OpenAI 模型帮助您快速从自然语言提示生成代码。所有配置都默认存储在 SQLite 数据库中,并通过管理密钥保护管理界面。

主要功能点

  • 可视化 API 端点构建器: 提供直观的界面来定义 HTTP 方法、路径、响应状态、头部信息、延迟和模板化响应体。
  • MCP 服务器管理: 配置 MCP 服务器,为每个工具定义 JSON Schema,并通过统一的 '/mcp/:slug' 入口点对外暴露服务。
  • 外部 API 桥接: 将现有 RESTful API 包装成 MCP 工具,支持路径模板、查询/请求体/头部映射,并处理多种认证方式(API Key、Bearer Token、Basic Auth)。
  • CLI 代码生成器: 通过命令行调用 OpenAI 模型,从自然语言提示快速生成代码片段。
  • 请求日志: 记录每个端点的请求和响应日志,便于调试和监控。
  • 环境/路径参数变量支持: 响应模板可复用环境和路径参数数据,实现动态响应。
  • 持久化存储: 默认使用 SQLite 存储所有配置,也可配置为生产环境的 PostgreSQL。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/macmann/API-MCPGenTool.git
    cd API-MCPGenTool
  2. 配置环境变量: 复制 '.env.example' 文件为 '.env',并根据需要调整其中的值。对于本地开发,默认设置使用 SQLite 数据库。
    cp .env.example .env
  3. 安装依赖:
    npm install
  4. 应用数据库迁移: 这将创建 SQLite 开发数据库的初始模式。
    npx prisma migrate dev
  5. 启动 Next.js 应用:
    npm run dev
    应用将在 'http://localhost:3000' 启动。
  6. 登录管理界面: 访问 'http://localhost:3000/login',使用默认管理员凭据(邮箱:'[email protected]',密码:'password')登录,即可开始创建项目和 MCP 映射。

服务器配置

MCP 客户端需要配置 MCP 服务器的连接信息,以便发现和调用其提供的工具。以下是 MindBridge X MCP 服务器的典型配置信息,您可以在 MCP 客户端中参照配置:

{
  "serverName": "您的MCP服务器名称 (例如:MindBridge X MCP)",
  "command": "npm",
  "args": ["start"],
  "env": {
    "MCP_PUBLIC_URL": "http://localhost:3000",
    "ADMIN_KEY": "您的管理密钥(如果已设置,否则留空或省略)",
    "OPENAI_API_KEY": "您的OpenAI API Key(如果需要代码生成,否则留空或省略)",
    "DATABASE_URL": "file:./prisma/dev.db"
    // 其他任何您在.env中配置的环境变量,如果需要在客户端配置中体现,请在此处添加
  },
  "protocols": [
    {
      "type": "http",
      "url": "http://localhost:3000/mcp/<服务器Slug>",
      "headers": {
        // 如果您的MCP服务器配置了API Key认证,请在此处添加相应的头部信息,例如:
        // "X-API-Key": "您的API密钥值"
      }
    }
  ]
}
  • 'serverName': 您为 MCP 服务器设置的友好名称,例如 "MindBridge X MCP"。
  • 'command': 启动 MindBridge X 服务器的命令,通常是 'npm'。
  • 'args': 启动命令的参数,对于 MindBridge X 来说,通常是 'start'。
  • 'env': 环境变量,用于配置 MCP 服务器运行时所需的环境,例如:
    • 'MCP_PUBLIC_URL': 您的 MindBridge X 服务器的公开访问 URL。如果客户端在同一台机器上,可以是 'http://localhost:3000'。
    • 'ADMIN_KEY': 如果您在 '.env' 中设置了 'ADMIN_KEY' 来保护管理界面,则客户端可能需要此密钥进行某些操作(尽管对于 MCP 客户端通常不需要)。
    • 'OPENAI_API_KEY': 如果您使用了 CLI 代码生成功能,服务器需要此密钥。
    • 'DATABASE_URL': 数据库连接字符串。对于本地开发,默认是 'file:./prisma/dev.db'。
  • 'protocols': 定义 MCP 客户端与服务器通信的协议。
    • 'type: "http"': 表示通过 HTTP 协议进行通信。
    • 'url': MCP 服务器的 JSON-RPC 入口点。格式为 'http://localhost:3000/mcp/<服务器Slug>'。'<服务器Slug>' 是您在 MindBridge X 管理界面中创建 MCP 服务器时指定的唯一标识(例如:'default-server')。如果服务器没有设置自定义 Slug,可以使用 '/mcp' 作为默认入口点 'http://localhost:3000/mcp'。
    • 'headers': 如果 MCP 服务器配置了认证(如 API Key 或 Bearer Token),则客户端需要在此处添加相应的认证头部信息。例如,'"X-API-Key": "your_api_key_value"'。

基本使用方法

  1. 创建模拟端点: 登录管理仪表板 ('http://localhost:3000/login'),您可以定义新的模拟 API 端点,包括 HTTP 方法、路径、响应内容、状态码和延迟。新端点会立即生效(例如,访问 '/api/users')。
  2. 配置 MCP 服务器: 在管理仪表板的 MCP 部分,您可以创建新的 MCP 服务器实例,为其指定名称、Slug 和可选的基础 URL。
  3. 将 API 转换为 MCP 工具:
    • 从现有模拟端点转换: 您可以将 MindBridge X 中已有的模拟 API 端点选择性地转换为 MCP 工具。
    • 从 OpenAPI 规范导入: 您可以上传 OpenAPI (Swagger) 规范文件,MindBridge X 将解析其中的操作并自动生成相应的 MCP 工具。
    • 手动创建工具: 您也可以手动创建 MCP 工具,定义其名称、描述、输入 JSON Schema、HTTP 方法、基础 URL、路径模板以及查询参数、请求体和头部映射。
  4. 调用 MCP 工具: MCP 客户端(如 LLM 应用)将通过 JSON-RPC 请求 ('POST' 到 'http://localhost:3000/mcp/<您的MCP服务器Slug>') 来初始化服务器、列出可用的工具以及调用特定工具。例如,一个 LLM 可能会发出一个 'tools/list' 请求来获取所有可用工具的列表和它们的 'inputSchema',然后根据需要发出 'tools/call' 请求来执行某个工具。
  5. 检查日志: 在管理仪表板中,您可以查看每个模拟端点的请求/响应日志,以便快速调试。
  6. 使用代码生成器 (可选): 在命令行中运行 'npm run generate -- "编写一个将字符串反转的 JavaScript 函数。"' 来从配置的 OpenAI 模型获取代码建议。

信息

分类

开发者工具