MSSQL MCP 服务器
一种模型上下文协议服务器,可实现与Microsoft SQL Server数据库的安全交互,允许AI助手通过受控接口列出表、读取数据和执行SQL查询。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"mssql": {
"args": [
"--directory",
"path/to/mssql_mcp_server",
"run",
"mssql_mcp_server"
],
"command": "uv",
"env": {
"MSSQL_DATABASE": "your_database",
"MSSQL_PASSWORD": "your_password",
"MSSQL_SERVER": "localhost",
"MSSQL_USER": "your_username"
}
}
}
}
该服务需要配置环境变量:MSSQL_DATABASE、MSSQL_PASSWORD、MSSQL_SERVER、MSSQL_USER
可用工具 (1 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
execute_sql 1 个参数 需填 1 项
Execute an SQL query on the SQL Server
必填参数:query
服务介绍
Microsoft SQL Server MCP 服务器
这是一个模型上下文协议(MCP)服务器,它允许与Microsoft SQL Server数据库进行安全交互。该服务器允许AI助手通过一个受控接口列出表、读取数据和执行SQL查询,从而使数据库的探索和分析更加安全且结构化。
特性
- 将可用的SQL Server表作为资源列出
- 读取表内容
- 执行带有适当错误处理的SQL查询
- 通过环境变量实现安全的数据库访问
- 全面的日志记录
- 自动安装系统依赖项
安装
当通过MCP安装时,软件包将自动安装所需的系统依赖项(如FreeTDS):
pip install mssql-mcp-server
配置
设置以下环境变量:
MSSQL_SERVER=localhost
MSSQL_USER=your_username
MSSQL_PASSWORD=your_password
MSSQL_DATABASE=your_database
使用方法
在Claude Desktop中使用
在你的claude_desktop_config.json中添加如下配置:
{
"mcpServers": {
"mssql": {
"command": "uv",
"args": [
"--directory",
"path/to/mssql_mcp_server",
"run",
"mssql_mcp_server"
],
"env": {
"MSSQL_SERVER": "localhost",
"MSSQL_USER": "your_username",
"MSSQL_PASSWORD": "your_password",
"MSSQL_DATABASE": "your_database"
}
}
}
}
作为独立服务器运行
# Install dependencies
pip install -r requirements.txt
# Run the server
python -m mssql_mcp_server
开发
# Clone the repository
git clone https://github.com/RichardHan/mssql_mcp_server.git
cd mssql_mcp_server
# Create virtual environment
python -m venv venv
source venv/bin/activate # or `venv\Scripts\activate` on Windows
# Install development dependencies
pip install -r requirements-dev.txt
# Run tests
pytest
安全考虑
- 永远不要提交环境变量或凭据
- 使用具有最小必需权限的数据库用户
- 考虑为生产使用实现查询白名单
- 监控并记录所有数据库操作
安全最佳实践
此MCP服务器需要数据库访问才能运行。为了安全起见:
- 创建一个具有最小权限的专用SQL Server登录
- 永远不要使用sa凭据或管理员账户
- 限制数据库访问至仅必要的操作
- 启用日志记录以供审计
- 定期进行安全性审查数据库访问
参见SQL Server安全配置指南了解关于:
- 创建受限的SQL Server登录
- 设置适当的权限
- 监控数据库访问
- 安全最佳实践的详细说明
⚠️ 重要:在配置数据库访问时,始终遵循最小特权原则。
许可证
MIT许可证 - 详情请参阅LICENSE文件。
贡献
- 叉仓库
- 创建你的功能分支 (
git checkout -b feature/amazing-feature) - 提交你的更改 (
git commit -m 'Add some amazing feature') - 推送到分支 (
git push origin feature/amazing-feature) - 打开拉取请求