Chroma MCP Server

Official
by chroma-core
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Supports building JavaScript LLM applications with vector database memory capabilities powered by Chroma, enabling embedding-based retrieval for context augmentation.

  • Supports building Python LLM applications with vector database memory capabilities powered by Chroma, enabling embedding-based retrieval for context augmentation.

크로마 MCP 서버

모델 컨텍스트 프로토콜(MCP) 은 LLM 애플리케이션과 외부 데이터 소스 또는 도구 간의 원활한 통합을 위해 설계된 개방형 프로토콜로, LLM에 필요한 컨텍스트를 원활하게 제공하기 위한 표준화된 프레임워크를 제공합니다.

이 서버는 Chroma 기반의 데이터 검색 기능을 제공하여 AI 모델이 생성된 데이터와 사용자 입력에 대한 컬렉션을 생성하고 벡터 검색, 전체 텍스트 검색, 메타데이터 필터링 등을 사용하여 해당 데이터를 검색할 수 있도록 합니다.

특징

  • 유연한 클라이언트 유형
    • 테스트 및 개발을 위한 임시(메모리 내)
    • 파일 기반 저장소에 대한 지속성
    • 자체 호스팅 Chroma 인스턴스용 HTTP 클라이언트
    • Chroma Cloud 통합을 위한 클라우드 클라이언트(api.trychroma.com에 자동으로 연결)
  • 컬렉션 관리
    • 컬렉션을 만들고, 수정하고, 삭제합니다.
    • 페이지 매김 지원이 있는 모든 컬렉션 나열
    • 수집 정보 및 통계를 얻으세요
    • 최적화된 벡터 검색을 위해 HNSW 매개변수 구성
    • 컬렉션을 생성할 때 임베딩 함수를 선택하세요
  • 문서 작업
    • 선택적 메타데이터 및 사용자 정의 ID가 있는 문서 추가
    • 의미 검색을 사용하여 문서 쿼리
    • 메타데이터와 문서 콘텐츠를 사용한 고급 필터링
    • ID 또는 필터로 문서 검색
    • 전체 텍스트 검색 기능

지원되는 도구

  • chroma_list_collections - 페이지 매김을 지원하는 모든 컬렉션 나열
  • chroma_create_collection - 선택적 HNSW 구성으로 새 컬렉션을 만듭니다.
  • chroma_peek_collection - 컬렉션의 문서 샘플 보기
  • chroma_get_collection_info - 컬렉션에 대한 자세한 정보를 가져옵니다.
  • chroma_get_collection_count - 컬렉션에 있는 문서 수를 가져옵니다.
  • chroma_modify_collection - 컬렉션의 이름이나 메타데이터 업데이트
  • chroma_delete_collection - 컬렉션 삭제
  • chroma_add_documents - 선택적 메타데이터 및 사용자 정의 ID를 사용하여 문서 추가
  • chroma_query_documents - 고급 필터링을 사용한 의미 검색을 사용하여 문서 쿼리
  • chroma_get_documents - 페이지 번호가 있는 ID 또는 필터로 문서 검색
  • chroma_update_documents - 기존 문서의 콘텐츠, 메타데이터 또는 임베딩을 업데이트합니다.
  • chroma_delete_documents - 컬렉션에서 특정 문서 삭제

임베딩 함수

Chroma MCP는 default , cohere , openai , jina , voyageai , roboflow 등 여러 가지 임베딩 함수를 지원합니다.

임베딩 함수는 Chroma의 컬렉션 구성을 활용하며, 컬렉션에서 선택된 임베딩 함수를 검색 시 유지합니다. 컬렉션 구성을 사용하여 컬렉션을 생성하면 향후 쿼리 및 삽입을 위해 검색할 때 동일한 임베딩 함수가 사용되므로 임베딩 함수를 다시 지정할 필요가 없습니다. 임베딩 함수 지속성은 Chroma v1.0.0에서 추가되었으므로, 버전 0.6.3 이하를 사용하여 컬렉션을 생성한 경우 이 기능은 지원되지 않습니다.

외부 API를 활용하는 임베딩 함수에 액세스할 때는 임베딩 함수 환경 변수 에서 찾을 수 있는 올바른 형식으로 API 키에 대한 환경 변수를 추가해야 합니다.

Claude Desktop과 함께 사용

  1. 임시 클라이언트를 추가하려면 claude_desktop_config.json 파일에 다음을 추가하세요.

지엑스피1

  1. 영구 클라이언트를 추가하려면 claude_desktop_config.json 파일에 다음을 추가하세요.
"chroma": { "command": "uvx", "args": [ "chroma-mcp", "--client-type", "persistent", "--data-dir", "/full/path/to/your/data/directory" ] }

이렇게 하면 지정된 데이터 디렉토리를 사용하는 영구 클라이언트가 생성됩니다.

  1. Chroma Cloud에 연결하려면 claude_desktop_config.json 파일에 다음을 추가하세요.
"chroma": { "command": "uvx", "args": [ "chroma-mcp", "--client-type", "cloud", "--tenant", "your-tenant-id", "--database", "your-database-name", "--api-key", "your-api-key" ] }

이렇게 하면 SSL을 사용하여 api.trychroma.com에 자동으로 연결되는 클라우드 클라이언트가 생성됩니다.

참고: 로컬 장치에서는 인수에 API 키를 추가하는 것이 괜찮지만, 안전을 위해 args 목록 내에서 --dotenv-path 인수를 사용하여 환경 구성 파일에 대한 사용자 지정 경로를 지정할 수도 있습니다. 예: "args": ["chroma-mcp", "--dotenv-path", "/custom/path/.env"] .

  1. [자체 클라우드 공급자의 자체 호스팅 Chroma 인스턴스]( https://docs.trychroma.com/production/deployment )에 연결하려면 claude_desktop_config.json 파일에 다음을 추가하세요.
"chroma": { "command": "uvx", "args": [ "chroma-mcp", "--client-type", "http", "--host", "your-host", "--port", "your-port", "--custom-auth-credentials", "your-custom-auth-credentials", "--ssl", "true" ] }

이렇게 하면 자체 호스팅 Chroma 인스턴스에 연결하는 HTTP 클라이언트가 생성됩니다.

시민

Chroma MCP 문서 에서 공유 지식 기반 및 컨텍스트 창에 메모리 추가와 같은 참조 사용법을 찾아보세요.

환경 변수 사용

환경 변수를 사용하여 클라이언트를 구성할 수도 있습니다. 서버는 --dotenv-path 로 지정된 경로에 있는 .env 파일(작업 디렉터리의 기본값은 .chroma_env ) 또는 시스템 환경 변수에서 자동으로 변수를 로드합니다. 명령줄 인수는 환경 변수보다 우선합니다.

# Common variables export CHROMA_CLIENT_TYPE="http" # or "cloud", "persistent", "ephemeral" # For persistent client export CHROMA_DATA_DIR="/full/path/to/your/data/directory" # For cloud client (Chroma Cloud) export CHROMA_TENANT="your-tenant-id" export CHROMA_DATABASE="your-database-name" export CHROMA_API_KEY="your-api-key" # For HTTP client (self-hosted) export CHROMA_HOST="your-host" export CHROMA_PORT="your-port" export CHROMA_CUSTOM_AUTH_CREDENTIALS="your-custom-auth-credentials" export CHROMA_SSL="true" # Optional: Specify path to .env file (defaults to .chroma_env) export CHROMA_DOTENV_PATH="/path/to/your/.env"

함수 환경 변수 임베딩

API 키에 액세스하는 외부 임베딩 함수를 사용할 때는 CHROMA_<>_API_KEY="<key>" 명명 규칙을 따르세요. 따라서 Cohere API 키를 설정하려면 환경 변수 CHROMA_COHERE_API_KEY="" 설정하세요. 이 변수를 .env 파일에 추가하고 CHROMA_DOTENV_PATH 환경 변수 또는 --dotenv-path 플래그를 사용하여 해당 위치를 설정하는 것이 좋습니다.

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

Chroma 임베딩 데이터베이스를 기반으로 데이터 검색 기능을 제공하는 서버로, AI 모델이 생성된 데이터와 사용자 입력에 대한 컬렉션을 생성하고 벡터 검색, 전체 텍스트 검색, 메타데이터 필터링을 사용하여 해당 데이터를 검색할 수 있습니다.

  1. Features
    1. Supported Tools
    2. Embedding Functions
  2. Usage with Claude Desktop
    1. Demos
    2. Using Environment Variables
ID: utidzg09ay