mssql-mcp
Read-only MCP server for exploring and analyzing SQL Server objects (tables, views, triggers, stored procedures) from Claude Code.
README
mssql-mcp
Servidor MCP de solo lectura para explorar y analizar objetos de SQL Server (tablas, vistas, triggers, stored procedures) desde Claude Code.
Tools expuestas
| Tool | Qué hace |
|---|---|
list_tables |
Lista tablas (filtro opcional por esquema / patrón de nombre) |
get_table_definition |
Columnas, tipos, PK, FK e índices de una tabla |
list_views |
Lista vistas |
list_triggers |
Lista triggers, tabla dueña y eventos que disparan |
list_stored_procedures |
Lista SPs |
get_object_definition |
Código T-SQL completo de un SP/vista/trigger + parámetros |
get_object_dependencies |
Objetos referenciados por un SP/vista/trigger (impacto de cambios) |
run_select_query |
Ejecuta un SELECT (bloquea DML/DDL/EXEC, tope de 500 filas) |
1. Crear un usuario SQL de solo lectura
No uses tu usuario de aplicación ni sa. Crea un login dedicado con permisos mínimos:
CREATE LOGIN mcp_readonly WITH PASSWORD = 'una_password_fuerte';
USE NombreBaseDatos;
CREATE USER mcp_readonly FOR LOGIN mcp_readonly;
ALTER ROLE db_datareader ADD MEMBER mcp_readonly;
GRANT VIEW DEFINITION TO mcp_readonly; -- necesario para leer el texto de SPs/vistas/triggers
Esto le permite leer datos y definiciones, pero no puede insertar, modificar,
borrar ni ejecutar procedimientos. La capa de validación en db.ts es una
segunda barrera, no la principal — la principal es este usuario.
2. Instalar y compilar
cd mssql-mcp
npm install
cp .env.example .env
# edita .env con tus datos de conexión (server, database, user, password)
npm run build
3. Probar en local (opcional)
npm start
Deberías ver mssql-mcp: servidor MCP corriendo por stdio en stderr. Ctrl+C para salir.
4. Registrar el servidor en Claude Code
Desde la raíz de tu proyecto (o global con -g):
claude mcp add mssql-mcp -- node /ruta/absoluta/mssql-mcp/dist/index.js
Verifica que quedó registrado:
claude mcp list
Las variables de entorno del .env las carga el propio proceso (via dotenv),
así que no necesitas pasarlas en el comando claude mcp add. Si prefieres no
usar .env, puedes pasarlas inline:
claude mcp add mssql-mcp \
-e DB_SERVER=127.0.0.1 -e DB_DATABASE=NombreBD \
-e DB_USER=mcp_readonly -e DB_PASSWORD=xxx \
-- node /ruta/absoluta/mssql-mcp/dist/index.js
5. Flujo típico para analizar un SP
En Claude Code, dentro de tu proyecto:
Usa mssql-mcp para traer la definición del SP dbo.sp_ActualizarSaldo,
revisa sus dependencias y dime qué ajustes de performance o buenas
prácticas recomendarías (índices, SARGability, manejo de transacciones,
try/catch, etc.)
Claude Code llamará get_object_definition, opcionalmente
get_object_dependencies y get_table_definition de las tablas involucradas,
y con eso arma el análisis. Como tiene también run_select_query, puede
validar hipótesis (ej. cardinalidad de una tabla, existencia de un índice)
contra la base real.
Seguridad
- El usuario SQL debe ser de solo lectura (paso 1) — es la protección real.
run_select_queryrechaza cualquier cosa que no empiece conSELECT/WITHy bloquea palabras clave de escritura/DDL como segunda barrera.- No apuntes este MCP a una base de producción con datos sensibles sin
revisar antes qué columnas expone
db_datareader(considera vistas o máscaras si hay PII). .envestá en.gitignore— nunca subas credenciales al repo.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.