A Microsoft SQL Server client implementing the Model Context Protocol (MCP). This server provides SQL query capabilities through a simple MCP
SQL Server MCP Client MCP server exists for a simple reason — assistants are far more useful when they can act on SQL Server MCP Client directly instead of describing what you should do. A Microsoft SQL Server client implementing the Model Context Protocol (MCP). This server provides SQL query capabilities through a simple MCP interface.
The SQL Server MCP client is built with .NET Core using the Model Context Protocol C# SDK (github.com/modelcontextprotocol/csharp-sdk). It provides tools for executing SQL queries, managing stored procedures, listing tables, and retrieving comprehensive schema information from SQL Server databases. The server is designed to be lightweight yet powerful, demonstrating how to create a robust MCP server with practical database functionality. It can be deployed either directly on a machine or as a Docker container.
Once SQL Server MCP Client is connected, these are the calls the assistant has available:
rowsAffected — Total rows affected by DML operations (always captured)ioStats — Per-table IO statistics (only when includeIoStats was true on the start tool)executionPlanXml — Actual XML execution plan (only when includeExecutionPlan was true on the start tool)Prerequisites — The Prerequisites tool exposed by this serverInstallation — The Installation tool exposed by this serverRunning — The Running tool exposed by this serverserver_capabilities — Returns detailed information about the capabilities and features of the connected SQL Server instanceget_command_timeout — Example request: json { "name": "get_command_timeout", "parameters": {} }set_command_timeout — Parameters: - timeoutSeconds (required): New timeout in seconds (1-3600)execute_query — Parameters: - query (required): The SQL query to execute. - timeoutSeconds (optional): Command timeout in seconds. Overrides the default timeout. -list_tables — Lists all tables in the connected SQL Server database with schema and row count informationSetup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.
You will need one environment variable: MSSQL_CONNECTIONSTRING. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
This sits in the database access group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. SQL Server MCP Client's toolset — rowsAffected, ioStats, executionPlanXml and 8 more — is a fair guide to whether it matches your workflow. It is maintained by aadversteeg; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| rowsAffected | Total rows affected by DML operations (always captured) |
| ioStats | Per-table IO statistics (only when includeIoStats was true on the start tool) |
| executionPlanXml | Actual XML execution plan (only when includeExecutionPlan was true on the start tool) |
| Prerequisites | The Prerequisites tool exposed by this server. |
| Installation | The Installation tool exposed by this server. |
| Running | The Running tool exposed by this server. |
| server_capabilities | Returns detailed information about the capabilities and features of the connected SQL Server instance. |
| get_command_timeout | Example request: json { "name": "get_command_timeout", "parameters": {} } |
| set_command_timeout | Parameters: - timeoutSeconds (required): New timeout in seconds (1-3600) |
| execute_query | Parameters: - query (required): The SQL query to execute. - timeoutSeconds (optional): Command timeout in seconds. Overrides the default timeout. - includeIoStats (optional): Include per-table IO statistics. Default is f |
| list_tables | Lists all tables in the connected SQL Server database with schema and row count information. |
| Variable | Description | Required |
|---|---|---|
| MSSQL_CONNECTIONSTRING | Configuration value read at startup. | Optional |
Read-only SQL access to Postgres — let your assistant inspect schemas and answer questions from real data.
Manage your whole Supabase project in conversation — database, auth, storage, Edge Functions and branches.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Official MongoDB server covering data, schemas and Atlas management — from find queries to spinning up clusters.
Serverless Postgres with database branching — point your assistant at Neon and let it work on disposable copies.