1. 模型概述:它不是“模型”,而是懂SQL的AI翻译官
很多开发者第一次看到“XiYan MCP Server”会误以为它是一个大模型。其实不是。
它是一个MCP协议服务器,你可以把它理解为AI与数据库之间的“万能翻译插座” 。它的核心使命是:听懂人话、自动写SQL、去数据库查出结果、再把结果喂给AI。
1.1 能力评估:它到底能干什么?
一句话总结:给AI一双能查数据库的眼睛。
✅ 已完成的任务能力:
-
自然语言 → SQL 自动转换:你问“去年卖得最好的3款产品”,它自动生成SQL并执行返回结果 。
-
数据库表结构感知:自动列出当前数据库有哪些表、表里有哪些字段 。
-
样本数据读取:可读取指定表的预览数据(前N行),帮助AI理解数据格式 。
✅ 接口与参数:
-
Tools(工具):目前核心公开工具为
get_data—— 唯一面向用户的自然语言查询接口 。 -
Resources(资源):
-
{dialect}://:列出当前数据库名 -
{dialect}://{table_name}:获取该表的样本数据
-
-
传输协议支持:STDIO(标准输入输出) + SSE(服务端推送)双协议栈 。
-
配置参数:约15+个可调参数(模型名称、API密钥、Base URL、数据库连接、传输协议、端口、日志级别等)。
⭐ 隐含能力(重要):
它支持挂载通用大模型(GPT、Qwen-Max)作为SQL生成引擎,也支持专用SOTA模型(XiYanSQL-QwenCoder-32B),甚至支持纯本地3B小模型离线运行 。
1.2 技术特点:为什么它比直接连MySQL的MCP更强?
| 特点 | 普通数据库MCP | XiYan MCP Server |
|---|---|---|
| SQL生成方式 | 靠AI自身推理 | 由专用SQL引擎负责,准确率更高 |
| 支持方言 | 有限 | MySQL + PostgreSQL,更多适配中 |
| 部署模式 | 单一 | 云端API(推荐) + 本地模型(高安全) 双模 |
| 模型可选 | 固定 | 可换GPT、通义、专用32B、本地3B |
| 协议 | 多为stdio | stdio + SSE,支持远程服务化 |
杀手锏:
根据 MCPBench 基准测试,XiYan MCP Server 在Text-to-SQL任务上领先原生MySQL/PostgreSQL MCP达2~22个百分点 。这意味着:同样的问题,它答对的概率明显更高。
1.3 应用场景:谁需要它?
-
企业内部BI分析师:不想写SQL,直接用中文问销售数据、库存情况。
-
SaaS产品经理:快速验证数据假设,不用追着开发要报表。
-
AI应用开发者:给自己的AI助手加上“查数据库”技能(如百度“心响App”正是同类思路)。
-
高安全需求环境:数据不出内网,用本地3B模型跑SQL转换 。
2. 安装与部署方式(手把手版,包教包会)
⚠️ 重要区别:
这个项目不是桌面软件,它没有图标可双击,它是一条供Claude、Cline等AI客户端调用的“命令”。
“安装成功”的标志是:AI客户端能识别它并列出工具。
2.1 准备工作(所有系统通用)
-
Python 3.11+ 必须(低于3.11会报错)。
-
MySQL/PostgreSQL 数据库:可以是本地,也可以是云数据库(如RDS)。
-
API Key(云端模式)或本地模型(本地模式)。
2.2 模式选择决策树(先想清楚)
你要用哪个模式?
├─ 云端SOTA模式(推荐,速度快,需联网)
│ ├─ 用ModelScope API → 去官网申请Key
│ └─ 用DashScope试用版 → 发邮件获取临时Key(200次/月)
└─ 本地模式(高安全,Mac约12秒/次)
└─ 需16GB+内存,下载3B模型(6GB)
2.3 Windows 11 完整配置流程
🟦 场景A:云端模式(最快上手)
Step 1:安装Python库
pip install xiyan-mcp-server
Step 2:获取配置文件模板
# 随便跑一下,让它生成yml配置提示 env YML=config.yml python -m xiyan_mcp_server
此时会提示“找不到文件”,没关系,我们手动建。
Step 3:创建 config.yml
用记事本新建文件,粘贴以下内容(以MySQL + ModelScope为例):
model: name: "XGenerationLab/XiYanSQL-QwenCoder-32B-2412" key: "你的ModelScope API Key" # 去ModelScope官网申请 url: "https://api-inference.modelscope.cn/v1/" database: host: "127.0.0.1" port: 3306 user: "root" password: "你的数据库密码" database: "你的库名"
Step 4:测试运行(验证配置是否正确)
set YML=C:\你的路径\config.yml python -m xiyan_mcp_server
如果没有报错,说明配置成功。按Ctrl+C停止。
🟦 场景B:本地模式(纯离线,高安全)
Step 1:安装额外依赖
pip install flask modelscope torch==2.2.2 accelerate>=0.26.0 numpy==2.2.3
Step 2:下载本地模型(约6GB)
modelscope download --model XGenerationLab/XiYanSQL-QwenCoder-3B-2502
⚠️ 常见问题:下载慢或失败
✅ 解决方案:使用国内镜像或使用迅雷下载后手动放入缓存目录。
Step 3:启动本地推理服务
# 下载项目源码中的本地服务脚本 wget https://raw.githubusercontent.com/XGenerationLab/xiyan_mcp_server/main/src/xiyan_mcp_server/local_xiyan_server.py python local_xiyan_server.py
看到 * Running on http://127.0.0.1:5090 表示成功。
Step 4:配置本地模式config.yml
model: name: "xiyansql-qwencoder-3b" key: "" # 本地模式无需key url: "http://127.0.0.1:5090" database: ... # 同上数据库配置
2.4 macOS(Apple Silicon)完整配置流程
基本步骤与Windows相同,差异点如下:
✅ 安装Python推荐用Homebrew:
brew install python@3.11
✅ 配置文件路径:
建议放在 ~/config/xiyan/config.yml
✅ 环境变量设置(调试用):
export YML=~/config/xiyan/config.yml python -m xiyan_mcp_server
✅ 本地模式注意事项:
Mac跑3B模型约12秒/查询,M1/M2芯片不需要CUDA,torch会自动使用Metal加速。
2.5 Linux(Ubuntu 22.04+)完整配置流程
Step 1:确保Python3.11
sudo add-apt-repository ppa:deadsnakes/ppa sudo apt update sudo apt install python3.11 python3.11-venv python3.11-dev
Step 2:虚拟环境(强烈推荐)
python3.11 -m venv xiyan_env source xiyan_env/bin/activate pip install xiyan-mcp-server
Step 3:PostgreSQL特殊处理
如果用PostgreSQL,需单独装驱动:
pip install psycopg2-binary # 比psycopg2更容易编译通过
并在config.yml中指定:
database: dialect: "postgresql" host: "localhost" port: 5432 ...
3. 配套客户端:让AI用上这把“枪”
XiYan MCP Server本身没有界面,它需要被MCP客户端调用。
| 客户端名称 | 是否付费 | 配置难度 | 推荐指数 | 配置方式 |
|---|---|---|---|---|
| Claude Desktop | 付费订阅 | ⭐⭐ | ⭐⭐⭐⭐⭐ | 修改 claude_desktop_config.json |
| Cline(VSCode插件) | 免费 | ⭐⭐ | ⭐⭐⭐⭐ | 同上(兼容Claude格式) |
| Goose | 免费 | ⭐⭐ | ⭐⭐⭐ | 命令行添加 |
| Cursor | 付费/免费 | ⭐ | ⭐⭐⭐ | IDE内置MCP配置 |
| Witsy | 免费 | ⭐ | ⭐⭐ | 可视化添加环境变量 |
📥 下载地址:
-
Claude Desktop:https://claude.ai/download
-
VSCode + Cline:在VSCode插件市场搜索“Cline”
-
Cursor:https://cursor.sh
🟪 Windows用户配置Claude Desktop
文件路径:
%APPDATA%\Claude\claude_desktop_config.json
示例配置:
{ "mcpServers": { "xiyan-sql": { "command": "C:\\Users\\你的用户名\\AppData\\Local\\Programs\\Python\\Python311\\python.exe", "args": ["-m", "xiyan_mcp_server"], "env": { "YML": "C:\\Users\\你的用户名\\config\\xiyan\\config.yml" } } } }
⚠️ 黄金法则:command 一定要写Python的完整绝对路径!只写python Claude经常找不到 。
用 where python 查看完整路径。
🍏 macOS用户配置Claude Desktop
文件路径:
~/Library/Application Support/Claude/claude_desktop_config.json
示例配置:
{ "mcpServers": { "xiyan-sql": { "command": "/opt/homebrew/bin/python3.11", "args": ["-m", "xiyan_mcp_server"], "env": { "YML": "/Users/你的用户名/config/xiyan/config.yml" } } } }
which python3.11 帮你找到路径。
4. 案例讲解:电商老板的“人话查数”神器
🎯 场景设定
你是一个独立站卖家,数据库里有:
-
orders订单表 -
products商品表 -
customers客户表
你不会写SQL,但老板每天问你要数据。现在你用 Claude + XiYan MCP Server,让AI替你打工。
🔧 前置准备
-
按照第3章配置好Claude Desktop。
-
确保
config.yml里连对了你的电商数据库。 -
重启Claude,看到🔨工具图标亮起,出现
get_data。
💬 实战对话实录
你:
“帮我看看最近7天下单超过3次的客户有哪些?”
Claude内部动作:
-
识别意图 → 调用
get_data -
参数:
"最近7天下单超过3次的客户" -
XiYan Server → 生成SQL → 查询数据库 → 返回JSON
-
Claude 将结果整理成表格给你看
返回结果:
| customer_id | 姓名 | 下单次数 |
|---|---|---|
| 10086 | 张三 | 4 |
| 10010 | 李四 | 3 |
你:
“这些客户最喜欢买什么品类?”
Claude:
再次调用
get_data,关联订单+商品表,返回品类分布。
全程你没写过一行SQL,甚至不需要知道数据库字段名。
📎 附:可运行的“最小验证”代码
这不是传统意义上的Python调用代码,而是MCP协议层的调试指令。
如果你想不启动Claude,纯命令行测试XiYan Server是否正常:
1. 启动SSE模式服务器
YML=./config.yml python -m xiyan_mcp_server
你会看到 SSE server listening on http://localhost:8000/sse 。
2. 用curl模拟MCP客户端请求(列出工具)
curl -X POST http://localhost:8000/message \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","method":"tools/list","id":1}'
3. 预期返回(证明安装成功)
{ "jsonrpc": "2.0", "result": { "tools": [ { "name": "get_data", "description": "使用自然语言从数据库获取数据...", "inputSchema": {...} } ] }, "id": 1 }
看到这个,你就完全掌握了该项目的主动权。
5. 使用成本与商业价值评估
💰 使用成本
| 成本项 | 云端模式 | 本地模式 |
|---|---|---|
| 硬件 | 无,只需能跑Python | 16GB+ RAM,6GB磁盘 |
| API费用 | ModelScope:按量计费(便宜) DashScope试用:免费200次/月 GPT-3.5:按OpenAI标准 |
0元 |
| 运维成本 | 低(无需维护模型) | 中(需监控本地服务) |
| 学习成本 | 低 | 低 |
关于收费的明确事实 :
DashScope试用Key有效期1个月或200次查询,以先到者为准。商用需联系官方获取商用授权。
结论:个人开发者/小团队完全可以0元启动,先用试用Key或ModelScope按量付费。
📈 商业价值与使用收益
1. 节省开发时间
一个普通的管理后台,光“导出报表”功能,后端+前端联调至少2人天。用XiYan MCP,0行后端代码。
2. 降低数据分析门槛
以前只有会SQL的人能查数,现在运营、产品、销售都能自助查询。决策周期从“等排期”变成“问一句”。
3. 提高AI应用的专业度
如果你的AI Agent只能聊聊天,它值10分;如果它能执行真实的业务查询,它值100分。
4. 安全合规价值
纯本地模式,数据零外流。对于金融、医疗、政务客户,这是唯一可过审的方案 。
收益公式(估算):
一个中小团队,每月节省5张报表的开发需求 ≈ 节约2个后端人日 ≈ 直接节省2000~4000元人力成本。
而工具本身几乎零边际成本。
写在最后
XiYan MCP Server 不是一个“花架子”项目。它背靠SOTA论文,代码质量扎实,文档清晰(甚至包含了Key过期时间、Mac本地延迟、路径坑点这些真实细节)。
它最大的亮点不是“能转SQL”,而是“让不懂技术的人也能安全、准确地查数据库”。
如果你正在为你的AI应用寻找数据库接入层,或者你只是厌倦了一遍遍给业务部门写SQL——今晚就可以装上试试。

关注 “悠AI” 更多干货技巧行业动态