Skip to main content
Glama
ferronicardoso

mcp-mssqlserver

MCP Server for Microsoft SQL Server

Docker Publish GHCR Node.js

面向生产的 Microsoft SQL Server MCP 服务器,向 MCP 客户端(Claude Desktop、VS Code Copilot、Cursor 及兼容主机)公开数据库操作。

功能

  • 查询执行(SELECTINSERTUPDATEDELETE

  • 数据库发现与 Schema 内省

  • 表元数据检查(列、类型、可空性、默认值、主键 PK)

  • 索引和外键发现

  • 基于环境变量的配置,支持安全部署

Related MCP server: SQL Query Tools MCP Server

可用工具

工具

说明

execute_query

执行 SQL 语句并返回记录集或受影响的行数

list_tables

INFORMATION_SCHEMA.TABLES 列出表(可选 Schema 筛选)

describe_table

返回表的列元数据及主键标记

list_databases

列出所有 SQL Server 数据库

get_table_indexes

列出表的索引、类型、唯一性、PK 和被索引的列

get_foreign_keys

列出表的外键及被引用的目标

要求

  • Node.js 18+

  • 可访问 Microsoft SQL Server 实例

  • MCP 主机到 SQL Server 的网络连通性(host:port

配置

使用环境变量设置连接参数:

变量

必填

默认值

说明

MSSQL_HOST

localhost

SQL Server 主机或 IP

MSSQL_PORT

1433

SQL Server TCP 端口

MSSQL_DATABASE

默认数据库

MSSQL_AUTH_MODE

sql

身份验证模式:sqlwindows

MSSQL_USER

*

SQL 登录用户(仅在 sql 模式下必填)

MSSQL_PASSWORD

*

SQL 登录密码(仅在 sql 模式下必填)

MSSQL_ENCRYPT

false

启用加密连接

MSSQL_TRUST_SERVER_CERTIFICATE

true

启用加密时信任服务器证书

*MSSQL_AUTH_MODE=sql 时必填。

| MCP_TRANSPORT | 否 | stdio | 传输模式:stdio(默认,用于 npx/Claude Desktop/VS Code)或 http(Streamable HTTP,用于 Docker/远程客户端,如 n8n) | | MCP_HTTP_PORT | 否 | 3001 | HTTP 服务器端口(仅当 MCP_TRANSPORT=http 时使用) | | MCP_HTTP_HOST | 否 | 0.0.0.0 | HTTP 服务器绑定地址(仅当 MCP_TRANSPORT=http 时使用) |

注意:已发布的 Docker 镜像始终以 http 模式运行,并且不构建 msnodesqlv8 原生驱动(仅用于 MSSQL_AUTH_MODE=windows)。Windows 身份验证仅在通过 npx/npm start 直接在 Windows 主机上运行服务器时可用。

用法

直接从 GitHub 运行

npx github:ferronicardoso/mcp-mssqlserver

Claude Code(CLI)

claude mcp add mssqlserver --scope user -- npx -y github:ferronicardoso/mcp-mssqlserver

--scope 控制服务器注册信息的存储位置:

作用域

存储位置

可见范围

local(默认)

项目本地,未跟踪

仅你自己,且仅在本项目中

project

项目根目录下的 .mcp.json

任何克隆仓库的人(提交该文件即可共享)

user

你的全局 Claude Code 配置

你本人,在所有项目中均可见

可以通过在 -- 之前重复使用 --env KEY=VALUE 标志来传递环境变量,例如:

Bash(Linux/macOS/WSL):

claude mcp add mssqlserver --scope user \
  --env MSSQL_HOST=localhost \
  --env MSSQL_PORT=1433 \
  --env MSSQL_DATABASE=master \
  --env MSSQL_AUTH_MODE=sql \
  --env MSSQL_USER=sa \
  --env MSSQL_PASSWORD=your-password \
  -- npx -y github:ferronicardoso/mcp-mssqlserver

PowerShell:

claude mcp add mssqlserver --scope user `
  --env MSSQL_HOST=localhost `
  --env MSSQL_PORT=1433 `
  --env MSSQL_DATABASE=master `
  --env MSSQL_AUTH_MODE=sql `
  --env MSSQL_USER=sa `
  --env MSSQL_PASSWORD=your-password `
  -- npx -y github:ferronicardoso/mcp-mssqlserver

Codex CLI

Bash(Linux/macOS/WSL):

codex mcp add mssqlserver \
  --env MSSQL_AUTH_MODE=sql \
  --env MSSQL_HOST=localhost \
  --env MSSQL_PORT=1433 \
  --env MSSQL_DATABASE=master \
  --env MSSQL_USER=sa \
  --env MSSQL_PASSWORD=your-password \
  npx -- -y github:ferronicardoso/mcp-mssqlserver

PowerShell:

codex mcp add mssqlserver `
  --env MSSQL_AUTH_MODE=sql `
  --env MSSQL_HOST=localhost `
  --env MSSQL_PORT=1433 `
  --env MSSQL_DATABASE=master `
  --env MSSQL_USER=sa `
  --env MSSQL_PASSWORD=your-password `
  npx -- -y github:ferronicardoso/mcp-mssqlserver

如需改用 Windows 身份验证,请去掉 MSSQL_USER/MSSQL_PASSWORD 并设置 MSSQL_AUTH_MODE=windows

Bash(Linux/macOS/WSL):

codex mcp add mssqlserver \
  --env MSSQL_AUTH_MODE=windows \
  --env MSSQL_HOST=localhost \
  --env MSSQL_PORT=1433 \
  --env MSSQL_DATABASE=master \
  npx -- -y github:ferronicardoso/mcp-mssqlserver

PowerShell:

codex mcp add mssqlserver `
  --env MSSQL_AUTH_MODE=windows `
  --env MSSQL_HOST=localhost `
  --env MSSQL_PORT=1433 `
  --env MSSQL_DATABASE=master `
  npx -- -y github:ferronicardoso/mcp-mssqlserver

这会将服务器注册到 ~/.codex/config.toml。要移除它,请运行 codex mcp remove mssqlserver

Claude Desktop 配置

%APPDATA%\\Claude\\claude_desktop_config.json

{
  "mcpServers": {
    "mssqlserver": {
      "command": "npx",
      "args": ["github:ferronicardoso/mcp-mssqlserver"],
      "env": {
        "MSSQL_HOST": "localhost",
        "MSSQL_PORT": "1433",
        "MSSQL_DATABASE": "master",
        "MSSQL_AUTH_MODE": "sql",
        "MSSQL_USER": "sa",
        "MSSQL_PASSWORD": "your-password"
      }
    }
  }
}

VS Code MCP 配置

.vscode/mcp.json

{
  "servers": {
    "mssqlserver": {
      "command": "npx",
      "args": ["github:ferronicardoso/mcp-mssqlserver"],
      "env": {
        "MSSQL_HOST": "localhost",
        "MSSQL_PORT": "1433",
        "MSSQL_DATABASE": "master",
        "MSSQL_AUTH_MODE": "sql",
        "MSSQL_USER": "sa",
        "MSSQL_PASSWORD": "your-password"
      }
    }
  }
}

使用 Docker 运行(HTTP 传输)

已发布的镜像默认以 Streamable HTTP 模式运行,可用作远程 MCP 端点(例如供 n8n 的 MCP Client Tool 节点或任何兼容 Streamable HTTP 的客户端使用):

Bash(Linux/macOS/WSL):

docker run -d --name mcp-mssqlserver \
  -p 3001:3001 \
  -e MSSQL_HOST=host.docker.internal \
  -e MSSQL_PORT=1433 \
  -e MSSQL_DATABASE=master \
  -e MSSQL_AUTH_MODE=sql \
  -e MSSQL_USER=sa \
  -e MSSQL_PASSWORD=your-password \
  ghcr.io/ferronicardoso/mcp-mssqlserver:latest

PowerShell:

docker run -d --name mcp-mssqlserver `
  -p 3001:3001 `
  -e MSSQL_HOST=host.docker.internal `
  -e MSSQL_PORT=1433 `
  -e MSSQL_DATABASE=master `
  -e MSSQL_AUTH_MODE=sql `
  -e MSSQL_USER=sa `
  -e MSSQL_PASSWORD=your-password `
  ghcr.io/ferronicardoso/mcp-mssqlserver:latest

随后可通过 http://localhost:3001/mcp 访问 MCP 端点。

本地开发

git clone https://github.com/ferronicardoso/mcp-mssqlserver
cd mcp-mssqlserver
npm install
npm run build

启动编译后的服务器:

npm start

构建与提交工作流

此仓库有意将 dist/ 纳入版本控制,以支持 npx github:user/repo 的用法。

该项目使用 Husky 的 pre-commit 钩子来:

  1. 构建 TypeScript(npm run build

  2. 暂存生成的产物(git add dist

手动备用方案:

npm run build
git add dist

安全注意事项

  • 切勿提交真实凭据或 .env 文件。

  • 生产环境请优先使用最小权限的 SQL 用户。

  • 对于公共或不信任的网络,请启用加密(MSSQL_ENCRYPT=true)并正确配置证书。

Windows 身份验证(集成安全性)

如需使用基于集成安全性(进程帐户)的 Windows 身份验证,请配置:

MSSQL_AUTH_MODE=windows
MSSQL_HOST=sqlserver.company.local
MSSQL_PORT=1433
MSSQL_DATABASE=master

许可证

MIT © Raphael Augusto Ferroni Cardoso

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides tools to connect, query, and manage Microsoft SQL Server databases through the MCP protocol, including support for stored procedures, transactions, and schema inspection.
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    MCP server for connecting to SQL Server in readonly mode. Allows any MCP client to explore the schema and run SELECT queries against a SQL Server database.
    6
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for executing SQL queries and managing connections to Microsoft SQL Server databases.
    3,043
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP server for managing Prisma Postgres.

  • MCP server for interacting with the Supabase platform

  • Read-only MCP server for ClassQuill, a tutoring-business-management platform.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ferronicardoso/mcp-mssqlserver'

If you have feedback or need assistance with the MCP directory API, please join our Discord server