Context7
Up-to-date docs for AI agents
作者による説明(英語の原文)
Local SQLite MCP memory: evidence-based recall, advisory conflict notices, authorized governance.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
MEMORY_ARBITER_CONFIG, MEMORY_ARBITER_CLIENT, MEMORY_ARBITER_AGENT_ID, MEMORY_ARBITER_DB_PATH, MEMORY_ARBITER_BACKUP_JSONL, MEMORY_ARBITER_MCP_TRANSPORT必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"memory-arbiter": {
"command": "uvx",
"args": [
"memory-arbiter-mcp"
],
"env": {
"MEMORY_ARBITER_CONFIG": "your-value",
"MEMORY_ARBITER_CLIENT": "your-value",
"MEMORY_ARBITER_AGENT_ID": "your-value",
"MEMORY_ARBITER_DB_PATH": "your-value",
"MEMORY_ARBITER_BACKUP_JSONL": "your-value",
"MEMORY_ARBITER_MCP_TRANSPORT": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add memory-arbiter --env MEMORY_ARBITER_CONFIG=your-value --env MEMORY_ARBITER_CLIENT=your-value --env MEMORY_ARBITER_AGENT_ID=your-value --env MEMORY_ARBITER_DB_PATH=your-value --env MEMORY_ARBITER_BACKUP_JSONL=your-value --env MEMORY_ARBITER_MCP_TRANSPORT=your-value -- uvx memory-arbiter-mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"memory-arbiter": {
"command": "uvx",
"args": [
"memory-arbiter-mcp"
],
"env": {
"MEMORY_ARBITER_CONFIG": "your-value",
"MEMORY_ARBITER_CLIENT": "your-value",
"MEMORY_ARBITER_AGENT_ID": "your-value",
"MEMORY_ARBITER_DB_PATH": "your-value",
"MEMORY_ARBITER_BACKUP_JSONL": "your-value",
"MEMORY_ARBITER_MCP_TRANSPORT": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"memory-arbiter": {
"type": "stdio",
"command": "uvx",
"args": [
"memory-arbiter-mcp"
],
"env": {
"MEMORY_ARBITER_CONFIG": "your-value",
"MEMORY_ARBITER_CLIENT": "your-value",
"MEMORY_ARBITER_AGENT_ID": "your-value",
"MEMORY_ARBITER_DB_PATH": "your-value",
"MEMORY_ARBITER_BACKUP_JSONL": "your-value",
"MEMORY_ARBITER_MCP_TRANSPORT": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
MEMORY_ARBITER_CONFIG envMEMORY_ARBITER_CLIENT envMEMORY_ARBITER_AGENT_ID envMEMORY_ARBITER_DB_PATH envMEMORY_ARBITER_BACKUP_JSONL envMEMORY_ARBITER_MCP_TRANSPORT envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント billy12151 で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.18.4)がレジストリに届いたのは一昨日です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:Context7, Codebase Memory, Exa
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
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.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
English | [中文](README.zh-CN.md)
Official site & docs: [memarbiter.cn](https://memarbiter.cn/)
Memory Arbiter (迷码) is a capability amplifier for your AI agents: plug it in over MCP and every agent you use — Claude Code, Cursor, Codex, ZCode — becomes one assistant with a running memory. Decisions made in Claude today are usable in Cursor tomorrow; every fact carries its provenance, collisions get surfaced before they bite, and what you've locked cannot be silently overwritten. One SQLite file on your machine holds every fact in full; every model — embeddings, conflict judge — runs locally.
Current release: `0.18.4` · local-first · MCP-native · 4 tools · knowledge workbench in
0.18.0
Every coding agent you use — Claude Code, Cursor, Codex, ZCode — keeps its own notes and knows nothing about the others. Facts get duplicated, contradicted, and silently go stale. mema replaces that with one trusted fact store all your agents share:
read span=[start,end] slices the exact original text.Evaluated on LoCoMo-Refined (all 1,382 questions, official judge Qwen3-14B):
| Configuration | Overall | Text-only |
|---|---|---|
| mema + writer-agent (deepseek-v4.1-flash writer, public rules) | 61.00% | 65.62% |
mema verbatim (zero-LLM write path, utterances + event_time as-is) | 43.13% | 49.48% |
Context: Mem0's full pipeline scores 48.91% on the same text-only basis (re-scored by the benchmark authors) — bare mema with no LLM in the write path matches it; with a writer-agent, mema's text-only score trails only MemoraX on the leaderboard. Full methodology and reproduction: evals/locomo/RESULTS.md.
Every release must pass the internal exam suite — fixed fixtures: 42 recall queries across five query kinds (paraphrase / lookup / legal / far / keyword), 106 conflict pairs across four label classes (33 true conflicts), and four similarity-label groups (as of 0.18.0, shipped judge and thresholds; reproduce with eval/runner.py --suite all):
| Gate | Result |
|---|---|
| Self-recall (65 targets, top-10) | 65/65 |
| Conflict arbitration (D4 headline, any-channel) | Recall 48.48% (16/33) · Precision 94.12% (16/17) |
| batch_find cross-query consistency | 0 mismatches (42 queries × 6 batches) |
| Conflict-window completion | 48/48 |
The exam is deliberately conservative and precision-favored: whatever the strict gate withholds is not lost — mid-band suspects land in the weekday triage queue instead. This is the quality bar that ships, re-measured on every release.
Paste this into Codex, Claude Code, Cursor, or another coding agent with terminal access:
Read the latest README at https://github.com/billy12151/memory-arbiter-mcp.
Install and configure the latest mema release for my operating system and current AI client. Preserve any existing config and database; do not overwrite or delete existing data. Ask me before choosing between materially different install modes, changing existing config, or performing any destructive or privileged action. When finished, run mema doctor and report the install method, config path, database path, client integration, and verification result.
The agent treats this README as the source of truth, picks uvx/core/vec/semantic-local from your environment, and stops for user input when a safe choice cannot be inferred. A successful install is not complete until mema doctor has run and every warning has been reported. On a fresh install the agent may also offer a one-minute product demo — it first checks the mema-first-run-demo-status marker memory (offered at most once, globally; skipped silently if it exists).
# One command: package + deps + embedding model + config.json (resumable downloads, ModelScope fallback)
curl -fsSL https://memarbiter.cn/install.sh | bash
Or step by step:
pip install "memory-arbiter-mcp[vec,semantic-local]" # core + sqlite-vec + local GGUF runtime
mema setup --install # downloads the embedding GGUF (~330MB, resumable); the mDeBERTa judge is a separate manual install mema doctor # verify
Then wire your MCP client from examples/*.mcp.json and start the server with mema. Missing capabilities (models not downloaded) surface as a persistent degraded banner with remediation — an incomplete install cannot pass for a complete one.
Full documentation, the Team edition and the personal edition live at [memarbiter.cn](https://memarbiter.cn/) (docs: memarbiter.cn/docs).
Two things to know before first use:
client and agent_id in config.json — no built-in defaults, the server refuses to start when either is blank.memory_review(view="workspaces") first to list existing buckets, then pass one; 'default' is the global pool.| Tool | Surface |
|---|---|
memory | remember, find, batch_find, read, batch_read, update, judge, status, help |
memory_review | read-only health, conflict groups/details, history, expired/audit, entities, workspaces |
memory_govern | explicitly authorized retirement, conflict-plan application/resolution, confirmations |
memory_repair | evidence rebuild, broad conflict scanning, history cleanup, backup replay |
Every call returns {ok, mode, warnings, degraded, data}; things needing your attention arrive as notices or data.action_required. Point any agent at the packaged rule: memory(action="help", data={"topic":"agent_onboarding"}).
The daily loop is four calls — remember a reusable fact, find to recall, read for exact lookup, update when a newer source replaces an old fact (never a second active copy of one source of truth). find is an index page (metadata + content_chars + outline with source offsets); batch_find merges 8 queries into one round-trip; read span=[start,end] quotes exactly; an empty recall says so honestly instead of stuffing recent memories.
Conflict arbitration, included. Candidate pairs surviving a deterministic funnel (sentence prefilter → memory screen → cosine band → rule evidence) are judged by the local mDeBERTa encoder — two bare row texts in, one calibrated conflict probability out. Only high-confidence conflicts notify; narrative hearsay is dismissed by a post-verdict code rule; mid-band suspects land in a bounded two-band ledger that a weekday triage task clears with row-level evidence — never in user-facing lists, never a full-library rescan. The judge never picks a winner and never edits memory: findings live in one auditable conflicts lifecycle (open → applying → resolved) your agent walks under explicit authorization (judge → apply_conflict_action → resolve_conflict, CAS-pinned revisions).
A knowledge workbench, included. memory-arbiter console opens a local browser console: curate your knowledge base (one-click kb_member add/remove — a dedicated column agents cannot drop by rewriting tags), browse by workspace → tag with markdown and one-hop relation graphs, and run seven one-click study actions on any memory (knowledge summary / key points / merge & tidy / self-quiz / plain-words explain / ask-me / timeline) with your own OpenAI-compatible API — outputs write back as memories, attributed to the console.
Trust, enforced. Provenance on every write, append-only version history, normal/protected/locked trust levels plus the user_confirmed label, and per-action authorized=true on every state-changing governance call. Workspace isolation comes in none/weak/strict — under strict, a new workspace stays pending until you confirm it, and the reserved default pool is invisible from project scopes. Workspaces listed in a recall_blacklist.jsonl file next to the database are excluded from unscoped recall; mema doctor reports the effective list.
File-only, in ~/.config/memory-arbiter/config.json. The complete surface is 34 keys — full template at examples/memory-arbiter.config.example.json, per-key docs and migration tables in docs/INTEGRATION.md. The keys that matter on day one:
{
"client": "your-client", "agent_id": "your-agent-id", "workspace": "default", "isolation": "none", "embedding": { "model_path": ".../embedding.gguf", "auto_query": true, "auto_write": true }, "semantic_conflict": { "mdeberta_ckpt": ".../mdeberta-v78_ep5_fp16.pt" }, "mcp": { "transport": "stdio" } }
embedding.model_path — pointing at a local GGUF model is the sole intent to enable evidence recall.semantic_conflict.mdeberta_ckpt — pointing at the judge checkpoint (see below) enables write-time arbitration.mcp.transport — stdio (default) or streamable-http for one shared local server.MEMORY_ARBITER_CONFIG/DB_PATH/BACKUP_JSONL/MCP_TRANSPORT/CLIENT/AGENT_ID); config file wins, and any other MEMORY_ARBITER_* export warns "no longer read".stdio (default) needs no background process. To share one server across several clients: set mcp.transport to "streamable-http", keep the process alive (launchd template in examples/ — mema has no built-in daemon), and point clients at http://127.0.0.1:8000/mcp with the fixed X-Mema-Client/X-Mema-Agent-Id headers from [examples/streamable-http.mcp.json](examples/streamable-http.mcp.js
冒頭だけを表示しています。続きはリポジトリで読めます