Skip to main content

Connecting MCP to Cognee Cloud

The Cognee MCP server can connect to your Cognee Cloud tenant using the --serve-url and --serve-api-key flags (or their environment variable equivalents COGNEE_BASE_URL and COGNEE_API_KEY). This lets any MCP-compatible client (Claude Desktop, Cursor, VS Code Copilot) work with your cloud-hosted knowledge graph.
Cognee MCPCognee Cloud
Where it runsLocally on your machineHosted by Cognee
Access methodMCP protocolcognee SDK via serve() or Cloud UI
AuthenticationBearer token (self-hosted)X-Api-Key header
API endpointsSelf-hosted backend endpoints such as /api/v1/remember and /api/v1/recallHosted SDK/client flow via serve()
Use caseAI IDE tools (Cursor, Claude Code, etc.)Cloud-managed knowledge graphs

Why API_URL only works with self-hosted Cognee backends

The MCP server’s API_URL / API_TOKEN mechanism is designed for self-hosted Cognee backends. When the MCP server runs in API mode, it:
  • Sends requests to self-hosted Cognee endpoints such as /api/v1/remember, /api/v1/recall, /api/v1/improve, and /api/v1/forget
  • Authenticates with Authorization: Bearer <token>
The older API_URL / API_TOKEN environment variables are designed for self-hosted Cognee backends, not Cognee Cloud. Use --serve-url / COGNEE_BASE_URL and --serve-api-key / COGNEE_API_KEY for Cloud connections.

End-to-end walkthrough

1

Get your API credentials

Open the API Keys page in the Cognee Cloud console. Copy:
  • API Base URL — looks like https://your-tenant.aws.cognee.ai
  • API Key — a long token used to authenticate requests
2

Start the MCP server

Pass your credentials via CLI flags or environment variables:
cognee-mcp --transport sse --port 8001 \
  --serve-url https://your-tenant.aws.cognee.ai \
  --serve-api-key your-api-key
The server is ready when you see output like:
INFO: Started server process
INFO: Waiting for connections on http://127.0.0.1:8001
3

Add Cognee to your MCP client

Add the server to your client’s MCP configuration. The config file location varies by client — see the integrations section for your specific tool.
{
  "mcpServers": {
    "cognee": {
      "url": "http://localhost:8001/sse"
    }
  }
}
4

Verify the connection

Test that memory operations reach your Cloud tenant. In your MCP client, ask:
“Use Cognee to remember: cloud connection test successful”
Then retrieve it:
“Use Cognee to recall the cloud connection test”
If Cognee returns the stored value, the end-to-end connection is working. You can also confirm the data appeared in the Cognee Cloud UI.

Available tools

Once connected, your MCP client gets the Cognee API v1 memory tools:
ToolDescription
rememberStore data in memory (add + cognify in one step)
recallSearch memory with auto-routing
forgetDelete data from memory

Other connection options

Run the MCP server in standalone mode (no Cloud connection). The server manages its own local knowledge graph.
# Standalone mode — requires LLM_API_KEY
LLM_API_KEY=sk-... cognee-mcp --transport sse --port 8001
This is the simplest way to add persistent memory to Cursor, Claude Code, Cline, and other MCP-compatible tools.
Access Cognee Cloud programmatically using the cognee SDK connected through serve(), which handles authentication and communication with the hosted service.
export COGNEE_BASE_URL="https://your-tenant.aws.cognee.ai"
export COGNEE_API_KEY="your-cognee-cloud-api-key"
import asyncio
import cognee

async def main():
    await cognee.serve()  # Reads COGNEE_BASE_URL and COGNEE_API_KEY
    await cognee.remember("...", dataset_name="my_dataset")
    results = await cognee.recall("...", datasets=["my_dataset"])
    print(results)

asyncio.run(main())
If you prefer not to use environment variables, pass both values directly:
await cognee.serve(
    url="https://your-tenant.aws.cognee.ai",
    api_key="your-api-key",
)
See the Cloud SDK guide for a complete walkthrough.
If you want multiple AI clients to share a single knowledge graph, run a self-hosted Cognee backend and point the MCP server at it using API_URL and API_TOKEN:
# 1. Start a self-hosted Cognee backend
docker run -e LLM_API_KEY=your_key -p 8080:8000 --rm -it cognee/cognee:main

# 2. Start MCP in API mode pointing to your backend
docker run \
  -e TRANSPORT_MODE=sse \
  -e API_URL=http://localhost:8080 \
  -e API_TOKEN=your_backend_token \
  -p 8000:8000 --rm -it cognee/cognee-mcp:main
See the MCP Quickstart for full details on this pattern.