Built by Metorial, the integration platform for agentic AI.

Learn More

Chroma/chroma-mcp

Chroma MCP Server

Tools

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

chroma_list_collections

Chroma Create Collection

Create a new Chroma collection with configurable HNSW parameters. Args: collection_name: Name of the collection to create hnsw_space: Distance function used in HNSW index. Options: 'l2', 'ip', 'cosine' hnsw_construction_ef: Size of the dynamic candidate list for constructing the HNSW graph hnsw_search_ef: Size of the dynamic candidate list for searching the HNSW graph hnsw_M: Number of bi-directional links created for every new element hnsw_num_threads: Number of threads to use during HNSW construction hnsw_resize_factor: Factor to resize the index by when it's full hnsw_batch_size: Number of elements to batch together during index construction hnsw_sync_threshold: Number of elements to process before syncing index to disk

chroma_create_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_peek_collection

Chroma Get Collection Info

Get information about a Chroma collection. Args: collection_name: Name of the collection to get info about

chroma_get_collection_info

Chroma Get Collection Count

Get the number of documents in a Chroma collection. Args: collection_name: Name of the collection to count

chroma_get_collection_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_modify_collection

Chroma Delete Collection

Delete a Chroma collection. Args: collection_name: Name of the collection to delete

chroma_delete_collection

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 metadatas: Optional list of metadata dictionaries for each document ids: Optional list of IDs for the documents

chroma_add_documents

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: Optional list of what to include in response. Can contain any of: ["documents", "embeddings", "metadatas", "distances"]

chroma_query_documents

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: Optional list of what to include in response. Can contain any of: ["documents", "embeddings", "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_get_documents

Chroma Sequential Thinking

A detailed tool for dynamic and reflective problem-solving through thoughts. This tool helps analyze problems through a flexible thinking process that can adapt and evolve. Each thought can build on, question, or revise previous insights as understanding deepens. Args: thought: Do not store code in the thought. It is your current thinking step, which can include: * Regular analytical steps * Revisions of previous thoughts * Questions about previous decisions * Realizations about needing more analysis * Changes in approach * Hypothesis generation * Hypothesis verification Do not make thoughts superfluous. Do not store code in the thought. thoughtNumber: Current thought number * The current number in sequence (can go beyond initial total if needed) totalThoughts: Estimated total thoughts needed * Current estimate of thoughts needed (can be adjusted up/down) sessionId: Identifier for the thinking session. Provide if this is not the first thought in the session. * A unique identifier for the current thinking session nextThoughtNeeded: Whether another thought step is needed * True if you need more thinking, even if at what seemed like the end isRevision: Whether this revises previous thinking * A boolean indicating if this thought revises previous thinking revisesThought: Which thought is being reconsidered * If isRevision is true, which thought number is being reconsidered branchFromThought: Branching point thought number * If branching, which thought number is the branching point branchId: Branch identifier * Identifier for the current branch (if any) needsMoreThoughts: If more thoughts are needed * If reaching end but realizing more thoughts needed sessionSummary: A summary of the current session. Provide when nextThoughtNeeded is false. keyThoughts: A list of key thought numbers from the current session. Provide when nextThoughtNeeded is false. persist: Whether to persist thoughts in the Chroma database You should: 1. Start with an initial estimate of needed thoughts, but be ready to adjust 2. Feel free to question or revise previous thoughts 3. Don't hesitate to add more thoughts if needed, even at the "end" 4. Express uncertainty when present 5. Mark thoughts that revise previous thinking or branch into new paths 6. Ignore information that is irrelevant to the current step 7. Generate a solution hypothesis when appropriate 8. Verify the hypothesis based on the Chain of Thought steps 9. Repeat the process until satisfied with the solution 10. Provide a single, ideally correct answer as the final output 11. Only set next_thought_needed to false when truly done and a satisfactory answer is reached`, Returns: Dictionary with thought metadata

chroma_sequential_thinking

Chroma Get Similar Sessions

Retrieve the thought history for a specific session. Args: text: The text to search for Returns: Dictionary with the thought history

chroma_get_similar_sessions

Chroma Get Thought History

Retrieve the thought history for a specific session. Args: sessionId: The session identifier Returns: Dictionary with the thought history

chroma_get_thought_history

Chroma Get Thought Branches

Get all branches for a specific thinking session. Args: sessionId: The session identifier Returns: Dictionary with branch information

chroma_get_thought_branches

Chroma Continue Thought Chain

Get the latest state of a thought chain to continue it. Args: sessionId: The session identifier branchId: Optional branch identifier to continue a specific branch Returns: Dictionary with the latest state of the thought chain

chroma_continue_thought_chain