chroma-core/chroma-mcp
If you are the rightful owner of chroma-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
Chroma MCP Server is an open-source embedding database server that facilitates the integration of LLM applications with external data sources using the Model Context Protocol.
Tools
Functions exposed to the LLM to take actions
chroma_list_collections
List all collection names in the Chroma database with pagination support.
Args: limit: Optional maximum number of collections to return offset: Optional number of collections to skip before returning results
Returns: List of collection names or ["NO_COLLECTIONS_FOUND"] if database is empty
chroma_create_collection
Create a new Chroma collection with configurable HNSW parameters.
Args: collection_name: Name of the collection to create embedding_function_name: Name of the embedding function to use. Options: 'default', 'cohere', 'openai', 'jina', 'voyageai', 'ollama', 'roboflow' metadata: Optional metadata dict to add to the collection
chroma_peek_collection
Peek at documents in a Chroma collection.
Args: collection_name: Name of the collection to peek into limit: Number of documents to peek at
chroma_get_collection_info
Get information about a Chroma collection.
Args: collection_name: Name of the collection to get info about
chroma_get_collection_count
Get the number of documents in a Chroma collection.
Args: collection_name: Name of the collection to count
chroma_modify_collection
Modify a Chroma collection's name or metadata.
Args: collection_name: Name of the collection to modify new_name: Optional new name for the collection new_metadata: Optional new metadata for the collection
chroma_delete_collection
Delete a Chroma collection.
Args: collection_name: Name of the collection to delete
chroma_add_documents
Add documents to a Chroma collection.
Args: collection_name: Name of the collection to add documents to documents: List of text documents to add ids: List of IDs for the documents (required) metadatas: Optional list of metadata dictionaries for each document
chroma_query_documents
Query documents from a Chroma collection with advanced filtering.
Args: collection_name: Name of the collection to query query_texts: List of query texts to search for n_results: Number of results to return per query where: Optional metadata filters using Chroma's query operators Examples: - Simple equality: {"metadata_field": "value"} - Comparison: {"metadata_field": {"$gt": 5}} - Logical AND: {"$and": [{"field1": {"$eq": "value1"}}, {"field2": {"$gt": 5}}]} - Logical OR: {"$or": [{"field1": {"$eq": "value1"}}, {"field1": {"$eq": "value2"}}]} where_document: Optional document content filters include: List of what to include in response. By default, this will include documents, metadatas, and distances.
chroma_get_documents
Get documents from a Chroma collection with optional filtering.
Args: collection_name: Name of the collection to get documents from ids: Optional list of document IDs to retrieve where: Optional metadata filters using Chroma's query operators Examples: - Simple equality: {"metadata_field": "value"} - Comparison: {"metadata_field": {"$gt": 5}} - Logical AND: {"$and": [{"field1": {"$eq": "value1"}}, {"field2": {"$gt": 5}}]} - Logical OR: {"$or": [{"field1": {"$eq": "value1"}}, {"field1": {"$eq": "value2"}}]} where_document: Optional document content filters include: List of what to include in response. By default, this will include documents, and metadatas. limit: Optional maximum number of documents to return offset: Optional number of documents to skip before returning results
Returns: Dictionary containing the matching documents, their IDs, and requested includes
chroma_update_documents
Update documents in a Chroma collection.
Args: collection_name: Name of the collection to update documents in ids: List of document IDs to update (required) embeddings: Optional list of new embeddings for the documents. Must match length of ids if provided. metadatas: Optional list of new metadata dictionaries for the documents. Must match length of ids if provided. documents: Optional list of new text documents. Must match length of ids if provided.
Returns: A confirmation message indicating the number of documents updated.
Raises: ValueError: If 'ids' is empty or if none of 'embeddings', 'metadatas', or 'documents' are provided, or if the length of provided update lists does not match the length of 'ids'. Exception: If the collection does not exist or if the update operation fails.
chroma_delete_documents
Delete documents from a Chroma collection.
Args: collection_name: Name of the collection to delete documents from ids: List of document IDs to delete
Returns: A confirmation message indicating the number of documents deleted.
Raises: ValueError: If 'ids' is empty Exception: If the collection does not exist or if the delete operation fails.
Prompts
Interactive templates invoked by user choice
No prompts
Resources
Contextual data attached and managed by the client