Install
$ agentstack add mcp-chillwind132-mssql-mcp-server ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
mssql-mcp-server
[](LICENSE) [](https://www.python.org/) [](Dockerfile)
A Microsoft SQL Server MCP server. Query, inspect, and troubleshoot any SQL Server instance from Cursor, Claude Code, Codex, or any MCP (Model Context Protocol) client. Connects via ODBC using per-caller credentials elicited at runtime. Passwords live only in server memory with an idle TTL and are never logged.
- Query tools:
connect/disconnect/list_sessionssession lifecycle,execute_sqlwith table/JSON/CSV output, andexplain_queryfor estimated or actual Showplan XML execution plans - Per-caller identity: the
X-DB-UserandX-DB-Passwordheaders are both optional; anything missing is elicited once and cached in-memory - Permission-scoped access: read vs. write is governed by the SQL login's own permissions;
provision_mcp_read.sqlprovisions a ready-made read-onlymcp_readlogin across all user databases - Zero secrets on disk: no credentials in config files, env vars, or logs
Example prompts
- "Show the execution plan for this query and suggest a better index."
- "Who is blocking whom on
db1right now?" - "List the 10 largest tables in the
salesdatabase." - "Find all stored procedures that reference the
Orderstable." - "Export the results of this query as CSV."
Tools
| Tool | Description | |------|-------------| | connect | Open a session to a SQL Server database and return a session_id | | disconnect | Close an active SQL Server session | | list_sessions | List active sessions with server, database, and usage details | | execute_sql | Run a SQL statement and return rows as table, JSON, or CSV | | explain_query | Estimated or actual execution plan as Showplan XML |
Quick Start
docker compose -f docker-compose.yml -p mssql-mcp up -d --build --force-recreate
Client setup
Both X-DB-User and X-DB-Password headers are optional: anything missing is prompted for once via MCP elicitation and cached in memory.
Cursor (mcp.json)
{
"mcpServers": {
"mssql-mcp": {
"type": "http",
"url": "http://localhost:8007/mcp",
"headers": {
"X-DB-User": "",
"X-DB-Password": ""
}
}
}
}
Claude Code
claude mcp add --transport http mssql-mcp http://localhost:8007/mcp \
--header "X-DB-User: " \
--header "X-DB-Password: "
Codex (~/.codex/config.toml)
[mcp_servers.mssql-mcp]
url = "http://localhost:8007/mcp"
http_headers = { "X-DB-User" = "", "X-DB-Password" = "" }
Any other MCP client works the same way: point it at the streamable HTTP endpoint and pass the headers.
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Chillwind132
- Source: Chillwind132/mssql-mcp-server
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.