Skip to main content
Glama
FocusSearch

focus_mcp_sql

by FocusSearch

FOCUS DATA MCP 服务器 [中文]

模型上下文协议 (MCP) 服务器使人工智能助手能够将自然语言转换为 SQL 语句。

已经有这么多 Text-to-SQL 框架了。为什么我们还需要另一个?

简单来说,focus_mcp_sql采用了两步SQL生成方案,可以控制LLM的幻象,真正建立非技术用户对生成的SQL结果的信任。

以下是 focus_mcp_sql 与其他的比较表:

对比分析表

以下是 focus_mcp_sql 与其他基于 LLM 的框架的并排比较:

特征

传统法学硕士框架

focus_mcp_sql

生成过程

黑盒,直接生成 SQL

透明、两步(关键字+SQL)

幻觉风险

高,取决于模型质量

低,可控(关键字验证)

速度

速度慢,依赖于大型模型推理

快速、确定性的关键字到 SQL

成本

高,需要高级模型

低,减少对大型模型的依赖

非技术用户友好性

结果低且难以验证

高度、简单的关键字检查

特征

-初始化模型-将自然语言转换为SQL语句

Related MCP server: database-explorer-mcp

先决条件

  • jdk 23 或更高版本。下载jdk

  • gradle 8.12 或更高版本。下载gradle

  • 注册Datafocus以获取 bearer token:

    1. 在Datafocus注册一个账户

    2. 创建应用程序

    3. 进入应用程序

    4. 管理 -> 接口认证 -> Bearer Token -> 新建 Bearer Token持有者令牌

安装

  1. 克隆此存储库:

git clone https://github.com/FocusSearch/focus_mcp_sql.git
cd focus_mcp_sql
  1. 构建服务器:

gradle clean
gradle bootJar

The jar path: build/libs/focus_mcp_sql.jar

MCP 配置

将服务器添加到您的 MCP 设置文件:

{
  "mcpServers": {
    "focus_mcp_data": {
      "command": "java",
      "args": [
        "-jar",
        "path/to/focus_mcp_sql/focus_mcp_sql.jar"
      ],
      "autoApprove": [
        "gptText2sqlStart",
        "gptText2sqlChat"
      ]
    }
  }
}

可用工具

1. gptText2sqlStart

初始模型。

参数:

  • model (必需):表模型

  • bearer (必需):持有者令牌

  • language (可选):语言['english','chinese']

例子:

{
  "model": {
    "tables": [
      {
        "columns": [
          {
            "columnDisplayName": "name",
            "dataType": "string",
            "aggregation": "",
            "columnName": "name"
          },
          {
            "columnDisplayName": "address",
            "dataType": "string",
            "aggregation": "",
            "columnName": "address"
          },
          {
            "columnDisplayName": "age",
            "dataType": "int",
            "aggregation": "SUM",
            "columnName": "age"
          },
          {
            "columnDisplayName": "date",
            "dataType": "timestamp",
            "aggregation": "",
            "columnName": "date"
          }
        ],
        "tableDisplayName": "test",
        "tableName": "test"
      }
    ],
    "relations": [

    ],
    "type": "mysql",
    "version": "8.0"
  },
  "bearer": "ZTllYzAzZjM2YzA3NDA0ZGE3ZjguNDJhNDjNGU4NzkyYjY1OTY0YzUxYWU5NmU="
}

型号参数说明:

名称

位置

类型

必选

说明

模型

身体

目的

是

没有任何

“ 类型

身体

细绳

是

数据库类型

“ 版本

身体

细绳

是

数据库版本

» 表格

身体

[目的]

是

结构列表

»» 表显示名称

身体

细绳

否

表顯示名

»» 表名

身体

细绳

否

表原始名

»» 列

身体

[目的]

否

列表列表

»»» 列显示名称

身体

细绳

是

列顯示名

»»» 列名称

身体

细绳

是

列文献

»»» 数据类型

身体

细绳

是

列抒

»»» 聚合

身体

细绳

是

列聚合方式

» 关系

身体

[目的]

是

关联关系列表

““ 状况

身体

[目的]

否

关联条件

»»» 目标列名称

身体

细绳

否

维度表关联列原始名

»»» srcColName

身体

细绳

否

事实表关联表

»» 维度表

身体

细绳

否

维度表原始名称

»» 事实表

身体

细绳

否

事实表

»» 连接类型

身体

细绳

否

关联类型

2. gptText2sqlChat

将自然语言转换为 SQL。

参数:

  • chatId (必填):聊天ID

  • input (必需):自然语言

  • bearer (必需):持有者令牌

例子:

{
  "chatId": "03975af5de4b4562938a985403f206d4",
  "input": "what is the max age",
  "bearer": "ZTllYzAzZjM2YzA3NDA0ZGE3ZjguNDJhNDjNGU4NzkyYjY1OTY0YzUxYWU5NmU="
}

响应格式

所有工具都以以下格式返回响应:

{
  "errCode": 0,
  "exception": "",
  "msgParams": null,
  "promptMsg": null,
  "success": true,
  "data": {
  }
}

Visual Studio Code Cline 示例

  1. vsCode 安装 cline 插件

  2. mcp 服务器配置配置 mcp 服务器

  3. 使用

    1. 初始模型初始模型1初始模型2

    2. 转移:最大年龄是多少聊天

接触:

https://discord.gg/mFa3yeq9数据焦点

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to interact with a MySQL database using natural language, automating SQL tasks like querying, inserting, updating, and deleting data.
    1
    -
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to connect to and interact with PostgreSQL, MySQL, SQLite, and MongoDB databases through natural language, supporting schema exploration, query execution, data export, and more.
    13
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to directly query MySQL databases, list tables, and view table structures through natural language.
    18 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language querying of SQL databases using AI, supporting multiple database types and automatic schema discovery.
    1
    MIT