CentralMind Gateway 使用说明

项目简介

CentralMind Gateway 是一个创新的数据网关,旨在为 AI 代理和 LLM 驱动的应用提供快速、安全的数据访问。它能够基于数据库结构自动生成优化的 API,并原生支持 Model Context Protocol (MCP),使得 LLM 客户端可以方便地集成和利用结构化数据。

主要功能点

  • 自动 API 生成: 基于 LLM 和数据库 schema 自动创建优化的 RESTful API 和 MCP Server。
  • 多数据库支持: 支持 PostgreSQL, MySQL, ClickHouse, Snowflake 等主流结构化数据库。
  • 多协议支持: 同时提供 REST API 和 MCP Server,并支持 SSE 模式。
  • API 文档: 自动生成 Swagger 文档和 OpenAPI 3.1.0 规范。
  • 安全特性: 内置 PII 保护、行级安全 (RLS)、多种身份验证方式 (API Keys, OAuth)。
  • 高性能优化: 支持缓存策略 (Time-based, LRU) 和 OpenTelemetry 监控。
  • LLM 集成: 实现了 Model Context Protocol (MCP),方便与 LangChain, ChatGPT, Claude 等 LLM 应用集成。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/centralmind/gateway.git
    cd gateway
  2. 安装依赖: 确保已安装 Go 环境,然后执行:

    go mod download
  3. 构建项目:

    go build .

    构建成功后,会在当前目录下生成 'gateway' 可执行文件。

服务器配置 (MCP 客户端配置)

MCP 客户端需要配置 MCP 服务器的启动命令及其参数,以便建立连接。以下是 'gateway' MCP 服务器的典型配置信息 (JSON 格式):

{
  "mcpServers": {
    "my_gateway_server": {  // 服务器名称,可以自定义
      "command": "/path/to/gateway", //  gateway 可执行文件的路径,请替换为实际路径
      "args": [
        "start",                     //  启动命令
        "--config",                  //  指定配置文件参数
        "/path/to/gateway.yaml",      // gateway 配置文件 gateway.yaml 的路径,请替换为实际路径
        "mcp-stdio"                  //  指定使用 MCP-stdio 协议启动 MCP 服务器
      ]
    }
  }
}

参数注释:

  • 'my_gateway_server': MCP 服务器的自定义名称,在客户端配置中引用。
  • 'command': 'gateway' 可执行文件的绝对路径。需要用户根据实际情况修改为 'gateway' 可执行文件所在路径。
  • 'args': 启动参数列表,包括:
    • 'start': 启动 gateway 服务器的命令。
    • '--config': 指定服务器配置文件的参数。
    • '/path/to/gateway.yaml': 'gateway.yaml' 配置文件的绝对路径。需要用户根据实际情况修改为 'gateway.yaml' 文件所在路径。
    • 'mcp-stdio': 指定使用标准输入输出流 (stdio) 作为 MCP 服务器的传输协议,适用于 Claude 等客户端集成。

注意:

  • '/path/to/gateway' 和 '/path/to/gateway.yaml' 占位符需要替换为 Gateway 二进制文件和配置文件的实际路径。
  • 如果需要使用 WebSocket 或 SSE 等其他 MCP 传输协议,请参考仓库文档修改 'args' 参数。

基本使用方法

  1. 生成 API 配置: 根据仓库文档,使用 'gateway discover' 命令连接数据库并生成 'gateway.yaml' 配置文件。

  2. 启动 MCP 服务器: 使用上述配置中的 'command' 和 'args' 启动 Gateway MCP 服务器。例如,在终端执行:

    ./gateway start --config gateway.yaml mcp-stdio
  3. 配置 LLM 客户端: 在支持 MCP 协议的 LLM 客户端 (如 Claude) 中,配置上述 JSON 格式的 'mcpServers' 信息。客户端将根据配置连接到 Gateway MCP 服务器。

  4. 通过 LLM 客户端交互: 使用 LLM 客户端向 MCP 服务器发送请求,例如查询数据库资源、调用工具或使用 Prompt 模板,具体操作请参考 LLM 客户端和 Gateway 的文档。

请务必参考 CentralMind Gateway 官方文档 获取更详细的配置和使用指南。

信息

分类

AI与计算