Context7
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Description from the maker (original English)
Persistent scoped Qdrant memory for agents, through four explicit stdio MCP tools.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
QDRANT_URL, QDRANT_API_KEY, EMBEDDING_API_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"qdrant-memory": {
"command": "uvx",
"args": [
"qdrant-memory-mcp",
"mcp"
],
"env": {
"QDRANT_URL": "your-value",
"QDRANT_API_KEY": "your-value",
"EMBEDDING_API_KEY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add qdrant-memory --env QDRANT_URL=your-value --env QDRANT_API_KEY=your-value --env EMBEDDING_API_KEY=your-value -- uvx qdrant-memory-mcp mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"qdrant-memory": {
"command": "uvx",
"args": [
"qdrant-memory-mcp",
"mcp"
],
"env": {
"QDRANT_URL": "your-value",
"QDRANT_API_KEY": "your-value",
"EMBEDDING_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"qdrant-memory": {
"type": "stdio",
"command": "uvx",
"args": [
"qdrant-memory-mcp",
"mcp"
],
"env": {
"QDRANT_URL": "your-value",
"QDRANT_API_KEY": "your-value",
"EMBEDDING_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
QDRANT_URL envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account cnkang, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: QDRANT_API_KEY, EMBEDDING_API_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.3.1) reached the registry yesterday.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Context7, Codebase Memory, Exa
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
One Memory. Multiple Agents. No Lock-in.
The Codex plugin candidate adds guided local setup, read-only native-memory import and verified JSON/Markdown handoff. It is versioned independently and does not add a second Runtime. See the executed validation and limits. Exports remain readable without this plugin or a subscription; native adoption is verified separately from file creation.
Durable, portable, and permission-aware memory for AI agents — distributed as an MCP adapter over the Qdrant Memory Runtime.
For shared production deployments, read the deployment security guide. Owner-only database write credentials are required independently of MCP grants. Configure destination protection and shared doctor before deployment. See the Owner support record for support limits.
The distribution adds an opt-in single-owner service and stdio bridge. Install Runtime 0.6.0 to use them. See shared integration guide. Private defaults are unchanged. Native Provider automatic shared extraction is deferred.
A WorkBuddy connector and a DeepSeek Harness bundle reuse this stdio MCP, the managed launcher and the canonical Skill.
简体中文
Persistent, scoped memory for AI agents through four explicit stdio MCP tools. This repository distributes the existing Python Runtime. Its metadata-only wheel contains no Python business implementation. The console script points directly to qdrant_memory.standalone:main and depends on hermes-plugin-qdrant-memory[mcp]==0.6.0.
See 0.3.1 release notes for the Runtime pin and upgrade guidance.
Before using an exact-version installation command, confirm that version on the PyPI release page. If unavailable, these package commands cannot run yet. Use the published 0.3.0 guide until publication; a source candidate does not establish PyPI or npm availability.
Versions: MCP distribution 0.3.1 pins Runtime 0.6.0, which supports MCP Python SDK 1.x and 2.x (mcp>=1.30,<3). The four scoped tools and stdio launch arguments are the same for both SDK majors. The commands below use these exact versions. Release artifacts are available through the distribution PyPI page and Runtime PyPI page. See release checklist for the publishing sequence.
Runtime, optional Agent Skill and MCP distribution versions are independent. The Skill is usage guidance, not a runtime dependency. Hermes retains its native MemoryProvider, automatic extraction and prefetch. Ordinary MCP performs only explicitly requested memory operations. It does not automatically extract every conversation turn.
Verification levels: configuration example only, protocol-level tested, official SDK/CLI tested, real host tested, real desktop GUI tested, not verified.
| Host | Native Provider | Explicit MCP tools | Automatic capture | Automatic recall | Shared Owner | Remote access | Verification |
|---|---|---|---|---|---|---|---|
| Hermes | Yes | Yes (via standalone) | Yes | Yes | Opt-in | Yes | Real host tested |
| OpenCode | No | Yes | No | No | Via Owner | Yes | Real host tested (dual-device) |
| Pi | No | Yes (extension) | Opt-in adapter | Opt-in adapter | Via Owner | Yes | Real host tested |
| DeepSeek Harness | No | Yes (DSH bundle) | No | No | Via Owner | Yes | Real host tested |
| WorkBuddy | No | Yes (connector) | No | No | Via Owner | Yes | Real desktop GUI tested |
| Codex | No | Yes | No | No | Via Owner | Yes | Official CLI tested |
This distribution does not auto-extract conversations for any MCP host. Automatic capture and recall require a native provider or a lifecycle adapter. See the Codex validation record for the tested CLI, source revisions and model providers; desktop GUI and native-memory adoption are separate verification boundaries.
For the shortest currently supported local setup, follow the Ollama quickstart (中文). It covers an existing model, installing a missing model, a separate WorkBuddy profile, connection settings and a first save/search check. No Qdrant server, Docker, cloud account or embedding API key is needed for that local path. Python/uv and one-time profile configuration are still required for this direct route. The managed WorkBuddy connector and DSH bundle prepare those dependencies from Node.js instead.
Requires Python 3.11+ and either uv or a Python virtual environment. You must configure storage and an embedding service. For the example below, run Ollama and install qwen3-embedding:4b yourself.
Create an operator-owned profile directory and save qdrant-memory.json inside:
{
"schema_version": 1, "scope": {"user_id": "my-user", "agent_id": "my-agent"}, "qdrant": {"mode": "embedded", "collection": "qdrant_memory"}, "embedding": { "mode": "plugin", "provider": "ollama", "model": "qwen3-embedding:4b", "base_url": "http://127.0.0.1:11434", "dimensions": 2560, "distance": "Cosine" } }
Initialize, then launch (replace /path/to/profile with your absolute path):
uvx --from qdrant-memory-mcp==0.3.1 qdrant-memory-mcp --home /path/to/profile init
uvx --from qdrant-memory-mcp==0.3.1 qdrant-memory-mcp --home /path/to/profile mcp
The command without --home uses ~/.qdrant-memory, independent of Hermes. Configure and initialize that directory before letting a Registry client launch uvx --from qdrant-memory-mcp==0.3.1 qdrant-memory-mcp mcp. The executable name matches the package name. The Registry's positional mcp selects protocol mode. Its optional named --home precedes mcp when a client supplies a custom profile.
Alternatively:
python3 -m venv .venv
.venv/bin/python -m pip install qdrant-memory-mcp==0.3.1 .venv/bin/qdrant-memory-mcp --home /path/to/profile init .venv/bin/qdrant-memory-mcp --home /path/to/profile mcp
On Windows use .venv\Scripts\python.exe and .venv\Scripts\qdrant-memory-mcp.exe.
Qdrant embedded, self-hosted server and Cloud, plus Ollama and OpenAI-compatible embeddings, are configured in the Runtime's configuration reference. Keep credentials in operator environment variables (QDRANT_API_KEY, EMBEDDING_API_KEY, or configured names). Never commit their values. Initialization against an existing collection requires explicit operator choice. Do not use a production destination for a first test.
Codex config.toml example:
[mcp_servers.qdrant_memory]
command = "uvx" args = ["--from", "qdrant-memory-mcp==0.3.1", "qdrant-memory-mcp", "--home", "/path/to/profile", "mcp"]
OpenCode opencode.json example:
{
"$schema": "https://opencode.ai/config.json", "mcp": { "qdrant_memory": { "type": "local", "command": ["uvx", "--from", "qdrant-memory-mcp==0.3.1", "qdrant-memory-mcp", "--home", "/path/to/profile", "mcp"], "enabled": true } } }
Pi needs a separately installed MCP client/extension. In that extension, use command: uvx and the same argument list. No built-in Pi MCP support or universal extension config format is claimed. These are configuration examples. This protocol acceptance tests use the official Python MCP SDK. Host-specific evidence is recorded separately in the architecture and support boundaries and the Runtime's client evidence and limits.
| Tool | Input | Result |
|---|---|---|
qdrant_memory_search | query, optional category | Scoped memories with IDs, scores and provenance |
qdrant_memory_add | text | Durable memory ID |
qdrant_memory_update | exact id, replacement text | Scoped replacement |
qdrant_memory_delete | exact id | Scoped deletion |
Scope is fixed by the operator's profile (user_id, agent_id). Model inputs and MCP client identity cannot override it. Knowing an ID does not grant access. Migration, export, reset and bulk deletion remain trusted operator CLI commands. See standalone maintenance. No resources or prompts are advertised. This is a local subprocess, with no public HTTP/SSE listener or remote authentication service. Stdout is reserved for protocol messages, with sanitized diagnostics on stderr.
Data flows from client → Runtime → embedding provider → Qdrant and the local SQLite ledger. With local Ollama and embedded Qdrant, memory processing stays local. Cloud embedding receives memory/query text, and cloud Qdrant receives vectors and stored payloads. The client/model may also receive recalled text. The operator must authorize retention and access and protect the profile files.
One writer lease coordinates a profile/destination. Do not overlap MCP, CLI or Hermes processes writing to it. Separate profiles or machines do not provide a distributed lock. This package does not support uncoordinated multiprocess writes, auto-extraction, an HTTP transport, or implicit credential discovery from Hermes. It preserves the Runtime's ledger, IDs and recovery semantics.
Validation reports apply to their recorded versions, workloads and host environments. Short protocol or cloud runs do not establish 24-hour acceptance for a new release.
CI builds wheel/sdist, checks metadata and ownership marker. It runs installed protocol tests with temporary profiles, embedded Qdrant and a deterministic loopback embedding fixture on Linux/macOS/Windows, Python 3.11 and 3.14. No test connects to personal Qdrant, Hermes profiles or memory data. These tests cover initialize, discovery, four tools, persistence, recovery, scope isolation, error redaction and protocol stdout. Provider/cloud compatibility evidence belongs to the Runtime.
CI prefers the immutable Runtime PyPI release. Before a Runtime release reaches PyPI, CI builds a wheel from the immutable revision recorded in runtime-source.json. This is only a preparation fixture: published dependency metadata always uses the exact PyPI version. Release workflow acceptance requires installation from PyPI and never uses that fallback.
See CI and dependency maintenance, publishing, architecture, and the optional Skill.
The runtime dependency is only hermes-plugin-qdrant-memory[mcp]. The sdist includes the Python acceptance tests, apart from harnesses th
Only the beginning is shown; read the rest in the repo