Skip to content
Cursor

Microsoft SQL Server for Cursor

io.github.alyiox/mcp-mssql

Read-only-by-default SQL Server: schema, parameterized SELECT, execution plans; writes opt-in.

client:Cursor transport:stdio runtime:nuget

Install Microsoft SQL Server in Cursor

~/.cursor/mcp.json · windows: %USERPROFILE%\.cursor\mcp.json

Held in this page only — never stored, logged, or sent anywhere but back to your screen.

{
  "mcpServers": {
    "mcp-mssql": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "Alyio.McpMssql",
        "--yes"
      ],
      "env": {
        "MCPMSSQL_CONNECTION_STRING": "<MCPMSSQL_CONNECTION_STRING>",
        "MCPMSSQL_DESCRIPTION": "<MCPMSSQL_DESCRIPTION>",
        "MCPMSSQL_QUERY_MAX_ROWS": "<MCPMSSQL_QUERY_MAX_ROWS>",
        "MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS": "<MCPMSSQL_QUERY_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS": "<MCPMSSQL_QUERY_SNAPSHOT_MAX_ROWS>",
        "MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS": "<MCPMSSQL_QUERY_SNAPSHOT_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS": "<MCPMSSQL_ANALYZE_COMMAND_TIMEOUT_SECONDS>",
        "MCPMSSQL_ALLOW_WRITE": "<MCPMSSQL_ALLOW_WRITE>",
        "MCPMSSQL_WRITE_COMMAND_TIMEOUT_SECONDS": "<MCPMSSQL_WRITE_COMMAND_TIMEOUT_SECONDS>",
        "DOTNET_ENVIRONMENT": "<DOTNET_ENVIRONMENT>"
      }
    }
  }
}

Use .cursor/mcp.json in a project root instead to scope it to that project. Cursor merges both. Cursor docs

Microsoft SQL Server in other clients