focus_mcp_sql

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides a Discord server link for contact and support

  • Supports converting natural language to SQL for MySQL databases

  • Provides a WeChat QR code for contact and support

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语句

先决条件

  • 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 服务器配置
  3. 使用
    1. 初始模型
    2. 转移:最大年龄是多少

接触:

https://discord.gg/mFa3yeq9

-
security - not tested
A
license - permissive license
-
quality - not tested

基于 FocusSearch 关键字解析的 NL2SQL 插件,提供更高的准确性、更快的速度和更高的可靠性!

  1. There are already so many Text-to-SQL frameworks. Why do we still need another one?
    1. Comparison Analysis Table
    2. Features
    3. Prerequisites
    4. Installation
    5. MCP Configuration
    6. Available Tools
    7. Response Format
    8. Visual Studio Code Cline Sample
    9. Contact:
ID: xnaaueijnh