PluginBench
MCP Server
Active
MIT

Microsoft SQL Server MCP Server

io.github.alyiox/mcp-mssql

What is the Microsoft SQL Server MCP server?

Read-only MCP for Microsoft SQL Server: metadata discovery, parameterized SELECT, plans.

How to install Microsoft SQL Server

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • MCPMSSQL_CONNECTION_STRING
    secret

    Default profile SQL Server connection string (often contains secrets). Optional if profiles are only in user appsettings.

  • MCPMSSQL_DESCRIPTION

    Optional human-readable description for the default profile.

  • MCPMSSQL_QUERY_MAX_ROWS

    Max rows per interactive query (default 500; ceiling 1000).

  • MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS

    Interactive query command timeout in seconds (default 30).

  • MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS

    Max rows for snapshot queries (default 10000; ceiling 50000).

  • MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS

    Snapshot query timeout in seconds (default 120).

  • MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS

    Execution plan analysis timeout in seconds (default 300).

  • DOTNET_ENVIRONMENT

    Set to Development to load dotnet user-secrets (local dev).

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "mcp-mssql": {
      "command": "dnx",
      "args": [
        "Alyio.McpMssql"
      ],
      "env": {
        "MCPMSSQL_CONNECTION_STRING": "<YOUR_MCPMSSQL_CONNECTION_STRING>",
        "MCPMSSQL_DESCRIPTION": "<YOUR_MCPMSSQL_DESCRIPTION>",
        "MCPMSSQL_QUERY_MAX_ROWS": "<YOUR_MCPMSSQL_QUERY_MAX_ROWS>",
        "MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS": "<YOUR_MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS>",
        "MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS>",
        "DOTNET_ENVIRONMENT": "<YOUR_DOTNET_ENVIRONMENT>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "mcp-mssql": {
      "command": "dnx",
      "args": [
        "Alyio.McpMssql"
      ],
      "env": {
        "MCPMSSQL_CONNECTION_STRING": "<YOUR_MCPMSSQL_CONNECTION_STRING>",
        "MCPMSSQL_DESCRIPTION": "<YOUR_MCPMSSQL_DESCRIPTION>",
        "MCPMSSQL_QUERY_MAX_ROWS": "<YOUR_MCPMSSQL_QUERY_MAX_ROWS>",
        "MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS": "<YOUR_MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS>",
        "MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS>",
        "DOTNET_ENVIRONMENT": "<YOUR_DOTNET_ENVIRONMENT>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "mcp-mssql": {
      "command": "dnx",
      "args": [
        "Alyio.McpMssql"
      ],
      "env": {
        "MCPMSSQL_CONNECTION_STRING": "<YOUR_MCPMSSQL_CONNECTION_STRING>",
        "MCPMSSQL_DESCRIPTION": "<YOUR_MCPMSSQL_DESCRIPTION>",
        "MCPMSSQL_QUERY_MAX_ROWS": "<YOUR_MCPMSSQL_QUERY_MAX_ROWS>",
        "MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS": "<YOUR_MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS>",
        "MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS>",
        "DOTNET_ENVIRONMENT": "<YOUR_DOTNET_ENVIRONMENT>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "mcp-mssql": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "Alyio.McpMssql"
      ],
      "env": {
        "MCPMSSQL_CONNECTION_STRING": "<YOUR_MCPMSSQL_CONNECTION_STRING>",
        "MCPMSSQL_DESCRIPTION": "<YOUR_MCPMSSQL_DESCRIPTION>",
        "MCPMSSQL_QUERY_MAX_ROWS": "<YOUR_MCPMSSQL_QUERY_MAX_ROWS>",
        "MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS": "<YOUR_MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS>",
        "MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS": "<YOUR_MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS>",
        "DOTNET_ENVIRONMENT": "<YOUR_DOTNET_ENVIRONMENT>"
      }
    }
  }
}
Claude Code
claude mcp add mcp-mssql --env MCPMSSQL_CONNECTION_STRING=<YOUR_MCPMSSQL_CONNECTION_STRING> --env MCPMSSQL_DESCRIPTION=<YOUR_MCPMSSQL_DESCRIPTION> --env MCPMSSQL_QUERY_MAX_ROWS=<YOUR_MCPMSSQL_QUERY_MAX_ROWS> --env MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS=<YOUR_MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS> --env MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS=<YOUR_MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS> --env MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS=<YOUR_MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS> --env MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS=<YOUR_MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS> --env DOTNET_ENVIRONMENT=<YOUR_DOTNET_ENVIRONMENT> -- dnx Alyio.McpMssql

Related MCP servers

MCP server for Walmart Connect Ads APIs (Sponsored Search + Display)

1
Python
MIT
View repository →

MCP server for downloading Jira and Confluence Cloud attachments by attachment ID.

0
Python
MIT
View repository →

Read-only MCP server for ClickHouse metadata, parameterized queries, and plan analysis.

0
Python
MIT
View repository →