Skip to main content
Glama

Chroma MCP Server

by privetin

Servidor Chroma MCP

Una implementación de servidor del Protocolo de Contexto de Modelo (MCP) que proporciona capacidades de base de datos vectorial a través de Chroma. Este servidor permite la búsqueda semántica de documentos, el filtrado de metadatos y la gestión de documentos con almacenamiento persistente.

Requisitos

  • Python 3.8+
  • Croma 0.4.0+
  • SDK de MCP 0.1.0+

Componentes

Recursos

El servidor proporciona almacenamiento y recuperación de documentos a través de la base de datos vectorial de Chroma:

  • Almacena documentos con contenido y metadatos.
  • Conserva los datos en el directorio src/chroma/data
  • Admite búsqueda de similitud semántica

Herramientas

El servidor implementa operaciones CRUD y funcionalidad de búsqueda:

Gestión de documentos
  • create_document : Crea un nuevo documento
    • Obligatorio: document_id , content
    • Opcional: metadata (pares clave-valor)
    • Devoluciones: Confirmación de éxito
    • Error: Ya existe, entrada no válida
  • read_document : Recuperar un documento por ID
    • Obligatorio: document_id
    • Devuelve: Contenido del documento y metadatos
    • Error: No encontrado
  • update_document : Actualizar un documento existente
    • Obligatorio: document_id , content
    • Opcional: metadata
    • Devoluciones: Confirmación de éxito
    • Error: No encontrado, entrada no válida
  • delete_document : Eliminar un documento
    • Obligatorio: document_id
    • Devoluciones: Confirmación de éxito
    • Error: No encontrado
  • list_documents : Lista todos los documentos
    • Opcional: limit , offset
    • Devuelve: Lista de documentos con contenido y metadatos
Operaciones de búsqueda
  • search_similar : Encuentra documentos semánticamente similares
    • Requerido: query
    • Opcional: num_results , metadata_filter , content_filter
    • Devoluciones: Lista clasificada de documentos similares con puntuaciones de distancia
    • Error: Filtro no válido

Características

  • Búsqueda semántica : encuentre documentos según su significado utilizando las incrustaciones de Chroma
  • Filtrado de metadatos : Filtrar los resultados de búsqueda por campos de metadatos
  • Filtrado de contenido : filtrado adicional basado en el contenido del documento
  • Almacenamiento persistente : los datos persisten en el directorio local entre reinicios del servidor
  • Manejo de errores : Manejo de errores integral con mensajes claros
  • Lógica de reintento : reintentos automáticos para fallas transitorias

Instalación

  1. Instalar dependencias:
uv venv uv sync --dev --all-extras

Configuración

Escritorio de Claude

Agregue la configuración del servidor a su configuración de Claude Desktop:

Windows: C:\Users\<username>\AppData\Roaming\Claude\claude_desktop_config.json

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{ "mcpServers": { "chroma": { "command": "uv", "args": [ "--directory", "C:/MCP/server/community/chroma", "run", "chroma" ] } } }

Almacenamiento de datos

El servidor almacena datos en:

  • Ventanas: src/chroma/data
  • MacOS/Linux: src/chroma/data

Uso

  1. Iniciar el servidor:
uv run chroma
  1. Utilice herramientas MCP para interactuar con el servidor:
# Create a document create_document({ "document_id": "ml_paper1", "content": "Convolutional neural networks improve image recognition accuracy.", "metadata": { "year": 2020, "field": "computer vision", "complexity": "advanced" } }) # Search similar documents search_similar({ "query": "machine learning models", "num_results": 2, "metadata_filter": { "year": 2020, "field": "computer vision" } })

Manejo de errores

El servidor proporciona mensajes de error claros para escenarios comunes:

  • Document already exists [id=X]
  • Document not found [id=X]
  • Invalid input: Missing document_id or content
  • Invalid filter
  • Operation failed: [details]

Desarrollo

Pruebas

  1. Ejecute el Inspector MCP para realizar pruebas interactivas:
npx @modelcontextprotocol/inspector uv --directory C:/MCP/server/community/chroma run chroma
  1. Utilice la interfaz web del inspector para:
    • Prueba de operaciones CRUD
    • Verificar la funcionalidad de búsqueda
    • Comprobar el manejo de errores
    • Supervisar los registros del servidor

Edificio

  1. Actualizar dependencias:
uv compile pyproject.toml
  1. Paquete de compilación:
uv build

Contribuyendo

¡Agradecemos sus contribuciones! Lea nuestras Pautas de Contribución para obtener más información sobre:

  • Estilo de código
  • Requisitos de prueba
  • Proceso de solicitud de extracción

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

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

local-only server

The server can only run on the client's local machine because it depends on local resources.

Un servidor de protocolo de contexto de modelo que proporciona capacidades de base de datos vectorial a través de Chroma, lo que permite la búsqueda semántica de documentos, el filtrado de metadatos y la gestión de documentos con almacenamiento persistente.

  1. Requisitos
    1. Componentes
      1. Recursos
      2. Herramientas
    2. Características
      1. Instalación
        1. Configuración
          1. Escritorio de Claude
          2. Almacenamiento de datos
        2. Uso
          1. Manejo de errores
            1. Desarrollo
              1. Pruebas
              2. Edificio
            2. Contribuyendo
              1. Licencia

                Related MCP Servers

                • -
                  security
                  F
                  license
                  -
                  quality
                  Enables efficient vector database operations for embedding storage and similarity search through a Model Context Protocol interface.
                  Last updated -
                  3
                  Python
                • -
                  security
                  A
                  license
                  -
                  quality
                  A Model Context Protocol server enabling LLMs to search, retrieve, and manage documents through Rememberizer's knowledge management API.
                  Last updated -
                  24
                  Python
                  Apache 2.0
                • A
                  security
                  A
                  license
                  A
                  quality
                  A high-performance, persistent memory system for the Model Context Protocol (MCP) providing vector search capabilities and efficient knowledge storage using libSQL as the backing store.
                  Last updated -
                  6
                  64
                  1
                  TypeScript
                  MIT License
                  • Linux
                • -
                  security
                  A
                  license
                  -
                  quality
                  A Model Context Protocol server that enables semantic search capabilities by providing tools to manage Qdrant vector database collections, process and embed documents using various embedding services, and perform semantic searches across vector embeddings.
                  Last updated -
                  89
                  TypeScript
                  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/privetin/chroma'

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