{"type":"mcp_server","name":"chroma-mcp","description":"This repository provides a Model Context Protocol (MCP) server, enabling AI models to leverage Chroma's capabilities for data retrieval using vector search, full text search, and metadata filtering, facilitating seamless","category":"Database","language":"Python","stars":567,"forks":7,"owner":"chroma-core","github_url":"https://github.com/chroma-core/chroma-mcp","homepage":null,"setup":"## Setup\n\n1.  To add an ephemeral client, add the following to your `claude_desktop_config.json` file:\n\n```json\n\"chroma\": {\n    \"command\": \"uvx\",\n    \"args\": [\n        \"chroma-mcp\"\n    ]\n}\n```\n\n2.  To add a persistent client, add the following to your `claude_desktop_config.json` file:\n\n```json\n\"chroma\": {\n    \"command\": \"uvx\",\n    \"args\": [\n        \"chroma-mcp\",\n        \"--client-type\",\n        \"persistent\",\n        \"--data-dir\",\n        \"/full/path/to/your/data/directory\"\n    ]\n}\n```\n\nThis will create a persistent client that will use the data directory specified.\n\n3.  To connect to Chroma Cloud, add the following to your `claude_desktop_config.json` file:\n\n```json\n\"chroma\": {\n    \"command\": \"uvx\",\n    \"args\": [\n        \"chroma-mcp\",\n        \"--client-type\",\n        \"cloud\",\n        \"--tenant\",\n        \"your-tenant-id\",\n        \"--database\",\n        \"your-database-name\",\n        \"--api-key\",\n        \"your-api-key\"\n    ]\n}\n```\n\nThis will create a cloud client that automatically connects to api.trychroma.com using SSL.\n\n4.  To connect to a [self-hosted Chroma instance on your own cloud provider](https://docs.trychroma.com/\nproduction/deployment), add the following to your `claude_desktop_config.json` file:\n\n```json\n\"chroma\": {\n    \"command\": \"uvx\",\n    \"args\": [\n      \"chroma-mcp\", \n      \"--client-type\", \n      \"http\", \n      \"--host\", \n      \"your-host\", \n      \"--port\", \n      \"your-port\", \n      \"--custom-auth-credentials\",\n      \"your-custom-auth-credentials\",\n      \"--ssl\",\n      \"true\"\n    ]\n}\n```\n\nThis will create an HTTP client that connects to your self-hosted Chroma instance.\n\nYou can also use environment variables to configure the client:\n\n```bash\n# Common variables\nexport CHROMA_CLIENT_TYPE=\"http\"  # or \"cloud\", \"persistent\", \"ephemeral\"\n\n# For persistent client\nexport CHROMA_DATA_DIR=\"/full/path/to/your/data/directory\"\n\n# For cloud client (Chroma Cloud)\nexport CHROMA_TENANT=\"your-tenant-id\"\nexport CHROMA_DATABASE=\"your-database-name\"\nexport CHROMA_API_KEY=\"your-api-key\"\n\n# For HTTP client (self-hosted)\nexport CHROMA_HOST=\"your-host\"\nexport CHROMA_PORT=\"your-port\"\nexport CHROMA_CUSTOM_AUTH_CREDENTIALS=\"your-custom-auth-credentials\"\nexport CHROMA_SSL=\"true\"\n```","tools":"## Available Tools\n\n1.  Flexible Client Types (Ephemeral, Persistent, HTTP, Cloud).\n2.  Collection Management (Create, modify, delete, list, get info, configure HNSW).\n3.  Document Operations (Add, query, filter, retrieve, full text search).\n4.  `create_collection` (Creates a collection).\n5.  `peek_collection` (Peeks into a collection).\n6.  `list_collections` (Lists all collections).\n7.  `get_collection_info` (Gets collection information).\n8.  `get_collection_count` (Gets the collection count).\n9.  `modify_collection` (Modifies a collection).\n10. `delete_collection` (Deletes a collection).\n11. `add_documents` (Adds documents).\n12. `query_documents` (Queries documents).\n13. `get_documents` (Gets documents).","faq":null,"created_at":"2025-02-11T00:23:22+00:00","updated_at":"2025-03-28T22:54:52+00:00","source_url":"https://model-context-protocol.com/servers/model-context-protocol-server-chroma-database","related_articles":[]}