MCP MSSQL服务器
使用NestJS构建的用于Microsoft SQL server集成的MCP(模型上下文协议)服务器。此服务器使Claude Code和其他MCP客户端能够通过标准化工具与SQL server数据库进行交互。
特性
- MCP协议支持:完全实现SQL Server操作的模型上下文协议
- 身份验证:支持Windows(NTLM)和SQL Server身份验证
- 全面的SQL工具:执行查询、探索模式、管理表和运行存储过程
- 健康监测:内置数据库连接健康检查
- 连接池:高效的数据库连接管理
MCP工具
服务器将这些SQL操作作为MCP工具公开:
execute-query:使用参数支持执行SQL查询get-schema:检索数据库架构信息list-tables:列出数据库中的所有表describe-table:获取具有约束的详细表结构get-table-data:使用筛选检索分页表数据execute-procedure:使用参数执行存储过程
安装
npm install配置
创建一个 .env 包含数据库配置的文件:
# SQL Server Connection
MSSQL_HOST=localhost
MSSQL_PORT=1433
MSSQL_DATABASE=your_database
# Authentication Mode (choose one)
# For SQL Server Authentication:
MSSQL_USERNAME=your_username
MSSQL_PASSWORD=your_password
# For Windows Authentication:
MSSQL_WIN_AUTH=true
MSSQL_DOMAIN=your_domain
MSSQL_USERNAME=domain\username
MSSQL_PASSWORD=your_password
# Connection Options
MSSQL_ENCRYPT=true
MSSQL_TRUST_CERT=true
# Server Port
PORT=3000发展
# Start in development mode
npm run start:dev
# Start with debugging
npm run start:debug
# Build the application
npm run build
# Start production build
npm run start:prod测试
# Unit tests
npm run test
# Watch mode
npm run test:watch
# End-to-end tests
npm run test:e2e
# Test coverage
npm run test:cov代码质量
# Run ESLint with auto-fix
npm run lint
# Format code with Prettier
npm run formatMCP端点
服务器运行时(默认端口3000):
- MCP协议:
http://localhost:3000/mssql/mcp - SSE(克劳德代码):
http://localhost:3000/mssql/sse - 健康检查:
http://localhost:3000/mssql/health
使用Claude代码
- 启动MCP服务器:
npm run start:dev - 配置Claude Code以连接到:
http://localhost:3000/mssql/mcp - 通过Claude Code的MCP接口使用公开的SQL工具
建筑
- MCP模块:通过以下方式处理MCP协议的实施
/mssql命名空间 - 数据库模块:管理SQL Server连接和身份验证
- 健康模块:提供数据库运行状况监视
- 没有REST端点:仅通过MCP工具公开的所有功能
许可证
国际协调委员会
