MCP Server para SQL Server con operaciones seguras
npm install @jroman871/mcp-sqlserverServidor MCP (Model Context Protocol) para conectar Claude con bases de datos SQL Server.
``bash`
npm install -g @jroman871/mcp-sqlserver
O usar directamente con npx:
`bash`
npx @jroman871/mcp-sqlserver
Agrega la siguiente configuración en tu archivo claude_desktop_config.json:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json
- Windows:
`json`
{
"mcpServers": {
"sqlserver": {
"command": "npx",
"args": ["-y", "@jroman871/mcp-sqlserver"],
"env": {
"SQLSERVER_HOST": "tu-servidor.database.windows.net",
"SQLSERVER_PORT": "1433",
"SQLSERVER_USER": "tu_usuario",
"SQLSERVER_PASSWORD": "tu_contraseña",
"SQLSERVER_DATABASE": "tu_base_de_datos"
}
}
}
}
| Variable | Descripción | Default |
|----------|-------------|---------|
| SQLSERVER_HOST | Servidor SQL Server | localhost |SQLSERVER_PORT
| | Puerto de conexión | 1433 |SQLSERVER_USER
| | Usuario de base de datos | - |SQLSERVER_PASSWORD
| | Contraseña | - |SQLSERVER_DATABASE
| | Base de datos inicial | master |SQLSERVER_TRUSTED_CONNECTION
| | Usar Windows Auth | false |
Para usar autenticación de Windows en lugar de usuario/contraseña:
`json`
{
"mcpServers": {
"sqlserver": {
"command": "npx",
"args": ["-y", "@jroman871/mcp-sqlserver"],
"env": {
"SQLSERVER_HOST": "localhost",
"SQLSERVER_DATABASE": "mi_base_de_datos",
"SQLSERVER_TRUSTED_CONNECTION": "true"
}
}
}
}
- Ejecutar consultas SELECT
- sqlserver_list_databases - Listar bases de datos
- sqlserver_list_tables - Listar tablas
- sqlserver_describe_table - Ver estructura de una tabla$3
- sqlserver_insert - Insertar datos
- sqlserver_update - Actualizar datos
- sqlserver_delete - Eliminar datos
- sqlserver_confirm - Confirmar operación pendiente$3
- sqlserver_create_table - Crear tablas
- sqlserver_create_index - Crear índices
- sqlserver_create_foreign_key - Crear foreign keys
- sqlserver_drop_index - Eliminar índices
- sqlserver_drop_constraint` - Eliminar constraintsLas operaciones de escritura (INSERT, UPDATE, DELETE) requieren confirmación explícita mediante un token temporal. Esto previene modificaciones accidentales.
MIT