SQL Server 数据库自省工具

SQL Server MCP是一个只读的模型上下文协议服务器,用于SQL Server数据库自省,允许Claude Desktop探索和查询SQL Server数据库。

  • by millelog
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 millelog/sql-server-mcp

使用说明

SQL Server MCP

用于SQL server数据库自检的只读MCP(模型上下文协议)服务器。与Claude Desktop一起使用,让Claude探索和查询您的SQL Server数据库。

特性

  • 列出数据库、表、视图、存储过程和函数
  • 获取对象定义(DDL/源代码)
  • 执行只读SELECT查询
  • 跨数据库搜索对象
  • 按设计只读 -所有变异查询都被阻止

安装

# Clone the repo
git clone https://github.com/millelog/sql-server-mcp.git
cd sql-server-mcp

# Install in a virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install -e .

Claude桌面配置

添加到您的Claude Desktop配置文件中:

  • 窗户: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "sql-server": {
      "command": "python",
      "args": ["-m", "sql_server_mcp"],
      "cwd": "C:\\path\\to\\sql-server-mcp",
      "env": {
        "MSSQL_HOST": "your-server",
        "MSSQL_USER": "your-username",
        "MSSQL_PASSWORD": "your-password",
        "MSSQL_DATABASE": "master"
      }
    }
  }
}

更新配置后重新启动Claude Desktop。

配置选项

变量 描述 默认值
MSSQL_HOST SQL Server主机名 localhost
MSSQL_PORT SQL Server端口 1433
MSSQL_USER 用户名 -
MSSQL_PASSWORD 密码 -
MSSQL_DATABASE 默认数据库 master
MSSQL_CONNECTION_STRING 完整连接字符串(覆盖上述内容) -
MAX_ROWS 返回的最大行数 100
QUERY_TIMEOUT 查询超时(秒) 30
ALLOWED_DATABASES 逗号分隔的满列表 -
BLOCKED_DATABASES 逗号分隔的块列表 -

可用工具

工具 说明
list_databases 列出所有可访问的数据库
list_tables 列出数据库中的表
get_table_definition 获取创建表DDL
get_table_columns 获取列元数据
get_table_indexes 获取索引信息
get_table_relationships 获取外键关系
list_views 列出数据库中的视图
get_view_definition 获取创建视图DDL
list_procedures 列出存储过程
get_procedure_definition 获取创建过程DDL
get_procedure_parameters 获取程序参数
list_functions 列出用户定义的函数
get_function_definition 获取创建函数DDL
execute_query 运行只读SELECT查询
get_sample_data 从表中获取示例行
search_objects 按名称搜索对象
search_definitions 在对象定义内搜索
get_schema_overview 获取数据库架构摘要(对象计数、大小)

发展

# Run tests
pytest tests/ -v

# Run with coverage
pytest tests/ --cov=src/sql_server_mcp

许可证

麻省理工学院