MCP Server for Microsoft SQL Server — no native drivers required
Project description
jewei-mcp-mssql
Microsoft SQL Server MCP Server — 让 AI 助手能够查询和操作 SQL Server,无需安装任何本地驱动(纯 Python 实现)。
特性
- 无驱动:基于
python-tds,无需 ODBC 驱动或 FreeTDS - 权限控制:INSERT / UPDATE / DELETE / DDL 各自独立开关,默认全只读
- 支持 stdio 和 Streamable HTTP 两种传输模式
快速开始
Claude Code
在项目 .mcp.json 或全局配置中添加:
{
"mcpServers": {
"mssql": {
"type": "stdio",
"command": "uvx",
"args": ["jewei-mcp-mssql"],
"env": {
"DB_HOST": "localhost",
"DB_PORT": "1433",
"DB_NAME": "master",
"DB_USER": "sa",
"DB_PASSWORD": "your_password"
}
}
}
}
Cursor
在 ~/.cursor/mcp.json 中添加:
{
"mcpServers": {
"mssql": {
"command": "uvx",
"args": ["jewei-mcp-mssql"],
"env": {
"DB_HOST": "localhost",
"DB_USER": "sa",
"DB_PASSWORD": "your_password"
}
}
}
}
OpenCode
在 ~/.opencode/opencode.json 中添加:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"mssql": {
"type": "local",
"command": ["uvx", "jewei-mcp-mssql"],
"enabled": true,
"environment": {
"DB_HOST": "localhost",
"DB_USER": "sa",
"DB_PASSWORD": "your_password"
}
}
}
}
Claude Desktop
在 claude_desktop_config.json 中添加:
{
"mcpServers": {
"mssql": {
"command": "uvx",
"args": ["jewei-mcp-mssql"],
"env": {
"DB_HOST": "localhost",
"DB_USER": "sa",
"DB_PASSWORD": "your_password"
}
}
}
}
环境变量
连接配置
| 变量 | 说明 | 必填 | 默认值 |
|---|---|---|---|
DB_HOST |
SQL Server 主机地址 | 是 | localhost |
DB_PORT |
SQL Server 端口 | 否 | 1433 |
DB_NAME |
默认数据库 | 否 | master |
DB_USER |
用户名 | 是 | - |
DB_PASSWORD |
密码 | 是 | - |
权限控制
| 变量 | 说明 | 默认值 |
|---|---|---|
DB_ALLOW_INSERT |
是否允许 INSERT | false |
DB_ALLOW_UPDATE |
是否允许 UPDATE | false |
DB_ALLOW_DELETE |
是否允许 DELETE | false |
DB_ALLOW_DDL |
是否允许 DDL(CREATE/DROP/ALTER/TRUNCATE) | false |
传输模式
| 变量 | 说明 | 默认值 |
|---|---|---|
MCP_TRANSPORT |
传输模式:stdio 或 streamable_http |
stdio |
MCP_PORT |
HTTP 模式端口 | 8000 |
可用工具
| 工具 | 说明 |
|---|---|
mssql_get_db_info |
获取当前数据库基本信息(版本、服务器名、当前用户等) |
mssql_execute_sql |
执行 SQL 语句(SELECT 始终允许,写操作受环境变量控制) |
mssql_list_tables |
列出当前数据库下的所有表 |
mssql_describe_table |
获取表的列结构(列名、类型、可空性等) |
提示示例
查一下当前连接的是哪个数据库,SQL Server 版本是多少
列出当前数据库里所有的表
描述一下 dbo.Orders 表的结构
查询 dbo.Orders 表中最近 10 条记录
统计 dbo.Orders 表中每个状态的订单数量,按数量降序排列
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jewei_mcp_mssql-0.1.15.tar.gz.
File metadata
- Download URL: jewei_mcp_mssql-0.1.15.tar.gz
- Upload date:
- Size: 90.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60353d8c8af6f27bd82431b959b621444262577b724b0ebb4147e03b919bf196
|
|
| MD5 |
00bf117634b57374f65054628c9ae03c
|
|
| BLAKE2b-256 |
83fcd8b5e807693c3a5d925833531ed73412a65b11b650ba07326203d85e669e
|
Provenance
The following attestation bundles were made for jewei_mcp_mssql-0.1.15.tar.gz:
Publisher:
publish.yml on jeweis/jewei-mcp-mssql
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jewei_mcp_mssql-0.1.15.tar.gz -
Subject digest:
60353d8c8af6f27bd82431b959b621444262577b724b0ebb4147e03b919bf196 - Sigstore transparency entry: 1767228489
- Sigstore integration time:
-
Permalink:
jeweis/jewei-mcp-mssql@c32da240296381987b9d0d5b86dead43eb388167 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/jeweis
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c32da240296381987b9d0d5b86dead43eb388167 -
Trigger Event:
push
-
Statement type:
File details
Details for the file jewei_mcp_mssql-0.1.15-py3-none-any.whl.
File metadata
- Download URL: jewei_mcp_mssql-0.1.15-py3-none-any.whl
- Upload date:
- Size: 11.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77f00b1403e2db10de3bfdaea18fd0bc2de83c9de7f9e28ba86a88262544484a
|
|
| MD5 |
e9675db101b780c9332ba82e09ca4995
|
|
| BLAKE2b-256 |
3084c56491805b07a5fa74d8b3a72bb36d9954fa5dcda7684ccabf4a900c4cf0
|
Provenance
The following attestation bundles were made for jewei_mcp_mssql-0.1.15-py3-none-any.whl:
Publisher:
publish.yml on jeweis/jewei-mcp-mssql
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jewei_mcp_mssql-0.1.15-py3-none-any.whl -
Subject digest:
77f00b1403e2db10de3bfdaea18fd0bc2de83c9de7f9e28ba86a88262544484a - Sigstore transparency entry: 1767228669
- Sigstore integration time:
-
Permalink:
jeweis/jewei-mcp-mssql@c32da240296381987b9d0d5b86dead43eb388167 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/jeweis
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c32da240296381987b9d0d5b86dead43eb388167 -
Trigger Event:
push
-
Statement type: