Skip to main content
Glama
Thiago-Fernandes-Dias

SQL Server MCP Server

SQL Server MCP Server (Python)

Ein Model Context Protocol (MCP) Server in Python für die Integration mit Microsoft SQL Server-Datenbanken.

Der Server stellt vollständige Werkzeuge zur Schema-Inspektion und CRUD-Operationen (Create, Read, Update, Delete) sowie MCP-Ressourcen für den schnellen Zugriff auf Daten und Schemas bereit.

Verfügbare Werkzeuge (Tools)

Schema und Inspektion

  • list_schemas(): Listet alle Benutzerschemas der Datenbank auf.

  • list_tables(schema_name=None): Listet Tabellen und Views der Datenbank auf, mit optionaler Filterung nach Schema.

  • get_table_schema(table_name, schema_name="dbo"): Gibt strukturelle Details der Tabelle zurück (Spalten, Datentypen, Primärschlüssel, Fremdschlüssel und Identitäten).

  • get_database_schema(schema_name=None, table_name=None): Gibt das vollständige Schema der Datenbank oder ein gefiltertes Schema zurück.

CRUD-Operationen

  • read_records(table_name, schema_name="dbo", columns=None, where_clause=None, params=None, order_by=None, limit=100, offset=0): Fragt Datensätze einer Tabelle mit benutzerdefinierten Spalten, parametrisierten WHERE-Filtern, Sortierung und Paginierung ab.

  • read_query(sql_query, params=None): Führt eine benutzerdefinierte SELECT-Abfrage in T-SQL mit Unterstützung für Positionsparameter (?) aus.

  • insert_record(table_name, data, schema_name="dbo"): Fügt einen einzelnen Datensatz (Schlüssel/Wert-Wörterbuch) in eine Tabelle ein.

  • bulk_insert_records(table_name, records, schema_name="dbo"): Fügt mehrere Datensätze in einer Transaktion gebündelt ein.

  • update_records(table_name, data, where_clause, where_params=None, schema_name="dbo"): Aktualisiert Datensätze, die einer parametrisierten WHERE-Klausel entsprechen.

  • delete_records(table_name, where_clause, params=None, schema_name="dbo"): Entfernt Datensätze, die einer WHERE-Klausel entsprechen, auf sichere Weise.

  • execute_sql(sql_statement, params=None): Führt beliebige DDL/DML-Befehle aus (SELECT, INSERT, UPDATE, DELETE).

Related MCP server: SQL Server MCP

MCP-Ressourcen (Resources)

  • sqlserver://schema: Gibt das vollständige Datenbankschema im JSON-Format zurück.

  • sqlserver://tables: Gibt die Liste der verfügbaren Tabellen und Views zurück.

Installation und Konfiguration

1. Anforderungen

  • Python >= 3.10

  • SQL Server-Treiber (unterstützt pyodbc mit ODBC-Treiber für SQL Server und pymssql für reine Python-Verbindungen).

2. Umgebungskonfiguration (.env)

Erstellen Sie eine .env-Datei im Projektverzeichnis oder setzen Sie die folgenden Umgebungsvariablen:

SQLSERVER_HOST=localhost
SQLSERVER_PORT=1433
SQLSERVER_DATABASE=MeuBanco
SQLSERVER_USER=sa
SQLSERVER_PASSWORD=SuaSenha123!
SQLSERVER_DRIVER_TYPE=auto
SQLSERVER_TRUST_SERVER_CERTIFICATE=true

3. Installation

python -m venv .venv
# Windows
.\.venv\Scripts\activate
# Linux/macOS
source .venv/bin/activate

pip install -e .

Konfiguration in MCP-Clients

Beispiel für mcp.json / Client-Konfiguration

{
  "mcpServers": {
    "sql-server": {
      "command": "python",
      "args": [
        "-m",
        "sql_server_mcp.server"
      ],
      "env": {
        "SQLSERVER_HOST": "localhost",
        "SQLSERVER_PORT": "1433",
        "SQLSERVER_DATABASE": "MeuBanco",
        "SQLSERVER_USER": "sa",
        "SQLSERVER_PASSWORD": "SuaSenha123!",
        "SQLSERVER_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}

🐳 Docker und Makefile

Sie können das Makefile verwenden, um den Build und die Ausführung über Docker zu erleichtern:

# Compilar a imagem Docker
make build

# Executar o servidor MCP em container utilizando as variáveis do .env
make run

# Rodar os testes unitários dentro do container Docker
make docker-test

# Exibir ajuda dos comandos Makefile
make help

🧪 Tests

Um die Unit-Tests der Anwendung auszuführen:

pytest
Install Server
F
license - not found
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables interaction with Microsoft SQL Server instances using Windows or SQL Server authentication via native ODBC drivers. It allows users to execute SQL queries, list tables, and inspect schemas across multiple configured database environments through natural language.
    746
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    An MCP server that connects AI assistants to Microsoft SQL Server databases, enabling schema exploration and read-only queries safely.
    49
    23
    4
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A comprehensive MCP server for SQL Server database operations, enabling CRUD operations, schema exploration, and stored procedure execution through natural language.
    8
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Thiago-Fernandes-Dias/sql_server_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server