A Model Context Protocol (MCP) server for secure SQL Server database access through Claude Desktop.
- π List database tables
- π Execute SQL queries (SELECT, INSERT, UPDATE, DELETE)
- π Multiple authentication methods (SQL, Windows, Azure AD)
- π’ LocalDB and Azure SQL support
- π Custom port configuration
Add to your claude_desktop_config.json:
{ "mcpServers": { "mssql": { "command": "uvx", "args": ["microsoft_sql_server_mcp"], "env": { "MSSQL_SERVER": "localhost", "MSSQL_DATABASE": "your_database", "MSSQL_USER": "your_username", "MSSQL_PASSWORD": "your_password" } } } }MSSQL_SERVER=localhost # Required MSSQL_DATABASE=your_database # Required MSSQL_USER=your_username # Required for SQL auth MSSQL_PASSWORD=your_password # Required for SQL authMSSQL_SERVER=localhost MSSQL_DATABASE=your_database MSSQL_WINDOWS_AUTH=true # Use Windows credentialsMSSQL_SERVER=your-server.database.windows.net MSSQL_DATABASE=your_database MSSQL_USER=your_username MSSQL_PASSWORD=your_password # Encryption is automatic for AzureMSSQL_PORT=1433 # Custom port (default: 1433) MSSQL_ENCRYPT=true # Force encryptionpip install microsoft_sql_server_mcpThen in claude_desktop_config.json:
{ "mcpServers": { "mssql": { "command": "python", "args": ["-m", "mssql_mcp_server"], "env": { ... } } } }git clone https://github.com/RichardHan/mssql_mcp_server.git cd mssql_mcp_server pip install -e .- Create a dedicated SQL user with minimal permissions
- Never use admin/sa accounts
- Use Windows Authentication when possible
- Enable encryption for sensitive data
MIT