Microsoft SQL Server Connector
STDIOModel Context Protocol server for connecting to Microsoft SQL Server databases.
Model Context Protocol server for connecting to Microsoft SQL Server databases.
A Model Context Protocol (MCP) server for connecting to Microsoft SQL Server databases. This server provides tools for executing SQL queries and managing database connections.
Version Notice: This project has been upgraded to use Model Context Protocol SDK 1.9.0. See UPGRADE.md for details.
To install MSSQL MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @c0h1b4/mssql-mcp-server --client claude
npm install mssql-mcp-server
Add the server to your MCP settings configuration file:
{ "mcpServers": { "mssql": { "command": "mssql-mcp-server", "env": { "MSSQL_CONNECTION_STRING": "Server=localhost;Database=master;User Id=sa;Password=yourpassword;", // Or individual connection parameters: "MSSQL_HOST": "localhost", "MSSQL_PORT": "1433", "MSSQL_DATABASE": "master", "MSSQL_USER": "sa", "MSSQL_PASSWORD": "yourpassword", "MSSQL_ENCRYPT": "false", "MSSQL_TRUST_SERVER_CERTIFICATE": "true" } } } }
Execute a SQL query on a MSSQL database.
connectionString
(string, optional): Full connection string (alternative to individual parameters)host
(string, optional): Database server hostnameport
(number, optional): Database server port (default: 1433)database
(string, optional): Database name (default: master)username
(string, optional): Database usernamepassword
(string, optional): Database passwordquery
(string, required): SQL query to executeencrypt
(boolean, optional): Enable encryption (default: false)trustServerCertificate
(boolean, optional): Trust server certificate (default: true)Either connectionString
OR (host
+ username
+ password
) must be provided.
const result = await use_mcp_tool({ server_name: 'mssql', tool_name: 'query', arguments: { host: 'localhost', username: 'sa', password: 'yourpassword', query: 'SELECT * FROM Users', }, });
# Install dependencies npm install # Run in development mode npm run dev # Build npm run build # Run the built server npm start
# Build and start services (SQL Server + MCP server) docker-compose up # Or just build the Docker image docker build -t mssql-mcp-server .
# Run tests npm test # Run tests with coverage npm run test:coverage
The evals package loads an mcp client that then runs the index.ts file, so there is no need to rebuild between tests. You can load environment variables by prefixing the npx command. Full documentation can be found here.
OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts examples/simple-server.ts
The server includes safeguards against dangerous SQL operations:
MIT