使用说明

项目简介

CentralMind Gateway (仓库名: gateway) 是一个 API 网关,它可以帮助用户快速地将 PostgreSQL、MySQL、ClickHouse 等多种数据库转换为 AI Agent 可以便捷安全访问的 API 服务。它支持 Model Context Protocol (MCP) 协议,能够作为 MCP 服务器为 LLM 应用提供上下文数据接口,同时也支持 RESTful API,方便传统应用集成。

主要功能点

  • 自动 API 生成: 基于数据库 schema 和数据样本,自动生成 AI 优化的 RESTful API 和 MCP 接口。
  • 多数据库支持: 支持 PostgreSQL, MySQL, ClickHouse, Snowflake, MSSQL, BigQuery, Oracle Database 等主流数据库。
  • 多协议支持: 同时提供 REST API (OpenAPI 3.1) 和 MCP Server (SSE 模式) 两种协议的 API 服务。
  • 安全与合规: 提供 PII 保护插件,支持 API Key 和 OAuth 认证,以及 Row-Level Security (RLS),保障数据安全和访问控制。
  • 高性能: 具备 LRU 缓存和 OpenTelemetry 监控能力,确保 API 的性能和可追踪性。
  • 易于部署: 支持 Docker 容器和 Helm Chart 部署,方便快速集成到现有基础设施。

安装步骤

  1. Docker 部署 (推荐): 确保已安装 Docker 和 Docker Compose。

    docker run -p 9090:9090 ghcr.io/centralmind/gateway:v0.2.0 start \
      --connection-string "YOUR_DATABASE_CONNECTION_STRING"

    将 'YOUR_DATABASE_CONNECTION_STRING' 替换为您的数据库连接字符串,例如: 'postgresql://db-user:db-password@db-host/db-name?sslmode=require'

  2. 本地二进制部署:

    • 安装 Go 环境。
    • 克隆仓库:
      git clone https://github.com/centralmind/gateway.git
      cd gateway
    • 构建二进制文件:
      go build .
    • 运行 Gateway:
      ./gateway start --config gateway.yaml rest
      您需要先配置 'gateway.yaml' 文件,该文件定义了 API 接口和数据库连接等信息。可以通过 'gateway discover' 命令自动生成 'gateway.yaml' 配置文件。

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

以下 JSON 配置信息可用于 MCP 客户端(如 Claude Desktop)连接 CentralMind Gateway MCP 服务器:

{
  "mcpServers": {
    "centralmind-gateway": {  // MCP 服务器名称,可自定义
      "command": "/path/to/gateway", // MCP 服务器启动命令 (根据您的实际安装路径修改)
      "args": [                 // 启动参数
        "start",
        "--config",
        "/path/to/gateway.yaml", // Gateway 配置文件路径 (根据您的实际配置路径修改)
        "mcp-stdio"              // 指定使用 stdio 传输协议
      ]
    }
  }
}

基本使用方法

  1. API Discovery: 使用 'gateway discover' 命令连接数据库并自动生成 API 配置文件 'gateway.yaml'。

    ./gateway discover \
      --ai-provider gemini \
      --config connection.yaml \
      --prompt "Generate for me awesome readonly API"

    'connection.yaml' 文件需要您手动创建,用于配置数据库连接信息。

  2. 启动 MCP 服务器: 使用 'gateway start' 命令启动 MCP 服务。

    ./gateway start --config gateway.yaml mcp-stdio
  3. 集成 AI Agent: 将生成的 MCP 服务器配置信息添加到 AI Agent 客户端,即可通过 MCP 协议访问数据库资源,进行数据查询等操作。 您也可以通过 REST API 和 Swagger UI 访问和测试 API 接口。

信息

分类

网页与API