Get the FREE Ultimate OpenClaw Setup Guide →

xiyan_mcp_server

基于阿里 XiYanSQL 框架改造的 Model Context Protocol (MCP) 服务器,支持通过自然语言查询时序数据库和关系型数据库。

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio 4ikz-xiyan_mcp_server python -m xiyan_mcp_server

How to use

XiYan MCP Server 基于 XiYanSQL 框架,允许通过自然语言查询并交互式地访问多种数据库包括 GreptimeDB、CockroachDB、MySQL、PostgreSQL、SQLite 等。服务器通过一个嵌入式模型/向量索引与数据库驱动相结合的架构,首先将用户查询转化为对数据库的语义检索,然后通过嵌入模型评估相关的表与列信息,最终返回结构化结果,支持多种输出格式(Markdown、JSON、CSV)。核心工具包括 get_data,这个工具可以根据自然语言查询生成并执行相应的数据库操作,返回可读的结果集。用户还可以通过 API 初始化会话、发送查询请求以及选择输出格式,系统还具备 SQL 自动修复和全局连接池等性能优化特性。若需要进行 Schema 检索与知识库管理,系统可利用 Redis 存储的语义索引来提升查询相关性。使用时,请确保配置好嵌入模型(云端 API 或本地 vLLM)以及目标数据库连接信息,服务器会按配置从 Redis/向量索引到数据库的完整流程执行查询。

How to install

安装步骤(以源码方式为例,适用于大多数 Ubuntu/Unix 环境):

Prerequisites:

  • Python 3.13+ 安装与配置
  • Redis(可选,用于 Schema 语义检索)
  • Git

从源码安装:

# 克隆仓库
git clone https://github.com/4iKZ/xiyan_mcp_server.git
cd xiyan_mcp_server

# 安装依赖(开发/本地开发模式)
pip install -e .

从 Release 安装(示例版本为 v0.1.5,请替换为实际版本):

# 下载特定版本源码包
wget https://github.com/4iKZ/xiyan_mcp_server/archive/refs/tags/v0.1.5.tar.gz
tar -xzf v0.1.5.tar.gz
cd xiyan_mcp_server-0.1.5

# 安装依赖
pip install -e .

运行服务(直接启动):

# 标准 I/O 模式
python -m xiyan_mcp_server

# HTTP 模式(若配置了 streamable-http 选项)
python -m xiyan_mcp_server streamable-http --host 0.0.0.0 --port 8000

# SSE 模式
python -m xiyan_mcp_server sse --host 0.0.0.0 --port 8000

可选的 Systemd 服务或 Docker 部署,请参考 README 的对应章节。

Additional notes

常见注意事项或提示:

  • 配置文件位于 src/xiyan_mcp_server/config.yml,确保数据库连接信息、嵌入模型设置与 schema 索引目录正确无误。对于 Redis 语义检索,请确保 Redis 服务可访问且 json/ 目录中存在有效的 Schema 文档。
  • Embedding 配置支持两种模式:云端 ModelScope API(推荐高质量远程模型)或本地 vLLM(需要自行部署嵌入模型)。切换嵌入模型后需要重新构建/重建 Redis 索引:python scripts/index_knowledge.py --config src/xiyan_mcp_server/config.yml --rebuild
  • 启动时若使用 PostgreSQL/CockroachDB/GreptimeDB 等多种数据库,请确保数据库网络可访问、权限正确,且数据库方言配置正确(如 greptimedb、cockroach 等)。
  • SQL 自动修复最多支持 5 次重试,若频繁失败,请检查数据源表结构、权限以及潜在的 SQL 兼容性问题。
  • 如需进行索引重建、检查 Schema 等维护任务,README 提及的脚本如 index_knowledge.py、check_schema.py、check_tables.py 常用且有帮助。
  • 输出格式选择:format 参数可选 markdown、json、csv,请在查询请求中传递,便于后续处理和展示。

Related MCP Servers

Sponsor this space

Reach thousands of developers