Skip to main content
Glama
rajath-raman

mongodb-mcp-server

by rajath-raman

Install in VS Code Install in Cursor View on Smithery

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 neuer)

node -v
  • Ein MongoDB-Verbindungsstring oder Atlas-API-Anmeldedaten, der Server startet nicht, wenn er nicht konfiguriert ist.

    • Atlas-API-Anmeldedaten für Service-Konten sind erforderlich, um die Atlas-Tools zu verwenden. Sie können ein Service-Konto in MongoDB Atlas erstellen und dessen Anmeldedaten für die Authentifizierung verwenden. Weitere Details finden Sie unter Atlas-API-Zugriff.

    • Wenn Sie einen MongoDB-Verbindungsstring haben, können Sie ihn direkt verwenden, um eine Verbindung zu Ihrer MongoDB-Instanz herzustellen.

Einrichtung

Schnellstart

Hinweis: Wenn Sie Atlas-API-Anmeldedaten verwenden, weisen Sie Ihrem Service-Konto nur die minimal erforderlichen Berechtigungen zu. Details finden Sie unter Atlas-API-Berechtigungen.

Die meisten MCP-Clients erfordern, dass eine Konfigurationsdatei erstellt oder geändert wird, um den MCP-Server hinzuzufügen.

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

Option 1: Verbindungsstring-Argumente

Sie können Ihren Verbindungsstring über Argumente übergeben. Stellen Sie sicher, dass Sie einen gültigen Benutzernamen und ein gültiges Passwort verwenden.

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

HINWEIS: Der Verbindungsstring kann so konfiguriert werden, dass er eine Verbindung zu jedem MongoDB-Cluster herstellt, sei es eine lokale Instanz oder ein Atlas-Cluster.

Option 2: Atlas-API-Anmeldedaten-Argumente

Verwenden Sie die Anmeldedaten Ihres Atlas-API-Service-Kontos. Sie müssen alle Schritte im Abschnitt Atlas-API-Zugriff befolgen.

{
  "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: Eigenständiger Dienst mit Kommandozeilenargumenten

Starten Sie den Server mit dem npx-Befehl:

 npx -y mongodb-mcp-server --apiClientId="your-atlas-service-accounts-client-id" --apiClientSecret="your-atlas-service-accounts-client-secret"

Option 4: Eigenständiger Dienst mit Umgebungsvariablen

 npx -y mongodb-mcp-server

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

  • Verbindungsstring über Umgebungsvariablen in der MCP-Datei Beispiel

  • Atlas-API-Anmeldedaten über Umgebungsvariablen in der MCP-Datei Beispiel

Option 5: Verwendung von Docker

Sie können den MongoDB MCP Server in einem Docker-Container ausführen, der Isolierung bietet und keine lokale Node.js-Installation erfordert.

Ausführen mit Umgebungsvariablen

Sie können entweder einen MongoDB-Verbindungsstring ODER Atlas-API-Anmeldedaten angeben:

Option A: Keine Konfiguration
docker run --rm -i \
  mongodb/mongodb-mcp-server:latest
Option B: Mit MongoDB-Verbindungsstring
docker run --rm -i \
  -e MDB_MCP_CONNECTION_STRING="mongodb+srv://username:password@cluster.mongodb.net/myDatabase" \
  mongodb/mongodb-mcp-server:latest
Option C: Mit Atlas-API-Anmeldedaten
docker run --rm -i \
  -e MDB_MCP_API_CLIENT_ID="your-atlas-service-accounts-client-id" \
  -e MDB_MCP_API_CLIENT_SECRET="your-atlas-service-accounts-client-secret" \
  mongodb/mongodb-mcp-server:latest
Docker in der MCP-Konfigurationsdatei

Ohne Optionen:

{
  "mcpServers": {
    "MongoDB": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "mongodb/mongodb-mcp-server:latest"]
    }
  }
}

Mit Verbindungsstring:

{
  "mcpServers": {
    "MongoDB": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "MDB_MCP_CONNECTION_STRING=mongodb+srv://username:password@cluster.mongodb.net/myDatabase",
        "mongodb/mongodb-mcp-server:latest"
      ]
    }
  }
}

Mit Atlas-API-Anmeldedaten:

{
  "mcpServers": {
    "MongoDB": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "MDB_MCP_API_CLIENT_ID=your-atlas-service-accounts-client-id",
        "-e",
        "MDB_MCP_API_CLIENT_SECRET=your-atlas-service-accounts-client-secret",
        "mongodb/mongodb-mcp-server:latest"
      ]
    }
  }
}

🛠️ Unterstützte Tools

Tool-Liste

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 - Untersucht einen bestimmten MongoDB-Atlas-Cluster

  • atlas-create-free-cluster - Erstellt einen kostenlosen MongoDB-Atlas-Cluster

  • atlas-connect-cluster - Stellt eine Verbindung zum MongoDB-Atlas-Cluster her

  • atlas-inspect-access-list - Untersucht IP-/CIDR-Bereiche mit Zugriff auf MongoDB-Atlas-Cluster

  • atlas-create-access-list - Konfiguriert die IP-/CIDR-Zugriffsliste für MongoDB-Atlas-Cluster

  • atlas-list-db-users - Listet MongoDB-Atlas-Datenbankbenutzer auf

  • atlas-create-db-user - Erstellt einen MongoDB-Atlas-Datenbankbenutzer

  • atlas-list-alerts - Listet MongoDB-Atlas-Warnungen für ein Projekt auf

HINWEIS: Atlas-Tools sind nur verfügbar, wenn Sie Anmeldedaten im Abschnitt Konfiguration festlegen.

MongoDB Database Tools

  • connect - Stellt eine Verbindung zu einer MongoDB-Instanz her

  • find - Führt eine find-Abfrage gegen eine MongoDB-Sammlung aus

  • aggregate - Führt eine Aggregation gegen eine MongoDB-Sammlung aus

  • count - Ermittelt die Anzahl der Dokumente in einer MongoDB-Sammlung

  • insert-one - Fügt ein einzelnes Dokument in eine MongoDB-Sammlung ein

  • insert-many - Fügt mehrere Dokumente in eine MongoDB-Sammlung ein

  • create-index - Erstellt einen Index für eine MongoDB-Sammlung

  • update-one - Aktualisiert ein einzelnes Dokument in einer MongoDB-Sammlung

  • update-many - Aktualisiert mehrere Dokumente in einer MongoDB-Sammlung

  • rename-collection - Benennt eine MongoDB-Sammlung um

  • delete-one - Löscht ein einzelnes Dokument aus einer MongoDB-Sammlung

  • delete-many - Löscht mehrere Dokumente aus einer MongoDB-Sammlung

  • drop-collection - Entfernt eine Sammlung aus einer MongoDB-Datenbank

  • drop-database - Entfernt eine 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 - Beschreibt die Indizes für eine Sammlung

  • collection-schema - Beschreibt das Schema für eine Sammlung

  • collection-storage-size - Ermittelt die Größe einer Sammlung in MB

  • db-stats - Gibt Statistiken über eine MongoDB-Datenbank zurück

Konfiguration

Der MongoDB MCP Server kann mit mehreren Methoden konfiguriert werden, mit folgender Priorität (höchste zu niedrigste):

  1. Kommandozeilenargumente

  2. Umgebungsvariablen

Konfigurationsoptionen

Option

Beschreibung

apiClientId

Atlas-API-Client-ID für die Authentifizierung. Erforderlich für die Ausführung von Atlas-Tools.

apiClientSecret

Atlas-API-Client-Geheimnis für die Authentifizierung. Erforderlich für die Ausführung von Atlas-Tools.

connectionString

MongoDB-Verbindungsstring für direkte Datenbankverbindungen. Optional. Wenn nicht festgelegt, müssen Sie das connect-Tool aufrufen, bevor Sie mit MongoDB-Daten interagieren.

logPath

Ordner zum Speichern von Protokollen.

disabledTools

Ein Array von Toolnamen, Operationstypen und/oder Toolkategorien, die deaktiviert werden.

readOnly

Wenn auf true gesetzt, sind nur Lese- und Metadatenoperationen zulässig; Erstellen/Aktualisieren/Löschen wird deaktiviert.

telemetry

Wenn auf disabled gesetzt, wird die Telemetrieerfassung deaktiviert.

Protokollpfad

Der Standardprotokollspeicherort ist wie folgt:

  • Windows: %LOCALAPPDATA%\mongodb\mongodb-mcp\.app-logs

  • macOS/Linux: ~/.mongodb/mongodb-mcp/.app-logs

Deaktivierte Tools

Sie können bestimmte Tools oder Kategorien von Tools mithilfe der Option disabledTools deaktivieren. Diese Option akzeptiert ein Array von Zeichenfolgen, wobei jede Zeichenfolge ein Toolname, ein Operationstyp oder eine Kategorie sein kann.

Die Art und Weise, wie das Array aufgebaut ist, hängt von der Art der verwendeten Konfigurationsmethode ab:

  • Für die Konfiguration über Umgebungsvariablen verwenden Sie eine durch Kommas getrennte Zeichenfolge: export MDB_MCP_DISABLED_TOOLS="create,update,delete,atlas,collectionSchema".

  • Für die Konfiguration über Befehlszeilenargumente verwenden Sie eine durch Leerzeichen getrennte Zeichenfolge: --disabledTools create update delete atlas collectionSchema.

Kategorien von Tools:

  • atlas – MongoDB-Atlas-Tools, wie Cluster auflisten, Cluster erstellen usw.

  • mongodb – MongoDB-Datenbanktools, wie find, aggregate usw.

Operationstypen:

  • create – Tools, die Ressourcen erstellen, wie Cluster erstellen, Dokument einfügen usw.

  • update – Tools, die Ressourcen aktualisieren, wie Dokument aktualisieren, Sammlung umbenennen usw.

  • delete – Tools, die Ressourcen löschen, wie Dokument löschen, Sammlung löschen usw.

  • read – Tools, die Ressourcen lesen, wie find, aggregate, Cluster auflisten usw.

  • metadata – Tools, die Metadaten lesen, wie Datenbanken auflisten, Collections auflisten, Collection-Schema usw.

Nur-Lese-Modus

Die Konfigurationsoption readOnly ermöglicht es Ihnen, den MCP-Server so einzuschränken, dass er nur Tools mit den Operationstypen „read“ und „metadata“ verwendet. Wenn diese Option aktiviert ist, werden alle Tools mit den Operationstypen „create“, „update“ oder „delete“ nicht beim Server registriert.

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

Sie können den Nur-Lese-Modus wie folgt aktivieren:

  • Umgebungsvariable: export MDB_MCP_READ_ONLY=true

  • Befehlszeilenargument: --readOnly

Wenn der Nur-Lese-Modus aktiv ist, sehen Sie eine Meldung in den Serverprotokollen, die angibt, welche Tools aufgrund dieser Einschränkung nicht registriert werden konnten.

Telemetrie

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

Sie können die Telemetrie wie folgt deaktivieren:

  • Umgebungsvariable: export MDB_MCP_TELEMETRY=disabled

  • Befehlszeilenargument: --telemetry disabled

  • DO_NOT_TRACK-Umgebungsvariable: export DO_NOT_TRACK=1

Atlas-API-Zugriff

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

ℹ️ Hinweis: Eine detaillierte Aufschlüsselung der mindestens erforderlichen Berechtigungen für jeden Atlas-Vorgang finden Sie im Abschnitt Atlas-API-Berechtigungen weiter unten.

  1. Dienstkonto erstellen:

    • Melden Sie sich bei MongoDB Atlas unter cloud.mongodb.com an.

    • Navigieren Sie zu Access Manager > Organization Access

    • Klicken Sie auf Add New > Applications > Service Accounts

    • Geben Sie Name, Beschreibung und Ablauf für Ihr Dienstkonto ein (z. B. „MCP, MCP Server Access, 7 Tage“).

    • Weisen Sie nur die mindestens erforderlichen Berechtigungen für Ihren Anwendungsfall zu.

    • Klicken Sie auf „Create“.

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-Geheimnis sofort, da es nicht erneut angezeigt wird.

  2. Access-List-Eintrag hinzufügen:

    • Fügen Sie Ihre IP-Adresse zur API-Zugriffsliste hinzu.

  3. MCP-Server konfigurieren:

    • Verwenden Sie eine der unten aufgeführten Konfigurationsmethoden, um Ihre apiClientId und Ihr apiClientSecret festzulegen.

Atlas-API-Berechtigungen

Sicherheitswarnung: Das Gewähren der Rolle „Organization Owner“ ist selten erforderlich und kann ein Sicherheitsrisiko darstellen. Weisen Sie nur die mindestens erforderlichen Berechtigungen für Ihren Anwendungsfall zu.

Kurzreferenz: Erforderliche Rollen pro Vorgang

Was Sie tun möchten

Sicherste zuzuweisende Rolle (wo)

Organisationen/Projekte auflisten

Org Member oder Org Read Only (Org)

Neue Projekte erstellen

Org Project Creator (Org)

Cluster/Datenbanken in einem Projekt anzeigen

Project Read Only (Project)

Cluster in einem Projekt erstellen/verwalten

Project Cluster Manager (Project)

Projekt-Zugriffslisten verwalten

Project IP Access List Admin (Project)

Datenbankbenutzer verwalten

Project Database Access Admin (Project)

  • Bevorzugen Sie projektbezogene Rollen für die meisten Vorgänge. Weisen Sie sie nur den spezifischen Projekten zu, die Sie verwalten oder anzeigen müssen.

  • Vermeiden Sie Organization Owner, es sei denn, Sie benötigen die vollständige administrative Kontrolle über alle Projekte und Einstellungen in der Organisation.

Eine vollständige Liste der Rollen und ihrer Berechtigungen finden Sie in der Atlas-Benutzerrollen-Dokumentation.

Konfigurationsmethoden

Umgebungsvariablen

Setzen Sie Umgebungsvariablen mit dem Präfix MDB_MCP_ 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

Connection String 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 Konfigurationsoptionen als Befehlszeilenargumente beim Starten des Servers:

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

Connection String 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"
      ]
    }
  }
}

🤝 Mitwirken

Interessiert an einer Mitarbeit? Großartig! Bitte lesen Sie unseren Leitfaden für Mitwirkende für Richtlinien zu Code-Beiträgen, Standards, dem Hinzufügen neuer Tools und Informationen zur Fehlerbehebung.

-
license - not tested
Not graded
quality - not tested
D
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 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/rajath-raman/mongodb-mcp-server'

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