使用说明
mssql-mcp
将Claude Desktop连接到Microsoft SQL server(包括Azure SQL数据库)的最小MCP(模型上下文协议)服务器。
需求
- Python(推荐使用Anaconda)
- SQL Server的ODBC驱动程序17
- 克劳德桌面版
安装
pip install pyodbc mcp
设置
- 克隆仓库并记下路径
server.py - 将以下内容添加到您的
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"
}
}
}
}
- 重新启动克劳德桌面
- 点击锤子🔨 聊天输入中的图标——应显示可用的工具
工具
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上运行,如果手动启动,将显示为闪烁的光标——这是正常的