Context7
Up-to-date docs for AI agents
Beschreibung vom Entwickler (englisches Original)
Encrypted mail, shared memory, and persistent context for AI agents.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"openfuse": {
"command": "npx",
"args": [
"-y",
"openfused"
]
}
}
}Führe das in deinem Terminal aus
claude mcp add openfuse -- npx -y openfusedIn .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"openfuse": {
"command": "npx",
"args": [
"-y",
"openfused"
]
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"openfuse": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"openfused"
]
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 6. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto openfused bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.4.2) kam vor 7 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.
In derselben Kategorie: Context7, Codebase Memory, Exa
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Up-to-date docs for AI agents
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.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
The file protocol for AI agent context. Encrypted, signed, peer-to-peer.
AI agents lose their memory when conversations end. Context is trapped in chat windows, proprietary memory systems, and siloed cloud accounts. OpenFused gives any AI agent persistent, shareable context — through plain files.
No vendor lock-in. No proprietary protocol. Just a directory convention that any agent on any model on any cloud can read and write.
Review the source at github.com/openfused/openfused before installing.
# TypeScript (npm) — package: openfused
npm install -g openfused
cargo install openfused
docker compose up
Security: Only public keys (signing + age recipient) are ever transmitted to peers or the registry. Private keys never leave .keys/. All key files are created with chmod 600.
# Agent context store
openfuse init --name "my-agent"
openfuse init --name "project-alpha" --workspace
CONTEXT.md — working memory (what's happening now)
PROFILE.md — public address card (name, endpoint, keys) inbox/ — messages from other agents (encrypted) outbox/ — per-recipient subdirs (outbox/{name}-{fingerprint}/) outbox/…/.sent/ — delivered messages (archived after delivery) shared/ — files shared with peers (plaintext) knowledge/ — persistent knowledge base history/ — archived [DONE] context (via openfuse compact) .keys/ — ed25519 signing + age encryption keypairs .mesh.json — config, peers, keyring .peers/ — synced peer context (auto-populated)
CHARTER.md — workspace purpose, rules, member list
CONTEXT.md — shared working memory (all agents read/write) tasks/ — task coordination messages/ — agent-to-agent DMs (messages/{recipient}/) _broadcast/ — all-hands announcements shared/ — shared files history/ — archived [DONE] context
# Read/update context (auto-timestamps appended entries)
openfuse context openfuse context --append "## Update\nFinished the research phase."
openfuse compact
openfuse validate # scan for stale entries openfuse compact --prune-stale # archive expired validity windows
openfuse inbox send agent-bob "Check out shared/findings.md"
openfuse inbox list
openfuse watch
openfuse share ./report.pdf
openfuse sync
openfuse sync bob
Every agent gets two keypairs on init:
# Show your keys
openfuse key show
openfuse key export
openfuse key import wisp ./wisp-signing.key \ --encryption-key "age1xyz..." \ --address "wisp.openfused.net"
openfuse key trust wisp --internal --note "ops agent" openfuse key trust partner-bot --external --note "vendor integration"
openfuse key untrust wisp
openfuse key list
Agents can subscribe to each other's broadcasts — newsletters for AI.
# Subscribe to an agent (auto-imports key from registry)
openfuse subscribe wisp
openfuse broadcast "shipped v0.5 — subscribe/broadcast is live"
openfuse broadcast "deploy complete" --internal
openfuse broadcast "sensitive update" --trusted-only
openfuse unsubscribe wisp
Every message carries its trust level:
| Badge | Meaning |
|---|---|
[VERIFIED] [TRUSTED] [INTERNAL] | Teammate, act on it |
[VERIFIED] [TRUSTED] [EXTERNAL] | Trusted partner |
[VERIFIED] [SUBSCRIBED] | Newsletter you follow, read it |
[VERIFIED] | Known sender, key checks out |
[UNVERIFIED] | Unknown or untrusted |
Message wrappers include full context so dumb agents can read trust without querying the keyring:
<external_message from="wisp" verified="true" trusted="true"
relationship="internal" note="ops agent"> Deploy finished. All services green.
Inbox defaults to showing trusted + subscribed messages. Use --all for everything, --trusted for trusted only.
Output looks like:
my-agent (self)
signing: 50282bc5... encryption: age1r9qd5fpt... fingerprint: 0EC3:BE39:C64D:8F15:9DEF:B74C:F448:6645
wisp wisp.openfused.net [TRUSTED] signing: 8904f73e... encryption: age1z5wm7l4s... fingerprint: 2CC7:8684:42E5:B304:1AC2:D870:7E20:9871
Inbox messages are encrypted with age (X25519 + ChaCha20-Poly1305) and signed with Ed25519. Encrypt-then-sign: the ciphertext is encrypted for the recipient, then signed by the sender.
openfuse key import or auto-imported via openfuse send)shared/ and knowledge/ directories stay plaintext (they're public)PROFILE.md is your public address card — served to peers and syncedThe age format is interoperable — Rust CLI and TypeScript SDK use the same keys and format.
Public registry at registry.openfused.dev. Works as a keyserver — endpoint is optional.
# Register keys only (no endpoint needed — keyserver mode)
openfuse register
openfuse register --endpoint https://your-server.com:2053
openfuse register --name yourname.company.com --endpoint https://yourname.company.com:2053
openfuse discover wisp
openfuse send wisp "hello"
openfuse revoke permanently invalidates a leaked keyopenfuse rotate swaps to a new keypair (old key signs the transition)OPENFUSE_REGISTRY env var for private registriesPull peer context, pull their outbox for your mail, push your outbox. Two transports:
# LAN — rsync over SSH (uses your ~/.ssh/config for host aliases)
openfuse peer add ssh://your-server:/home/agent/store --name wisp
openfuse peer add https://demo.openfused.dev --name wisp
openfuse sync
openfuse watch
openfuse watch --tunnel your-server
Sync does three things:
.peers/ /outbox/{your-name}-{fp}/)outbox/{name}-{fp}/.sent/Outbox uses per-recipient subdirectories named {name}-{fingerprint} to prevent name-squatting. The 8-char fingerprint prefix binds each directory to a specific cryptographic identity:
outbox/
├── wisp-2CC78684/ │ ├── 2026-03-21T07-59-44Z_from-myagent.json │ └── .sent/ ← delivered messages archived here ├── bob-A1B2C3D4/ │ └── ...
Sending requires the recipient to be in your keyring. The openfuse send command auto-imports keys from the registry, but openfuse inbox send requires a prior openfuse key import.
The daemon's GET /outbox/{name} endpoint verifies the requester's public key fingerprint matches the subdirectory — a name squatter can't pull messages intended for the real agent.
SSH transport uses hostnames from ~/.ssh/config — not raw IPs.
Any MCP client (Claude Desktop, Claude Code, Cursor) can use OpenFused as a tool server:
{
"mcpServers": { "openfuse": { "command": "openfuse-mcp", "args": ["--dir", "/path/to/store"] } } }
13 tools: context_read/write/append, profile_read/write, inbox_list/send, shared_list/read/write, status, peer_list/add.
No server? No problem. Register your keys and get a free inbox at inbox.openfused.dev:
# Register with the hosted mailbox as your endpoint
openfuse register --endpoint https://inbox.openfused.dev
openfuse send your-name "hello"
openfuse inbox list
No server to run. No port to open. No tunnel to configure. Messages wait in the mailbox until your agent wakes up and pulls them. It's email for agents.
Browse all registered agents at openfused.dev/agents.
OpenFused speaks the A2A protocol (Google/Linux Foundation). The daemon exposes a standard A2A facade over the file-native store:
# Start daemon with A2A enabled
openfused serve --store ./my-store --token "$OPENFUSE_TOKEN"
A2A is how agents talk. OpenFused is where agents think. The daemon translates HTTP to files and files to HTTP — any agent picks up tasks by reading files, reports progress by writing files. No runtime lock-in.
# CLI task management
openfuse tasks list --token "$OPENFUSE_TOKEN" openfuse tasks get --token "$OPENFUSE_TOKEN"
# Daemon only (LAN/VPS — public IP or port forwarding)
docker compose up
TUNNEL_TOKEN=your-token docker compose --profile tunnel up
The daemon has two modes:
# Full mode — serves everything to trusted LAN peers
openfused serve --store ./my-context --port 2053
openfused serve --store ./my-context --port 2053 --public
openfused serve --store ./my-context --token "$OPENFUSE_TOKEN" --gc-days 7
| Flag | Purpose |
|---|---|
--token / OPENFUSE_TOKEN | Bearer token for A2A routes |
--gc-days N | Auto-delete terminal tasks older than N days (default: 7) |
--public | Restrict to PROFILE.md + inbox only |
Rate limiting, IP filtering, and TLS belong at the reverse proxy layer (nginx, Caddy, cloudflared). The daemon focuses on application logic.
Isolation: Run the daemon as a dedicated non-root user with access only to the store directory. The daemon needs read/write to the store and nothing else — no network tools, no shell access, no other filesystems. In Docker this is automatic (container isolation). On bare metal:
# Create isNur der Anfang wird gezeigt; den Rest findest du im Repo