MCP MSSQL Server 服务器
一个功能强大的基于 Model Context Protocol (MCP) 的 MSSQL Server 服务器,提供企业级 DDL 支持、细粒度权限控制、全面的操作日志记录和智能连接池管理。
🚀 核心功能特性
主要能力
- ✅ 完整 SQL 支持 - 支持 DDL 和 DML 操作,具备 SQL 注入防护
- ✅ 高级权限控制 - 通过环境变量对 DDL、DROP、DELETE 操作进行细粒度控制
- ✅ 全面日志记录 - 完整的请求响应日志、SQL 操作跟踪和连接池监控
- ✅ 企业级连接管理 - 自动连接池创建、健康监控和故障恢复
- ✅ MCP 协议兼容 - 完整的 Model Context Protocol 实现
- ✅ 多编辑器支持 - 与 Cursor、VS Code 等 MCP 兼容编辑器无缝集成
高级特性
- 架构自动前缀 - 多租户环境的自动架构处理
- 连接池优化 - 智能连接复用和性能调优
- 错误处理 - 全面的错误日志记录和优雅的故障恢复
- 安全特性 - SQL 注入防护、参数化查询支持和操作验证
📦 安装
全局安装(推荐)
npm install -g @liangshanli/mcp-server-mssqlserver
本地安装
npm install @liangshanli/mcp-server-mssqlserver
源码安装
git clone https://github.com/liliangshan/mcp-server-mssqlserver.git
cd mcp-server-mssqlserver
npm install
⚙️ 配置
数据库连接设置
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| MSSQL_SERVER | localhost | MSSQL Server 主机地址 |
| MSSQL_PORT | 1433 | MSSQL Server 端口号 |
| MSSQL_USER | sa | 数据库用户名 |
| MSSQL_PASSWORD | 数据库密码 | |
| MSSQL_DATABASE | 目标数据库名称 | |
| MSSQL_SCHEMA | dbo | 默认架构名称 |
| MSSQL_ENCRYPT | false | 启用加密 |
| MSSQL_TRUST_SERVER_CERTIFICATE | true | 信任服务器证书 |
权限控制设置
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| ALLOW_DDL | false | 允许 CREATE、ALTER、DROP 操作 |
| ALLOW_DROP | false | 允许 DROP TABLE 操作 |
| ALLOW_DELETE | false | 允许 DELETE 操作 |
安全配置示例
开发环境(高权限)
export ALLOW_DDL=true
export ALLOW_DROP=true
export ALLOW_DELETE=true
测试环境(中等权限)
export ALLOW_DDL=true
export ALLOW_DROP=false
export ALLOW_DELETE=true
生产环境(限制权限)
export ALLOW_DDL=false
export ALLOW_DROP=false
export ALLOW_DELETE=false
🚀 快速开始
1. 安装包
npm install -g @liangshanli/mcp-server-mssqlserver
2. 配置环境变量
export MSSQL_SERVER=your_mssql_server.com
export MSSQL_PORT=1433
export MSSQL_USER=your_username
export MSSQL_PASSWORD=your_secure_password
export MSSQL_DATABASE=your_database
export MSSQL_SCHEMA=dbo
export ALLOW_DDL=false
export ALLOW_DROP=false
export ALLOW_DELETE=false
3. 运行服务器
npm start
🔧 编辑器配置示例
Cursor 编辑器配置
在项目根目录创建 .cursor/mcp.json 文件:
单实例配置
{
"mcpServers": {
"mssqlserver": {
"command": "npx",
"args": ["@liangshanli/mcp-server-mssqlserver"],
"env": {
"MSSQL_SERVER": "your_host",
"MSSQL_PORT": "1433",
"MSSQL_USER": "your_user",
"MSSQL_PASSWORD": "your_password",
"MSSQL_DATABASE": "your_database",
"MSSQL_SCHEMA": "your_schema",
"ALLOW_DDL": "false",
"ALLOW_DROP": "false",
"ALLOW_DELETE": "false"
}
}
}
}
VS Code 配置 - .vscode/mcp.json 格式
1. 安装 VS Code 的 MCP 扩展
2. 创建 .vscode/mcp.json 文件:
单实例配置
{
"servers": {
"mssqlserver": {
"command": "npx",
"args": ["@liangshanli/mcp-server-mssqlserver"],
"env": {
"MSSQL_SERVER": "your_host",
"MSSQL_PORT": "1433",
"MSSQL_USER": "your_user",
"MSSQL_PASSWORD": "your_password",
"MSSQL_DATABASE": "your_database",
"MSSQL_SCHEMA": "your_schema",
"ALLOW_DDL": "false",
"ALLOW_DROP": "false",
"ALLOW_DELETE": "false"
}
}
}
}
多实例配置
{
"servers": {
"mssqlserver-prod": {
"command": "npx",
"args": ["@liangshanli/mcp-server-mssqlserver"],
"env": {
"MSSQL_SERVER": "prod.example.com",
"MSSQL_PORT": "1433",
"MSSQL_USER": "prod_user",
"MSSQL_PASSWORD": "prod_password",
"MSSQL_DATABASE": "prod_db",
"MSSQL_SCHEMA": "dbo",
"TOOL_PREFIX": "prod",
"PROJECT_NAME": "生产环境",
"ALLOW_DDL": "false",
"ALLOW_DROP": "false",
"ALLOW_DELETE": "false"
}
},
"mssqlserver-test": {
"command": "npx",
"args": ["@liangshanli/mcp-server-mssqlserver"],
"env": {
"MSSQL_SERVER": "test.example.com",
"MSSQL_PORT": "1433",
"MSSQL_USER": "test_user",
"MSSQL_PASSWORD": "test_password",
"MSSQL_DATABASE": "test_db",
"MSSQL_SCHEMA": "dbo",
"TOOL_PREFIX": "test",
"PROJECT_NAME": "测试环境",
"ALLOW_DDL": "true",
"ALLOW_DROP": "true",
"ALLOW_DELETE": "true"
}
}
}
}
🔗 相关工具
- MCP Git 服务器 - Git push 操作管理
- MCP Browser 服务器 - 无头浏览器文档抓取
- MCP Redis 服务器 - Redis 数据操作和键管理
- MCP MySQL 服务器 - MySQL 数据库支持
- MCP 项目标准管理服务器 - 项目标准管理
- MCP Gitee Pull Request 服务器 - Gitee Pull Request 创建和自动化工作流