MS SQL MCP Server 1.1
Eine benutzerfreundliche Brücke, mit der KI-Assistenten wie Claude Microsoft SQL Server-Datenbanken direkt abfragen und erkunden können. Keine Programmierkenntnisse erforderlich!
Was macht dieses Tool?
Mit diesem Tool können KI-Assistenten:
Ermitteln von Tabellen in Ihrer SQL Server-Datenbank
Tabellenstrukturen anzeigen (Spalten, Datentypen usw.)
Führen Sie schreibgeschützte SQL-Abfragen sicher aus
Generieren Sie SQL-Abfragen aus Anfragen in natürlicher Sprache
🌟 Warum Sie dieses Tool benötigen
Überbrücken Sie die Lücke zwischen Ihren Daten und der KI
Keine Codierung erforderlich : Geben Sie Claude und anderen KI-Assistenten direkten Zugriff auf Ihre SQL Server-Datenbanken, ohne komplexen Integrationscode schreiben zu müssen
Behalten Sie die Kontrolle : Alle Abfragen sind standardmäßig schreibgeschützt, sodass Ihre Daten sicher bleiben
Privat und sicher : Ihre Datenbankanmeldeinformationen bleiben lokal und werden niemals an externe Dienste gesendet
Praktische Vorteile
Sparen Sie Stunden manueller Arbeit : Kein Kopieren und Einfügen von Daten oder Abfrageergebnissen mehr zum Teilen mit der KI
Tiefergehende Analyse : KI kann durch Ihr gesamtes Datenbankschema navigieren und Einblicke in mehrere Tabellen liefern
Natural Language Interface : Stellen Sie Fragen zu Ihren Daten in einfachem Englisch
Beenden Sie das Kontextlimit-Problem : Greifen Sie auf große Datensätze zu, die normale KI-Kontextfenster überschreiten würden
Perfekt für
Datenanalysten , die KI-Hilfe bei der Interpretation von SQL-Daten wünschen, ohne Anmeldeinformationen weitergeben zu müssen
Entwickler , die nach einer schnellen Möglichkeit suchen, die Datenbankstruktur durch natürliche Konversation zu erkunden
Business-Analysten , die Einblicke benötigen, ohne SQL-Kenntnisse zu haben
Datenbankadministratoren , die kontrollierten Zugriff auf KI-Tools bereitstellen möchten
🚀 Kurzanleitung
Schritt 1: Voraussetzungen installieren
Installieren Sie Node.js (Version 14 oder höher)
Zugriff auf eine Microsoft SQL Server-Datenbank (vor Ort oder Azure)
Schritt 2: Klonen und Einrichten
Schritt 3: Konfigurieren Sie Ihre Datenbankverbindung
Bearbeiten Sie die .env Datei mit Ihren Datenbankanmeldeinformationen:
Schritt 4: Starten Sie den Server
Schritt 5: Probieren Sie es aus!
📊 Beispiel-Anwendungsfälle
Erkunden Sie Ihre Datenbankstruktur, ohne SQL zu schreiben
mcp_SQL_mcp_discover_database()Erhalten Sie detaillierte Informationen zu einer bestimmten Tabelle
mcp_SQL_mcp_table_details({ tableName: "Customers" })Führen Sie eine sichere Abfrage aus
mcp_SQL_mcp_execute_query({ sql: "SELECT TOP 10 * FROM Customers", returnResults: true })Tabellen nach Namensmuster suchen
mcp_SQL_mcp_discover_tables({ namePattern: "%user%" })Verwenden der Paginierung zum Navigieren in großen Ergebnismengen
// First page mcp_SQL_mcp_execute_query({ sql: "SELECT * FROM Users ORDER BY Username OFFSET 0 ROWS FETCH NEXT 10 ROWS ONLY", returnResults: true }) // Next page mcp_SQL_mcp_execute_query({ sql: "SELECT * FROM Users ORDER BY Username OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY", returnResults: true })Cursorbasierte Paginierung für optimale Leistung
// First page mcp_SQL_mcp_execute_query({ sql: "SELECT TOP 10 * FROM Users ORDER BY Username", returnResults: true }) // Next page using the last value as cursor mcp_SQL_mcp_execute_query({ sql: "SELECT TOP 10 * FROM Users WHERE Username > 'last_username' ORDER BY Username", returnResults: true })Stellen Sie Fragen in natürlicher Sprache
"Show me the top 5 customers with the most orders in the last month"
💡 Anwendungen in der realen Welt
Für Business Intelligence
Analyse der Verkaufsleistung : „Zeigen Sie mir die monatlichen Verkaufstrends des vergangenen Jahres und identifizieren Sie unsere leistungsstärksten Produkte nach Region.“
Kundensegmentierung : „Analysieren Sie unseren Kundenstamm nach Kaufhäufigkeit, durchschnittlichem Bestellwert und geografischem Standort.“
Finanzberichterstattung : „Erstellen Sie einen vierteljährlichen Gewinn- und Verlustbericht, in dem dieses Jahr mit dem letzten Jahr verglichen wird.“
Für die Datenbankverwaltung
Schemaoptimierung : „Helfen Sie mir, Tabellen mit fehlenden Indizes zu identifizieren, indem Sie die Abfrageleistungsdaten untersuchen.“
Datenqualitätsprüfung : „Finden Sie alle Kundendatensätze mit unvollständigen Informationen oder ungültigen Werten.“
Nutzungsanalyse : „Zeigen Sie mir, auf welche Tabellen am häufigsten zugegriffen wird und welche Abfragen am ressourcenintensivsten sind.“
Für die Entwicklung
API-Erkundung : „Ich erstelle eine API – helfen Sie mir, das Datenbankschema zu analysieren, um geeignete Endpunkte zu entwerfen.“
Abfrageoptimierung : „Überprüfen Sie diese komplexe Abfrage und schlagen Sie Leistungsverbesserungen vor.“
Datenbankdokumentation : „Erstellen Sie eine umfassende Dokumentation unserer Datenbankstruktur mit Erklärungen der Beziehungen.“
🖥️ Interaktive Clientfunktionen
Der mitgelieferte Client bietet eine einfache menügesteuerte Benutzeroberfläche:
Verfügbare Ressourcen auflisten – Sehen Sie, welche Informationen verfügbar sind
Liste der verfügbaren Tools – Sehen Sie, welche Aktionen Sie ausführen können
SQL-Abfrage ausführen - Führen Sie eine schreibgeschützte SQL-Abfrage aus
Tabellendetails abrufen – Struktur jeder beliebigen Tabelle anzeigen
Datenbankschema lesen - Alle Tabellen und ihre Beziehungen anzeigen
SQL-Abfrage generieren - Natürliche Sprache in SQL konvertieren
🧠 Leitfaden zur effektiven Eingabeaufforderung und Verwendung von Tools
Wenn Sie mit Claude oder anderen KI-Assistenten über diesen MCP-Server arbeiten, beeinflusst die Formulierung Ihrer Anfragen maßgeblich die Ergebnisse. So unterstützen Sie die KI bei der effektiven Nutzung der Datenbanktools:
Grundlegendes Tool-Aufrufformat
Wenn Sie eine KI auffordern, dieses Tool zu verwenden, folgen Sie dieser Struktur:
Wichtige Befehle und Syntax
Hier sind die wichtigsten Tools und ihre korrekte Syntax:
Wann welches Werkzeug verwendet werden soll:
Datenbankerkennung : Beginnen Sie damit, wenn die KI mit Ihrer Datenbankstruktur nicht vertraut ist.
Tabellendetails : Verwenden Sie diese Option, wenn Sie sich vor dem Schreiben von Abfragen auf eine bestimmte Tabelle konzentrieren.
Abfrageausführung : Wenn Sie tatsächliche Daten abrufen oder analysieren müssen.
Tabellenerkennung nach Muster : Bei der Suche nach Tabellen, die sich auf eine bestimmte Domäne beziehen.
Effektive Aufforderungsmuster
Schritt-für-Schritt-Workflows
Führen Sie die KI bei komplexen Aufgaben durch eine Reihe von Schritten:
Erst strukturieren, dann abfragen
Bitten Sie um Erklärungen
Hinweise zum SQL Server-Dialekt
Erinnern Sie die KI an die spezifische Syntax von SQL Server:
Korrigieren der Werkzeugnutzung
Wenn die KI eine falsche Syntax verwendet, können Sie ihr folgendermaßen helfen:
Fehlerbehebung durch Eingabeaufforderungen
Wenn die KI mit einer Datenbankaufgabe zu kämpfen hat, versuchen Sie diese Ansätze:
Seien Sie bei Tabellen genauer: „Bevor Sie diese Abfrage schreiben, prüfen Sie, ob die Tabelle CustomerOrders vorhanden ist und welche Spalten sie hat.“
Teilen Sie komplexe Aufgaben in Schritte auf: „Gehen wir Schritt für Schritt vor. Sehen Sie sich zunächst die Struktur der Produkttabelle an. Überprüfen Sie dann die Tabelle „Bestellungen“ …“
Fordern Sie Zwischenergebnisse an: „Führen Sie zunächst eine einfache Abfrage für diese Tabelle aus, damit wir das Datenformat überprüfen können, bevor wir eine komplexere Analyse versuchen.“
Abfrageerklärungen anfordern: „Erklären Sie nach dem Schreiben dieser Abfrage, was jeder Teil bewirkt, damit ich überprüfen kann, ob er das tut, was ich brauche.“
🔎 Erweiterte Abfragefunktionen
Tischentdeckung und -erkundung
Der MCP-Server bietet leistungsstarke Tools zum Erkunden Ihrer Datenbankstruktur:
Musterbasierte Tabellenerkennung : Finden Sie Tabellen, die bestimmten Mustern entsprechen
mcp_SQL_mcp_discover_tables({ namePattern: "%order%" })Schemaübersicht : Erhalten Sie eine Übersicht über die Tabellen nach Schema
mcp_SQL_mcp_execute_query({ sql: "SELECT TABLE_SCHEMA, COUNT(*) AS TableCount FROM INFORMATION_SCHEMA.TABLES GROUP BY TABLE_SCHEMA" })Spaltenerkundung : Untersuchen Sie Spaltenmetadaten für jede Tabelle
mcp_SQL_mcp_table_details({ tableName: "dbo.Users" })
Paginierungstechniken
Der Server unterstützt mehrere Paginierungsmethoden für die Verarbeitung großer Datensätze:
Offset/Fetch-Paginierung : Standard-SQL-Paginierung mit OFFSET und FETCH
mcp_SQL_mcp_execute_query({ sql: "SELECT * FROM Users ORDER BY Username OFFSET 0 ROWS FETCH NEXT 10 ROWS ONLY" })Cursorbasierte Paginierung : Effizienter für große Datensätze
// Get first page mcp_SQL_mcp_execute_query({ sql: "SELECT TOP 10 * FROM Users ORDER BY Username" }) // Get next page using last value as cursor mcp_SQL_mcp_execute_query({ sql: "SELECT TOP 10 * FROM Users WHERE Username > 'last_username' ORDER BY Username" })Mit Daten zählen : Gesamtanzahl zusammen mit paginierten Daten abrufen
mcp_SQL_mcp_execute_query({ sql: "WITH TotalCount AS (SELECT COUNT(*) AS Total FROM Users) SELECT TOP 10 u.*, t.Total FROM Users u CROSS JOIN TotalCount t ORDER BY Username" })
Komplexe Verknüpfungen und Beziehungen
Untersuchen Sie Beziehungen zwischen Tabellen mit Verknüpfungsvorgängen:
Analytische Abfragen
Führen Sie Aggregationen und analytische Abfragen aus, um Erkenntnisse zu gewinnen:
Verwenden von SQL Server-Funktionen
Der MCP-Server unterstützt SQL Server-spezifische Funktionen:
Gemeinsame Tabellenausdrücke (CTEs)
Fensterfunktionen
JSON-Operationen
Hierarchische Abfragen
Volltextsuche (sofern in Ihrer Datenbank konfiguriert)
🔗 Integrationsoptionen
Claude Desktop Integration
Verbinden Sie dieses Tool in wenigen einfachen Schritten direkt mit Claude Desktop:
Installieren Sie Claude Desktop von anthropic.com
Bearbeiten Sie Claudes Konfigurationsdatei:
Speicherort:
~/Library/Application Support/Claude/claude_desktop_config.jsonFügen Sie diese Konfiguration hinzu:
Ersetzen Sie
/FULL/PATH/TO/durch den tatsächlichen Pfad, in den Sie dieses Repository geklont habenStarten Sie Claude Desktop neu
Suchen Sie in Claude Desktop nach dem Tool-Symbol – Sie können jetzt Datenbankbefehle direkt verwenden!
Herstellen einer Verbindung mit Cursor IDE
Cursor ist ein KI-gestützter Code-Editor, der dieses Tool für erweiterte Datenbankinteraktionen nutzen kann. So richten Sie ihn ein:
Setup im Cursor
Öffnen Sie die Cursor-IDE (laden Sie sie von cursor.sh herunter, wenn Sie sie nicht haben)
Starten Sie den MS SQL MCP-Server mithilfe des HTTP/SSE-Transports:
npm run start:sseErstellen Sie einen neuen Arbeitsbereich oder öffnen Sie ein vorhandenes Projekt in Cursor
Cursoreinstellungen eingeben
Klicken Sie auf MCP
Neuen MCP-Server hinzufügen
Benennen Sie Ihren MCP-Server und wählen Sie den Typ: sse
Geben Sie die Server-URL wie folgt ein: localhost:3333/sse (oder den Port, auf dem es ausgeführt wird).
Verwenden von Datenbankbefehlen im Cursor
Sobald die Verbindung hergestellt ist, können Sie MCP-Befehle direkt im KI-Chat von Cursor verwenden:
Bitten Sie Claude in Cursor, Ihre Datenbank zu erkunden:
Can you show me the tables in my database?Führen Sie bestimmte Abfragen aus:
Query the top 10 records from the Customers tableGenerieren und Ausführen komplexer Abfragen:
Find all orders from the last month with a value over $1000
Fehlerbehebung bei der Cursorverbindung
Stellen Sie sicher, dass der MS SQL MCP-Server mit dem HTTP/SSE-Transport ausgeführt wird
Überprüfen Sie, ob der Port korrekt ist und mit dem in Ihrer .env-Datei übereinstimmt
Stellen Sie sicher, dass Ihre Firewall die Verbindung nicht blockiert
Wenn Sie eine andere IP/einen anderen Hostnamen verwenden, aktualisieren Sie die SERVER_URL in Ihrer .env-Datei
🔄 Transportmethoden erklärt
Option 1: stdio-Transport (Standard)
Am besten geeignet für: Direkte Verwendung mit Claude Desktop oder dem mitgelieferten Client
Option 2: HTTP/SSE-Transport
Am besten geeignet für: Netzwerkzugriff oder Verwendung mit Webanwendungen
🛡️ Sicherheitsfunktionen
Standardmäßig schreibgeschützt : Kein Risiko der Datenänderung
Private Anmeldeinformationen : Datenbankverbindungsdetails bleiben in Ihrer
.envDateiSchutz vor SQL-Injection : Integrierte Validierung für SQL-Abfragen
🔎 Fehlerbehebung für neue Benutzer
„Verbindung zur Datenbank kann nicht hergestellt werden“
Überprüfen Sie Ihre
.envDatei auf korrekte DatenbankanmeldeinformationenStellen Sie sicher, dass Ihr SQL Server ausgeführt wird und Verbindungen akzeptiert
Überprüfen Sie für Azure SQL, ob Ihre IP in den Firewall-Einstellungen zulässig ist
Fehler „Modul nicht gefunden“
Führen Sie
npm installerneut aus, um sicherzustellen, dass alle Abhängigkeiten installiert sindStellen Sie sicher, dass Sie Node.js Version 14 oder höher verwenden
„Transportfehler“ oder „Verbindung abgelehnt“
Überprüfen Sie für den HTTP/SSE-Transport, ob der PORT in Ihrer .env verfügbar ist
Stellen Sie sicher, dass keine Firewall die Verbindung blockiert
Claude Desktop kann keine Verbindung herstellen
Überprüfen Sie den Pfad in Ihrer
claude_desktop_config.jsonStellen Sie sicher, dass Sie absolute Pfade verwenden, keine relativen
Starten Sie Claude Desktop nach den Änderungen vollständig neu
📚 SQL Server-Grundlagen verstehen
Wenn Sie mit SQL Server noch nicht vertraut sind, sind hier einige wichtige Konzepte:
Tabellen : Speichern Sie Ihre Daten in Zeilen und Spalten
Schemata : Logische Gruppierungen von Tabellen (wie Ordner)
Abfragen : Befehle zum Abrufen oder Analysieren von Daten
Ansichten : Vordefinierte Abfragen für einfachen Zugriff gespeichert
Mit diesem Tool können Sie all dies erkunden, ohne ein SQL-Experte sein zu müssen!
🏗️ Architektur und Kernmodule
Der MS SQL MCP-Server basiert auf einer modularen Architektur, die Aspekte der Wartbarkeit und Erweiterbarkeit voneinander trennt:
Kernmodule
database.mjs – Datenbankkonnektivität
Verwaltet das SQL Server-Verbindungspooling
Bietet Abfrageausführung mit Wiederholungslogik und Fehlerbehandlung
Verwaltet Datenbankverbindungen, Transaktionen und Konfiguration
Enthält Dienstprogramme zum Bereinigen von SQL- und Formatierungsfehlern
tools.mjs - Werkzeugregistrierung
Registriert alle Datenbanktools beim MCP-Server
Implementiert Toolvalidierung und Parameterprüfung
Bietet Kernfunktionen für SQL-Abfragen, Tabellenexploration und Datenbankerkennung
Ordnet Toolaufrufe Datenbankvorgängen zu
resources.mjs – Datenbankressourcen
Stellt Datenbankmetadaten über Ressourcenendpunkte bereit
Bietet Schemainformationen, Tabellenlisten und Verfahrensdokumentation
Formatiert Datenbankstrukturinformationen für die KI-Nutzung
Enthält Discovery-Dienstprogramme zur Datenbank-Exploration
pagination.mjs - Ergebnisnavigation
Implementiert eine Cursor-basierte Paginierung für große Ergebnismengen
Bietet Dienstprogramme zum Generieren von Cursorn für die nächste/vorherige Seite
Transformiert SQL-Abfragen zur Unterstützung der Paginierung
Verarbeitet die OFFSET/FETCH-Paginierungssyntax von SQL Server
errors.mjs - Fehlerbehandlung
Definiert benutzerdefinierte Fehlertypen für verschiedene Fehlerszenarien
Implementiert die JSON-RPC-Fehlerformatierung
Bietet menschenlesbare Fehlermeldungen
Enthält Middleware für die globale Fehlerbehandlung
logger.mjs - Protokollierungssystem
Konfiguriert Winston-Protokollierung mit mehreren Transporten
Bietet kontextbezogene Anforderungsprotokollierung
Verarbeitet die Protokollrotation und -formatierung
Erfasst nicht erfasste Ausnahmen und nicht behandelte Ablehnungen
Wie diese Module zusammenarbeiten
Wenn ein Tool-Aufruf empfangen wird, leitet der MCP-Server ihn an den entsprechenden Handler in
tools.mjsweiterDer Toolhandler validiert Parameter und erstellt eine Datenbankabfrage
Die Abfrage wird über Funktionen in
database.mjsausgeführt, mit möglicher Paginierung auspagination.mjsDie Ergebnisse werden formatiert und an den Kunden zurückgegeben
Eventuelle Fehler werden abgefangen und durch
errors.mjsverarbeitetAlle Vorgänge werden über
logger.mjsprotokolliert
Diese Architektur gewährleistet:
Klare Trennung der Belange
Konsistente Fehlerbehandlung
Umfassende Protokollierung
Effizientes Datenbankverbindungsmanagement
Skalierbare Abfrageausführung
⚙️ Erläuterung der Umgebungskonfiguration
Die .env -Datei steuert, wie der MS SQL MCP-Server eine Verbindung zu Ihrer Datenbank herstellt und arbeitet. Hier ist eine detaillierte Erklärung der einzelnen Einstellungen:
Erläuterung der Verbindungstypen
stdio Transport
Verwenden Sie diese Option, wenn Sie eine direkte Verbindung mit Claude Desktop herstellen
Die Kommunikation erfolgt über Standard-Ein-/Ausgabeströme
Legen Sie
TRANSPORT=stdioin Ihrer .env-Datei festAusführen mit
npm start
HTTP/SSE-Transport
Verwenden Sie diese Option bei einer Verbindung über ein Netzwerk (z. B. mit Cursor IDE).
Verwendet Server-Sent Events (SSE) für Echtzeitkommunikation
Setzen Sie
TRANSPORT=ssein Ihrer .env-DateiKonfigurieren Sie
SERVER_URLso, dass es mit Ihrer Serveradresse übereinstimmtAusführen mit
npm run start:sse
Beispiele für SQL Server-Verbindungen
Lokaler SQL Server
Azure SQL-Datenbank
Abfrageergebnisspeicher
Abfrageergebnisse werden als JSON-Dateien im durch QUERY_RESULTS_PATH angegebenen Verzeichnis gespeichert. Dadurch wird verhindert, dass große Ergebnismengen die Konversation überlasten. Sie haben folgende Möglichkeiten:
Lassen Sie dieses Feld leer, um das Standardverzeichnis
query-resultsim Projekt zu verwenden.Legen Sie einen benutzerdefinierten Pfad wie
/Users/username/Documents/query-resultsfestGreifen Sie mithilfe der in der Toolantwort angegebenen UUID auf gespeicherte Ergebnisse zu
📝 Lizenz
ISC
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
Eine benutzerfreundliche Brücke, mit der KI-Assistenten wie Claude und Cursor IDE Microsoft SQL Server-Datenbanken direkt abfragen und erkunden können. Keine Programmierkenntnisse erforderlich!
- Was macht dieses Tool?
- 🌟 Warum Sie dieses Tool benötigen
- 🚀 Kurzanleitung
- 📊 Beispiel-Anwendungsfälle
- 💡 Anwendungen in der realen Welt
- 🖥️ Interaktive Clientfunktionen
- 🧠 Leitfaden zur effektiven Eingabeaufforderung und Verwendung von Tools
- 🔎 Erweiterte Abfragefunktionen
- 🔗 Integrationsoptionen
- 🔄 Transportmethoden erklärt
- 🛡️ Sicherheitsfunktionen
- 🔎 Fehlerbehebung für neue Benutzer
- 📚 SQL Server-Grundlagen verstehen
- 🏗️ Architektur und Kernmodule
- ⚙️ Erläuterung der Umgebungskonfiguration
- 📝 Lizenz
Related Resources
Related MCP Servers
- -security-license-qualityActs as a bridge between Claude's desktop application and the Cursor editor, enabling seamless AI-powered automation and multi-instance management across platforms with standardized communication and secure token-based authentication.Last updated -067MIT License
- -security-license-qualityA Model Context Protocol server that enables AI assistants to explore and interact with Cursor IDE's SQLite databases, providing access to project data, chat history, and composer information.Last updated -21
- -security-license-qualityA tool that provides simple API to execute SQL queries and manage MySQL databases, designed to integrate with Cursor IDE for AI assistants to directly perform database operations.Last updated -
- -security-license-qualityA bridge that allows AI assistants like Claude to directly query and explore Microsoft SQL Server databases without requiring coding experience.Last updated -GPL 3.0