Use when the user wants to connect cognee to external services — switching LLM or embedding providers (OpenAI, Azure, Gemini, Anthropic, Ollama, OpenRouter), changing databases (Postgres, PGVector, Neo4j, Neptune, Turso), S3 storage, or the MCP server for IDE integration.
All integration config is environment variables (.env). The authoritative,
always-current list with commented examples is .env.template at the repo
root — check it before inventing variable names. Install the matching extra
before switching a backend (e.g. pip install cognee[postgres]).
Default is OpenAI (LLM_API_KEY is all you need). To switch, set
LLM_PROVIDER, LLM_MODEL, LLM_API_KEY, and (where relevant)
LLM_ENDPOINT / LLM_API_VERSION:
LLM_PROVIDER=azure, LLM_MODEL=azure/gpt-4o-mini, endpoint + api version required.LLM_PROVIDER=gemini, LLM_MODEL=gemini/gemini-2.0-flash-exp.cognee[anthropic]): LLM_PROVIDER=anthropic, model e.g. claude-3-5-sonnet-20241022.cognee[ollama]): LLM_PROVIDER=ollama, LLM_ENDPOINT=http://localhost:11434/v1, and set the embedding block + HUGGINGFACE_TOKENIZER too.LLM_PROVIDER=custom with the provider's OpenAI-compatible endpoint.cognee[aws]): LLM_PROVIDER=bedrock + AWS credentials/region.The classic trap: LLM and embeddings are configured independently
(EMBEDDING_PROVIDER, EMBEDDING_MODEL, EMBEDDING_ENDPOINT,
EMBEDDING_API_KEY). Configuring only one leaves the other on OpenAI —
either keep a valid OpenAI key or configure both.
DB_PROVIDER): sqlite (default) or postgres
(cognee[postgres]; host/port/user/password/name via DB_* vars).VECTOR_DB_PROVIDER): lancedb (default), pgvector
(cognee[postgres], needs VECTOR_DB_URL), neptune_analytics
(cognee[neptune]), turso (cognee[turso]). Anything else (ChromaDB,
Qdrant, Weaviate, Milvus, …) lives in community adapters — install from
https://github.com/topoteretes/cognee-community and register with
use_vector_adapter before use; setting VECTOR_DB_PROVIDER alone raises
"Unsupported vector database provider".GRAPH_DATABASE_PROVIDER): ladybug (default), neo4j
(cognee[neo4j], bolt URL + credentials), neptune (cognee[neptune]),
ladybug-remote, postgres (no raw Cypher / natural-language search).The repo docker-compose.yml ships ready-to-use postgres (pgvector) and
neo4j profiles with matching default credentials. From a container, reach
host services with DB_HOST=host.docker.internal.
cognee[aws]): STORAGE_BACKEND=s3 + bucket/credentials,
and point DATA_ROOT_DIRECTORY/SYSTEM_ROOT_DIRECTORY at s3:// paths.CACHE_BACKEND = sqlite (default) | postgres | redis | fs | tapes.ONTOLOGY_FILE_PATH to an OWL file, resolver/matching via
ONTOLOGY_RESOLVER / MATCHING_STRATEGY.docker compose --profile mcp up starts the MCP server on port 8001
(SSE transport), built from cognee-mcp/. Point Cursor / Claude Desktop /
Claude Code at it to use cognee memory from the IDE. Configure its DB_* env
to match the main service so both see the same data.
Embeddings from different models are not comparable — after switching the
embedding provider or model, reset local state (cognee-cli forget --all or
await cognee.forget(everything=True)) and re-ingest with remember().
To drop just the graph and vectors while keeping the ingested files, use
await cognee.forget(dataset="my_project", memory_only=True) — the dataset can
then be rebuilt under the new embedding model without re-uploading anything.
Copy a source-pinned command for your client. You run it yourself.
Destination: .claude/skills/cognee-integrations · pinned to the source commit
# Run from your project root
git clone https://github.com/topoteretes/cognee.git .skillboard-tmp
git -C .skillboard-tmp checkout 690c0ec023719a2a277dc893cdecfec1ca8012cc
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/.claude/skills/cognee-integrations" ".claude/skills/"
rm -rf .skillboard-tmpReview the source before running. This copies files into your project; it is not a one-click install and does not verify runtime safety.
sudo apt update && sudo apt install -y gitnpm install -g @anthropic-ai/claude-code# Run from your project root
git clone https://github.com/topoteretes/cognee.git .skillboard-tmp
git -C .skillboard-tmp checkout 690c0ec023719a2a277dc893cdecfec1ca8012cc
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/.claude/skills/cognee-integrations" ".claude/skills/"
rm -rf .skillboard-tmpDestination: .claude/skills/cognee-integrations
Scanner static-checks@0.1.0 · commit 690c0ec02371. Static checks cannot prove runtime safety – review the source and the exact diff before installing. How checks work.
References credentials, tokens or secret files that a skill should not need.
Evidence: [redacted]· fingerprint e9cbb0224c4a3d23
Instructs shell/process/package operations that run commands on the host.
Evidence: pip install· fingerprint 7944ec554efca445