SQL Server模型上下文协议服务器

一个为SQL Server构建的模型上下文协议(MCP)服务器,提供只读SQL查询、表结构描述、存储过程列表等功能,兼容uvx。

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

使用说明

dreez mssql mcp

一种模型上下文协议(MCP)服务器 SQL Server --采用只读安全、pyodbc构建,与完全兼容 uvx.


✨ 特性

  • 🔍 执行只读SQL查询 (选择/使用)
  • 🛡️ 只读模式 --默认情况下,阻止任何发生变异的SQL(INSERT, UPDATE, DELETE, DROP, TRUNCATE, ALTER, CREATE, EXEC, MERGE, GRANT, REVOKE)
  • 📋 列出表格 在任何模式中
  • 🔎 描述表列 (类型、可空性、默认值)
  • 🗂️ 列出架构 在数据库中
  • 📦 列出存储过程
  • ⚡ 兼容 uvx --无需全局安装

📦 安装

使用 uvx (推荐--无需安装)

uvx dreez-mssql-mcp

使用 pip

pip install dreez-mssql-mcp

⚙️ 环境变量

变量 必填 默认 描述
MSSQL_SERVER ✅ — SQL Server主机名或IP
MSSQL_PORT ✅ — SQL Server端口(通常 1433)
MSSQL_DB ✅ — 数据库名称
MSSQL_USER ✅ — SQL Server用户名
MSSQL_PWD ✅ — SQL Server密码
READ_ONLY ❌ true 设置为 false 允许写入操作⚠️

🔧 客户端配置

克劳德桌面版

编辑 claude_desktop_config.json:

{
  "mcpServers": {
    "dreez-mssql": {
      "command": "uvx",
      "args": ["dreez-mssql-mcp"],
      "env": {
        "MSSQL_SERVER": "localhost",
        "MSSQL_PORT": "1433",
        "MSSQL_DB": "your_database",
        "MSSQL_USER": "your_user",
        "MSSQL_PWD": "your_password",
        "READ_ONLY": "true"
      }
    }
  }
}

光标/VS代码

编辑 .cursor/mcp.json 或 .vscode/mcp.json:

{
  "servers": {
    "dreez-mssql": {
      "type": "stdio",
      "command": "uvx",
      "args": ["dreez-mssql-mcp"],
      "env": {
        "MSSQL_SERVER": "localhost",
        "MSSQL_PORT": "1433",
        "MSSQL_DB": "your_database",
        "MSSQL_USER": "your_user",
        "MSSQL_PWD": "your_password",
        "READ_ONLY": "true"
      }
    }
  }
}

🛠️ 可用工具

工具 说明
execute_query(sql, max_rows?) 运行SELECT或WITH(CTE)查询。返回JSON。最多1000行。
list_tables(schema?) 列出架构中的所有表(默认值: dbo)
describe_table(table_name, schema?) 获取表的列、类型和可空性
list_schemas() 列出当前数据库中的所有架构
list_stored_procedures(schema?) 列出架构中的存储过程

🛡️ 只读模式

默认情况下, READ_ONLY=true。任何包含写入关键字的查询都将 立即封锁 在访问数据库之前:

{
  "error": "Operación bloqueada: el servidor está en modo solo lectura (READ_ONLY=true).",
  "keywords_detectadas": ["DELETE"]
}

被屏蔽的关键字: INSERT, UPDATE, DELETE, DROP, TRUNCATE, ALTER, CREATE, EXEC, EXECUTE, MERGE, REPLACE, GRANT, REVOKE

⚠️ 集 READ_ONLY=false 仅在受控环境中。强烈建议同时使用SQL Server用户 只读数据库权限 作为额外的安全层。


🚀 发展

# Clone the repo
git clone https://github.com/dreezdev/dreez-mssql-mcp.git
cd dreez-mssql-mcp

# Install with uv
uv sync

# Run locally
uv run dreez-mssql-mcp

📋 需求


📄 许可证

MIT© 德雷兹德夫


👤 作者

制作❤️ 通过 德雷兹德夫