MongoDB MCP Server

Official
by mongodb-js
Apache 2.0
1,930
136
  • Apple
  • Linux
Integrations
  • Enables GitHub Copilot to interact with MongoDB databases through the MCP server, allowing natural language queries and operations against MongoDB resources.

  • Provides tools for interacting with MongoDB Atlas resources and databases, supporting operations like querying, aggregation, document creation/modification, collection management, index creation, and database administration.

MongoDB MCP-Server

Ein Model Context Protocol-Server für die Interaktion mit MongoDB-Datenbanken und MongoDB Atlas.

📚 Inhaltsverzeichnis

Voraussetzungen

  • Node.js (v20.10.0 oder höher)
node -v
  • Eine MongoDB-Verbindungszeichenfolge oder Atlas-API-Anmeldeinformationen. Der Server wird nicht gestartet, sofern nicht eine entsprechende Konfiguration vorgenommen wurde .
    • Für die Nutzung der Atlas-Tools sind Atlas-API-Anmeldeinformationen für Servicekonten erforderlich. Sie können in MongoDB Atlas ein Servicekonto erstellen und dessen Anmeldeinformationen zur Authentifizierung verwenden. Weitere Informationen finden Sie unter Atlas-API-Zugriff .
    • Wenn Sie über eine MongoDB-Verbindungszeichenfolge verfügen, können Sie diese direkt verwenden, um eine Verbindung zu Ihrer MongoDB-Instanz herzustellen.

Aufstellen

Schnellstart

Für die meisten MCP-Clients muss zum Hinzufügen des MCP-Servers eine Konfigurationsdatei erstellt oder geändert werden.

Hinweis: Die Syntax der Konfigurationsdatei kann je nach Client unterschiedlich sein. Die aktuell erwartete Syntax finden Sie unter den folgenden Links:

Option 1: Verbindungszeichenfolgenargumente

Sie können Ihre Verbindungszeichenfolge über Argumente übergeben. Achten Sie darauf, einen gültigen Benutzernamen und ein gültiges Kennwort zu verwenden.

{ "mcpServers": { "MongoDB": { "command": "npx", "args": [ "-y", "mongodb-mcp-server", "--connectionString", "mongodb://localhost:27017/myDatabase" ] } } }

HINWEIS: Die Verbindungszeichenfolge kann so konfiguriert werden, dass eine Verbindung zu jedem MongoDB-Cluster hergestellt wird, unabhängig davon, ob es sich um eine lokale Instanz oder einen Atlas-Cluster handelt.

Option 2: Atlas-API-Anmeldeinformationen-Argumente

Verwenden Sie die Anmeldeinformationen Ihres Atlas API-Dienstkontos. Befolgen Sie alle Schritte im Abschnitt „Atlas API-Zugriff“ .

{ "mcpServers": { "MongoDB": { "command": "npx", "args": [ "-y", "mongodb-mcp-server", "--apiClientId", "your-atlas-service-accounts-client-id", "--apiClientSecret", "your-atlas-service-accounts-client-secret" ] } } }

Option 3: Standalone-Dienst mit Befehlsargumenten

Starten Sie den Server mit dem Befehl npx:

npx -y mongodb-mcp-server --apiClientId="your-atlas-service-accounts-client-id" --apiClientSecret="your-atlas-service-accounts-client-secret"
Option 4: Standalone-Dienst mit Umgebungsvariablen
npx -y mongodb-mcp-server

Sie können Umgebungsvariablen in der Konfigurationsdatei verwenden oder sie festlegen und den Server über npx ausführen.

  • Verbindungszeichenfolge über Umgebungsvariablen im Beispiel der MCP-Datei
  • Atlas-API-Anmeldeinformationen über Umgebungsvariablen im Beispiel der MCP-Datei

🛠️ Unterstützte Tools

Werkzeugliste

MongoDB Atlas Tools
  • atlas-list-orgs – Listet MongoDB Atlas-Organisationen auf
  • atlas-list-projects – Listet MongoDB Atlas-Projekte auf
  • atlas-create-project – Erstellt ein neues MongoDB Atlas-Projekt
  • atlas-list-clusters – Listet MongoDB Atlas-Cluster auf
  • atlas-inspect-cluster – Untersuchen Sie einen bestimmten MongoDB Atlas-Cluster
  • atlas-create-free-cluster – Erstellen Sie einen kostenlosen MongoDB Atlas-Cluster
  • atlas-connect-cluster – Stellt eine Verbindung zum MongoDB Atlas-Cluster her
  • atlas-inspect-access-list – Überprüfen Sie IP/CIDR-Bereiche mit Zugriff auf MongoDB Atlas-Cluster
  • atlas-create-access-list – IP/CIDR-Zugriffsliste für MongoDB Atlas-Cluster konfigurieren
  • atlas-list-db-users – Listet MongoDB Atlas-Datenbankbenutzer auf
  • atlas-create-db-user – Erstellt einen MongoDB Atlas-Datenbankbenutzer
  • atlas-list-alerts – MongoDB Atlas-Warnmeldungen für ein Projekt auflisten

HINWEIS: Atlas-Tools sind nur verfügbar, wenn Sie im Konfigurationsabschnitt Anmeldeinformationen festlegen.

MongoDB-Datenbanktools
  • connect - Verbindung zu einer MongoDB-Instanz herstellen
  • find - Führen Sie eine Suchabfrage für eine MongoDB-Sammlung aus
  • aggregate - Führen Sie eine Aggregation für eine MongoDB-Sammlung aus
  • count - Anzahl der Dokumente in einer MongoDB-Sammlung ermitteln
  • insert-one - Fügt ein einzelnes Dokument in eine MongoDB-Sammlung ein
  • insert-many - Mehrere Dokumente in eine MongoDB-Sammlung einfügen
  • create-index - Erstellen Sie einen Index für eine MongoDB-Sammlung
  • update-one - Aktualisieren Sie ein einzelnes Dokument in einer MongoDB-Sammlung
  • update-many - Mehrere Dokumente in einer MongoDB-Sammlung aktualisieren
  • rename-collection - Umbenennen einer MongoDB-Sammlung
  • delete-one - Löschen Sie ein einzelnes Dokument aus einer MongoDB-Sammlung
  • delete-many - Löschen Sie mehrere Dokumente aus einer MongoDB-Sammlung
  • drop-collection - Entfernen Sie eine Sammlung aus einer MongoDB-Datenbank
  • drop-database - Entfernen einer MongoDB-Datenbank
  • list-databases - Listet alle Datenbanken für eine MongoDB-Verbindung auf
  • list-collections - Listet alle Sammlungen für eine bestimmte Datenbank auf
  • collection-indexes - Beschreiben Sie die Indizes für eine Sammlung
  • collection-schema - Beschreiben Sie das Schema für eine Sammlung
  • collection-storage-size - Größe einer Sammlung in MB ermitteln
  • db-stats - Gibt Statistiken zu einer MongoDB-Datenbank zurück

Konfiguration

Der MongoDB MCP-Server kann mit mehreren Methoden konfiguriert werden, mit der folgenden Priorität (von der höchsten zur niedrigsten):

  1. Befehlszeilenargumente
  2. Umgebungsvariablen

Konfigurationsoptionen

OptionBeschreibung
apiClientIdAtlas API-Client-ID zur Authentifizierung
apiClientSecretAtlas-API-Client-Geheimnis zur Authentifizierung
connectionStringMongoDB-Verbindungszeichenfolge für direkte Datenbankverbindungen (optional können Benutzer diese bei jedem Tool-Aufruf angeben)
logPathOrdner zum Speichern von Protokollen
disabledToolsEine Reihe von Werkzeugnamen, Operationstypen und/oder Werkzeugkategorien, die deaktiviert werden
readOnlyWenn auf „true“ gesetzt, sind nur Lese- und Metadatenoperationstypen zulässig, wodurch Erstellungs-/Aktualisierungs-/Löschoperationen deaktiviert werden.
telemetryWenn diese Option deaktiviert ist, wird die Telemetrieerfassung deaktiviert.
Protokollpfad

Der Standardspeicherort des Protokolls ist wie folgt:

  • Windows: %LOCALAPPDATA%\mongodb\mongodb-mcp\.app-logs
  • macOS/Linux: ~/.mongodb/mongodb-mcp/.app-logs
Deaktivierte Tools

Mit der Option disabledTools können Sie bestimmte Werkzeuge oder Werkzeugkategorien deaktivieren. Diese Option akzeptiert ein Array von Zeichenfolgen, wobei jede Zeichenfolge ein Werkzeugname, ein Vorgangstyp oder eine Kategorie sein kann.

Die Art und Weise, wie das Array erstellt wird, hängt von der Art der von Ihnen verwendeten Konfigurationsmethode ab:

  • Verwenden Sie für die Konfiguration von Umgebungsvariablen eine durch Kommas getrennte Zeichenfolge: export MDB_MCP_DISABLED_TOOLS="create,update,delete,atlas,collectionSchema" .
  • Verwenden Sie für die Konfiguration von Befehlszeilenargumenten eine durch Leerzeichen getrennte Zeichenfolge: --disabledTools create update delete atlas collectionSchema .

Werkzeugkategorien:

  • atlas – MongoDB Atlas-Tools, z. B. Cluster auflisten, Cluster erstellen usw.
  • mongodb – MongoDB-Datenbanktools wie Suchen, Aggregieren usw.

Betriebsarten:

  • create – Tools zum Erstellen von Ressourcen, z. B. Cluster erstellen, Dokument einfügen usw.
  • update – Tools zum Aktualisieren von Ressourcen, z. B. zum Aktualisieren von Dokumenten, Umbenennen von Sammlungen usw.
  • delete – Tools zum Löschen von Ressourcen, z. B. Dokumente löschen, Sammlungen löschen usw.
  • read – Tools, die Ressourcen lesen, z. B. Suchen, Aggregieren, Cluster auflisten usw.
  • metadata – Tools, die Metadaten lesen, wie Listendatenbanken, Listensammlungen, Sammlungsschemata usw.
Schreibgeschützter Modus

Mit der Konfigurationsoption readOnly können Sie den MCP-Server so einschränken, dass nur Tools mit den Operationstypen „Lesen“ und „Metadaten“ verwendet werden. Wenn diese Option aktiviert ist, werden Tools mit den Operationstypen „Erstellen“, „Aktualisieren“ oder „Löschen“ nicht beim Server registriert.

Dies ist für Szenarien nützlich, in denen Sie Zugriff auf MongoDB-Daten zur Analyse gewähren möchten, ohne Änderungen an den Daten oder der Infrastruktur zuzulassen.

Sie können den schreibgeschützten Modus folgendermaßen aktivieren:

  • Umgebungsvariable : export MDB_MCP_READ_ONLY=true
  • Befehlszeilenargument : --readOnly

Wenn der schreibgeschützte Modus aktiv ist, wird in den Serverprotokollen eine Meldung angezeigt, die angibt, welche Tools sich aufgrund dieser Einschränkung nicht registrieren konnten.

Telemetrie

Mit der telemetry können Sie die Telemetrieerfassung deaktivieren. Wenn diese Option aktiviert ist, sammelt der MCP-Server Nutzungsdaten und sendet sie an MongoDB.

Sie können die Telemetrie folgendermaßen deaktivieren:

  • Umgebungsvariable : export MDB_MCP_TELEMETRY=disabled
  • Befehlszeilenargument : --telemetry disabled
  • Umgebungsvariable DO_NOT_TRACK : export DO_NOT_TRACK=1

Atlas-API-Zugriff

Um die Atlas-API-Tools zu verwenden, müssen Sie ein Dienstkonto in MongoDB Atlas erstellen:

  1. Erstellen Sie ein Dienstkonto:
    • Melden Sie sich bei MongoDB Atlas unter cloud.mongodb.com an.
    • Navigieren Sie zu Access Manager > Organisationszugriff
    • Klicken Sie auf „Neu hinzufügen“ > „Anwendungen“ > „Dienstkonten“.
    • Geben Sie den Namen, die Beschreibung und das Ablaufdatum Ihres Service-Kontos ein (z. B. „MCP, MCP-Serverzugriff, 7 Tage“).
    • Wählen Sie die entsprechenden Berechtigungen aus (für Vollzugriff verwenden Sie „Organisationseigentümer“)
    • Klicken Sie auf „Erstellen“

Weitere Informationen zu Dienstkonten finden Sie in der MongoDB Atlas-Dokumentation .

  1. Client-Anmeldeinformationen speichern:
    • Nach der Erstellung werden Ihnen die Client-ID und das Client-Geheimnis angezeigt
    • Wichtig: Kopieren und speichern Sie das Client Secret sofort, da es nicht mehr angezeigt wird
  2. Zugriffslisteneintrag hinzufügen:
    • Fügen Sie Ihre IP-Adresse zur API-Zugriffsliste hinzu
  3. Konfigurieren Sie den MCP-Server:
    • Verwenden Sie eine der folgenden Konfigurationsmethoden, um Ihre apiClientId und apiClientSecret festzulegen

Konfigurationsmethoden

Umgebungsvariablen

Legen Sie Umgebungsvariablen mit dem Präfix MDB_MCP_ fest, gefolgt vom Optionsnamen in Großbuchstaben mit Unterstrichen:

# Set Atlas API credentials (via Service Accounts) export MDB_MCP_API_CLIENT_ID="your-atlas-service-accounts-client-id" export MDB_MCP_API_CLIENT_SECRET="your-atlas-service-accounts-client-secret" # Set a custom MongoDB connection string export MDB_MCP_CONNECTION_STRING="mongodb+srv://username:password@cluster.mongodb.net/myDatabase" export MDB_MCP_LOG_PATH="/path/to/logs"
Beispiele für MCP-Konfigurationsdateien
Verbindungszeichenfolge mit Umgebungsvariablen
{ "mcpServers": { "MongoDB": { "command": "npx", "args": ["-y", "mongodb-mcp-server"], "env": { "MDB_MCP_CONNECTION_STRING": "mongodb+srv://username:password@cluster.mongodb.net/myDatabase" } } } }
Atlas-API-Anmeldeinformationen mit Umgebungsvariablen
{ "mcpServers": { "MongoDB": { "command": "npx", "args": ["-y", "mongodb-mcp-server"], "env": { "MDB_MCP_API_CLIENT_ID": "your-atlas-service-accounts-client-id", "MDB_MCP_API_CLIENT_SECRET": "your-atlas-service-accounts-client-secret" } } } }
Befehlszeilenargumente

Übergeben Sie beim Starten des Servers Konfigurationsoptionen als Befehlszeilenargumente:

npx -y mongodb-mcp-server --apiClientId="your-atlas-service-accounts-client-id" --apiClientSecret="your-atlas-service-accounts-client-secret" --connectionString="mongodb+srv://username:password@cluster.mongodb.net/myDatabase" --logPath=/path/to/logs
Beispiele für MCP-Konfigurationsdateien
Verbindungszeichenfolge mit Befehlszeilenargumenten
{ "mcpServers": { "MongoDB": { "command": "npx", "args": [ "-y", "mongodb-mcp-server", "--connectionString", "mongodb+srv://username:password@cluster.mongodb.net/myDatabase" ] } } }
Atlas-API-Anmeldeinformationen mit Befehlszeilenargumenten
{ "mcpServers": { "MongoDB": { "command": "npx", "args": [ "-y", "mongodb-mcp-server", "--apiClientId", "your-atlas-service-accounts-client-id", "--apiClientSecret", "your-atlas-service-accounts-client-secret" ] } } }

🤝 Beitragen

Möchten Sie mitwirken? Super! In unserem Leitfaden für Mitwirkende finden Sie Richtlinien zu Codebeiträgen, Standards, dem Hinzufügen neuer Tools und Informationen zur Fehlerbehebung.

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Ein Model Context Protocol-Server, der es KI-Assistenten ermöglicht, über natürliche Sprache mit MongoDB Atlas-Ressourcen zu interagieren und Datenbankoperationen und Atlas-Verwaltungsfunktionen zu unterstützen.

  1. 📚 Inhaltsverzeichnis
    1. Voraussetzungen
      1. Aufstellen
        1. Schnellstart
        2. Option 3: Standalone-Dienst mit Befehlsargumenten
      2. 🛠️ Unterstützte Tools
        1. Werkzeugliste
      3. Konfiguration
        1. Konfigurationsoptionen
        2. Atlas-API-Zugriff
        3. Konfigurationsmethoden
      4. 🤝 Beitragen

        Related MCP Servers

        • A
          security
          A
          license
          A
          quality
          A Model Context Protocol server that provides read-only access to MongoDB databases, enabling AI assistants to directly query and analyze MongoDB data while maintaining data safety.
          Last updated -
          14
          9
          2
          JavaScript
          MIT License
          • Apple
        • -
          security
          A
          license
          -
          quality
          An MCP server that enables users to create and manage MongoDB Atlas clusters, users, and network access through natural language commands.
          Last updated -
          74
          10
          JavaScript
          MIT License
          • Apple
          • Linux
        • -
          security
          A
          license
          -
          quality
          An MCP server that enables large language models to interact directly with MongoDB databases, allowing them to query collections, inspect schemas, and manage data through natural language.
          Last updated -
          340
          MIT License
          • Apple
        • -
          security
          -
          license
          -
          quality
          A Model Context Protocol server that enables AI models to interact with both MySQL and MongoDB databases through a standardized interface, supporting comprehensive database operations including queries, schema management, and CRUD operations.
          Last updated -
          6
          JavaScript
          MIT License

        View all related MCP servers

        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/mongodb-js/mongodb-mcp-server'

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