Chroma Mcp Server

Erstellt vonchroma-corechroma-core

Eine Implementierung eines Model Context Protocol (MCP) Servers, die Datenbankfunktionen für Chroma bereitstellt.

Übersicht

Was ist Chroma MCP?

Chroma MCP (Model Context Protocol) ist eine Serverimplementierung, die entwickelt wurde, um robuste Datenbankfunktionen für das Chroma-Framework bereitzustellen. Es dient als Brücke zwischen verschiedenen Datenquellen und Anwendungen und ermöglicht eine effiziente Datenverwaltung und -abfrage. Das Hauptziel von Chroma MCP ist es, die Funktionalität von Anwendungen zu verbessern, indem eine nahtlose Integration mit Datenbanken ermöglicht wird, wodurch die Datenverarbeitung und -handhabung optimiert wird.

Funktionen von Chroma MCP

  • Datenbankintegration: Chroma MCP unterstützt verschiedene Datenbanksysteme, sodass Entwickler Daten aus mehreren Quellen mühelos verbinden und verwalten können.
  • Skalierbarkeit: Chroma MCP ist so konzipiert, dass es große Datenmengen verarbeiten kann und sich entsprechend den Anforderungen der Anwendung skalieren lässt, um sicherzustellen, dass die Leistung auch bei hoher Auslastung optimal bleibt.
  • Benutzerfreundliche API: Die von Chroma MCP bereitgestellte API ist intuitiv und einfach zu bedienen, was sie für Entwickler aller Fähigkeitsstufen zugänglich macht.
  • Open Source: Chroma MCP ist ein Open-Source-Projekt, das es Entwicklern ermöglicht, zur Software beizutragen, sie zu modifizieren und nach Bedarf zu verbessern.
  • Community-Support: Als Teil des Chroma-Ökosystems können Benutzer von einer lebhaften Community profitieren, die Unterstützung, Ressourcen und geteiltes Wissen bietet.

Wie man Chroma MCP verwendet

  1. Installation: Beginnen Sie mit dem Herunterladen von Chroma MCP aus dem offiziellen Repository. Befolgen Sie die Installationsanweisungen in der Dokumentation.
  2. Konfiguration: Konfigurieren Sie die Servereinstellungen, um sich mit Ihrer gewünschten Datenbank zu verbinden. Dazu gehört die Angabe von Datenbankanmeldeinformationen und Verbindungsparametern.
  3. API-Integration: Nutzen Sie die bereitgestellte API, um mit der Datenbank zu interagieren. Dazu gehört das Erstellen, Lesen, Aktualisieren und Löschen von Daten, wie es Ihre Anwendung erfordert.
  4. Testen: Führen Sie umfassende Tests durch, um sicherzustellen, dass die Integration wie erwartet funktioniert und die Daten korrekt verarbeitet werden.
  5. Bereitstellung: Sobald die Tests abgeschlossen sind, stellen Sie Ihre Anwendung mit integrierten Chroma MCP bereit und stellen Sie sicher, dass sie Ihren Leistungs- und Skalierbarkeitsanforderungen entspricht.

Häufig gestellte Fragen

Welche Datenbanken werden von Chroma MCP unterstützt?

Chroma MCP unterstützt eine Vielzahl von Datenbanken, einschließlich SQL- und NoSQL-Systemen. Überprüfen Sie die offizielle Dokumentation für eine vollständige Liste der unterstützten Datenbanken.

Ist Chroma MCP für großangelegte Anwendungen geeignet?

Ja, Chroma MCP ist so konzipiert, dass es skalierbar ist und große Datenmengen verarbeiten kann, was es sowohl für kleine als auch für großangelegte Anwendungen geeignet macht.

Wie kann ich zu Chroma MCP beitragen?

Als Open-Source-Projekt sind Beiträge willkommen! Sie können beitragen, indem Sie Probleme melden, Pull-Requests einreichen oder die Dokumentation verbessern.

Wo finde ich weitere Informationen über Chroma MCP?

Für weitere Details besuchen Sie das offizielle GitHub-Repository von Chroma MCP, wo Sie Dokumentation, Installationsanleitungen und Community-Diskussionen finden können.

Detail

<p align="center"> <a href="https://trychroma.com"><img src="https://user-images.githubusercontent.com/891664/227103090-6624bf7d-9524-4e05-9d2c-c28d5d451481.png" alt="Chroma logo"></a> </p> <p align="center"> <b>Chroma - the open-source embedding database</b>. <br /> The fastest way to build Python or JavaScript LLM apps with memory! </p> <p align="center"> <a href="https://discord.gg/MMeYNTmh3x" target="_blank"> <img src="https://img.shields.io/discord/1073293645303795742?cacheSeconds=3600" alt="Discord"> </a> | <a href="https://github.com/chroma-core/chroma/blob/master/LICENSE" target="_blank"> <img src="https://img.shields.io/static/v1?label=license&message=Apache 2.0&color=white" alt="License"> </a> | <a href="https://docs.trychroma.com/" target="_blank"> Docs </a> | <a href="https://www.trychroma.com/" target="_blank"> Homepage </a> </p>

Chroma MCP Server

smithery badge

The Model Context Protocol (MCP) is an open protocol designed for effortless integration between LLM applications and external data sources or tools, offering a standardized framework to seamlessly provide LLMs with the context they require.

This server provides data retrieval capabilities powered by Chroma, enabling AI models to create collections over generated data and user inputs, and retrieve that data using vector search, full text search, metadata filtering, and more.

Features

  • Flexible Client Types

    • Ephemeral (in-memory) for testing and development
    • Persistent for file-based storage
    • HTTP client for self-hosted Chroma instances
    • Cloud client for Chroma Cloud integration (automatically connects to api.trychroma.com)
  • Collection Management

    • Create, modify, and delete collections
    • List all collections with pagination support
    • Get collection information and statistics
    • Configure HNSW parameters for optimized vector search
    • Select embedding functions when creating collections
  • Document Operations

    • Add documents with optional metadata and custom IDs
    • Query documents using semantic search
    • Advanced filtering using metadata and document content
    • Retrieve documents by IDs or filters
    • Full text search capabilities

Supported Tools

  • chroma_list_collections - List all collections with pagination support
  • chroma_create_collection - Create a new collection with optional HNSW configuration
  • chroma_peek_collection - View a sample of documents in a collection
  • chroma_get_collection_info - Get detailed information about a collection
  • chroma_get_collection_count - Get the number of documents in a collection
  • chroma_modify_collection - Update a collection's name or metadata
  • chroma_delete_collection - Delete a collection
  • chroma_add_documents - Add documents with optional metadata and custom IDs
  • chroma_query_documents - Query documents using semantic search with advanced filtering
  • chroma_get_documents - Retrieve documents by IDs or filters with pagination
  • chroma_update_documents - Update existing documents' content, metadata, or embeddings
  • chroma_delete_documents - Delete specific documents from a collection

Embedding Functions

Chroma MCP supports several embedding functions: default, cohere, openai, jina, voyageai, and roboflow.

The embedding functions utilize Chroma's collection configuration, which persists the selected embedding function of a collection for retrieval. Once a collection is created using the collection configuration, on retrieval for future queries and inserts, the same embedding function will be used, without needing to specify the embedding function again. Embedding function persistance was added in v1.0.0 of Chroma, so if you created a collection using version <=0.6.3, this feature is not supported.

When accessing embedding functions that utilize external APIs, please be sure to add the environment variable for the API key with the correct format, found in Embedding Function Environment Variables

Usage with Claude Desktop

  1. To add an ephemeral client, add the following to your claude_desktop_config.json file:
"chroma": {
    "command": "uvx",
    "args": [
        "chroma-mcp"
    ]
}
  1. To add a persistent client, add the following to your claude_desktop_config.json file:
"chroma": {
    "command": "uvx",
    "args": [
        "chroma-mcp",
        "--client-type",
        "persistent",
        "--data-dir",
        "/full/path/to/your/data/directory"
    ]
}

This will create a persistent client that will use the data directory specified.

  1. To connect to Chroma Cloud, add the following to your claude_desktop_config.json file:
"chroma": {
    "command": "uvx",
    "args": [
        "chroma-mcp",
        "--client-type",
        "cloud",
        "--tenant",
        "your-tenant-id",
        "--database",
        "your-database-name",
        "--api-key",
        "your-api-key"
    ]
}

This will create a cloud client that automatically connects to api.trychroma.com using SSL.

Note: Adding API keys in arguments is fine on local devices, but for safety, you can also specify a custom path for your environment configuration file using the --dotenv-path argument within the args list, for example: "args": ["chroma-mcp", "--dotenv-path", "/custom/path/.env"].

  1. To connect to a [self-hosted Chroma instance on your own cloud provider](https://docs.trychroma.com/ production/deployment), add the following to your claude_desktop_config.json file:
"chroma": {
    "command": "uvx",
    "args": [
      "chroma-mcp", 
      "--client-type", 
      "http", 
      "--host", 
      "your-host", 
      "--port", 
      "your-port", 
      "--custom-auth-credentials",
      "your-custom-auth-credentials",
      "--ssl",
      "true"
    ]
}

This will create an HTTP client that connects to your self-hosted Chroma instance.

Demos

Find reference usages, such as shared knowledge bases & adding memory to context windows in the Chroma MCP Docs

Using Environment Variables

You can also use environment variables to configure the client. The server will automatically load variables from a .env file located at the path specified by --dotenv-path (defaults to .chroma_env in the working directory) or from system environment variables. Command-line arguments take precedence over environment variables.

### Common variables
export CHROMA_CLIENT_TYPE="http"  # or "cloud", "persistent", "ephemeral"

### For persistent client
export CHROMA_DATA_DIR="/full/path/to/your/data/directory"

### For cloud client (Chroma Cloud)
export CHROMA_TENANT="your-tenant-id"
export CHROMA_DATABASE="your-database-name"
export CHROMA_API_KEY="your-api-key"

### For HTTP client (self-hosted)
export CHROMA_HOST="your-host"
export CHROMA_PORT="your-port"
export CHROMA_CUSTOM_AUTH_CREDENTIALS="your-custom-auth-credentials"
export CHROMA_SSL="true"

### Optional: Specify path to .env file (defaults to .chroma_env)
export CHROMA_DOTENV_PATH="/path/to/your/.env" 
Embedding Function Environment Variables

When using external embedding functions that access an API key, follow the naming convention CHROMA_<>_API_KEY="<key>". So to set a Cohere API key, set the environment variable CHROMA_COHERE_API_KEY="". We recommend adding this to a .env file somewhere and using the CHROMA_DOTENV_PATH environment variable or --dotenv-path flag to set that location for safekeeping.

Serverkonfiguration

{
  "mcpServers": {
    "chroma-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/metorial/mcp-container--chroma-core--chroma-mcp--chroma-mcp",
        "chroma-mcp --client-type chroma-client-type --data-dir chroma-data-dir --tenant chroma-tenant --database chroma-database --api-key chroma-api-key --host chroma-host --port chroma-port --custom-auth-credentials chroma-custom-auth-credentials --ssl chroma-ssl --dotenv-path chroma-dotenv-path"
      ],
      "env": {
        "CHROMA_CLIENT_TYPE": "chroma-client-type",
        "CHROMA_DATA_DIR": "chroma-data-dir",
        "CHROMA_TENANT": "chroma-tenant",
        "CHROMA_DATABASE": "chroma-database",
        "CHROMA_API_KEY": "chroma-api-key",
        "CHROMA_HOST": "chroma-host",
        "CHROMA_PORT": "chroma-port",
        "CHROMA_CUSTOM_AUTH_CREDENTIALS": "chroma-custom-auth-credentials",
        "CHROMA_SSL": "chroma-ssl",
        "CHROMA_DOTENV_PATH": "chroma-dotenv-path",
        "CHROMA_COHERE_API_KEY": "chroma-cohere-api-key"
      }
    }
  }
}

Projektinfo

Autor
chroma-core
Category
Datenbanken
Erstellt am
Jun 27, 2025
Stern
203
Sprache
Python
Tags
-

Chroma Mcp Server Alternative

Für einige Alternativen zu Chroma Mcp Server bieten wir dir passende Seiten nach Kategorie sortiert.

AI-Abfrage-Engine - Plattform zum Erstellen von KI, die Fragen über groß angelegte federierte Daten beantworten kann. - Der einzige MCP-Server, den Sie jemals benötigen werden.

Dieser schreibgeschützte MCP-Server ermöglicht es Ihnen, über CData JDBC-Treiber eine Verbindung zu RSS-Daten von Claude Desktop herzustellen. Kostenlose (Beta-)Lese-/Schreibserver sind verfügbar unter https://www.cdata.com/solutions/mcp

Mehr anzeigen >>