SQL服务连接器

一个最小化的MCP服务器,连接Claude Desktop与Microsoft SQL Server及Azure SQL数据库,支持SQL查询执行和表结构查看。

  • by ryan-bart
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 ryan-bart/mssql-mcp

使用说明

mssql-mcp

将Claude Desktop连接到Microsoft SQL server(包括Azure SQL数据库)的最小MCP(模型上下文协议)服务器。

需求

安装

pip install pyodbc mcp

设置

  1. 克隆仓库并记下路径 server.py
  2. 将以下内容添加到您的 claude_desktop_config.json (发现于 %APPDATA%\Claude\claude_desktop_config.json):
{
  "mcpServers": {
    "mssql": {
      "command": "C:\\path\\to\\your\\python.exe",
      "args": ["C:\\path\\to\\mssql-mcp\\server.py"],
      "env": {
        "MSSQL_SERVER": "your-server.database.windows.net",
        "MSSQL_DATABASE": "your_database",
        "MSSQL_USER": "your_user",
        "MSSQL_PASSWORD": "your_password",
        "MSSQL_PORT": "1433",
        "MSSQL_READONLY": "true"
      }
    }
  }
}
  1. 重新启动克劳德桌面
  2. 点击锤子🔨 聊天输入中的图标——应显示可用的工具

工具

execute_sql --运行SQL查询并以JSON格式返回结果。在只读模式下,只允许使用SELECT语句。

list_tables --列出数据库中的所有表和视图。可选择按模式名称进行筛选(例如。 dw, Stg_EpicUS).

describe_table --返回给定表的列名、数据类型和可空性。接受 table_name 和 schema 参数。

只读模式

集 MSSQL_READONLY=true 在env配置中阻止任何写入操作(INSERT、UPDATE、DELETE、DROP等)。默认情况下,这是启用的。设置为 false 以允许写查询。

用法

连接后,您可以向Claude自然语言询问有关数据的问题,它会将这些问题转换为SQL查询,并直接在聊天中返回结果。使用 list_tables 和 describe_table 帮助Claude理解您的模式,而无需手动解释。

备注

  • Azure SQL需要加密——这是通过ODBC连接字符串自动处理的
  • 使用 where python 在终端中查找正确的Python可执行路径
  • 服务器在stdio上运行,如果手动启动,将显示为闪烁的光标——这是正常的