ChromaDB Remote MCP Server with Streamable HTTP Transport
ChromaDB Remote MCP provides 19 tools with generally complete schemas and descriptions. All tools have input schemas with typed parameters and descriptions, placing this above the median for community servers. However, several quality gaps prevent a higher score: (1) output schemas are not documented anywhere in the visible source, (2) tool descriptions vary in quality and some lack actionable context, (3) error handling guidance is minimal, (4) no tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk stratification, (5) parameter descriptions could be more specific about formats and constraints. The server correctly identifies risk levels (READ_ONLY, WRITE, DESTRUCTIVE) but does not expose this via tool annotations. Composition is clean, tools have single responsibilities and names follow verb_noun convention. Parameter naming is mostly consistent (collection_name appears across tools, supporting tool chaining). For a vector database server, the tool set is comprehensive, covering CRUD operations, collection management, and admin/distributed variants.
Add documents to a collection
Create a new database in a tenant (admin tool)
Create a new tenant (admin tool)
Delete a database from a tenant (admin tool)
Delete a tenant (admin tool)
Get database information (admin tool)
Get tenant information (admin tool)
Output schemas not documented. No visible response format definitions for any tool, preventing LLMs from planning downstream operations and understanding what fields will be available for extraction and chaining.
Tool annotations absent. Tools marked as READ_ONLY, WRITE, DESTRUCTIVE, or IRREVERSIBLE lack readOnlyHint, destructiveHint, and idempotentHint declarations in the schema, preventing clients from enforcing safety policies (e.g., requiring confirmation before delete_collection).
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | B | 71 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 0 | - | v1 |
Create a new collection
Delete a collection and all its documents
Delete documents from a collection
Get tenant information in distributed mode (distributed tool)
List databases in a tenant in distributed mode (distributed tool)
Get the total count of documents in a collection
Get detailed information about a specific collection
Retrieve documents from a collection by ID
List all collections in the ChromaDB instance
Peek at documents in a collection without full retrieval
Query documents in a collection using vector similarity search
Update existing documents in a collection
Parameter descriptions lack actionable constraints. Parameters like 'limit' and 'cursor' are described generically without specifying min/max values, valid ranges, or format requirements (e.g., is cursor base64-encoded, opaque, or a JSON string?).
Error handling guidance missing. Tools lack documented error conditions and recovery paths. For example, chroma_query_documents does not document what happens if query_embeddings and query_texts are both provided, or if the collection does not exist.
Complex parameter semantics not documented. The 'include' array parameter on query_documents and get_documents accepts multiple options (documents, metadatas, distances, embeddings) but descriptions do not specify the enum values, valid combinations, or what each returns.