Context7
Up-to-date docs for AI agents
제작자가 쓴 설명(영어 원문)
Auditable memory for AI agents: provenance, cascade retraction, conflict refusal
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
제작자가 레지스트리에 설치 정보를 올리지 않았어요. 아래 제작자의 README를 확인하세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 factum-project 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.3)은 2개월 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Rust도 있어야 해요.
같은 카테고리에는: Context7, Codebase Memory, Exa
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도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, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
Status: v0.1.3 — Early stage, seeking early collaborators.
Core write/query/retract pipeline works. Not production-ready. Architectural decisions are still open to change.
[Interactive docs](https://factum-project.github.io/factum/) — animated syntax parsing, 7-tuple explorer, query pipeline, token efficiency chart, and MCP architecture diagram.
Every fact an agent writes carries mandatory provenance. When a source is retracted, everything derived from it is invalidated automatically — cascade retraction. When facts conflict, Factum returns Ambiguous instead of guessing.
A structured knowledge language (S-expression based), Rust implementation, stdio MCP server — works with Claude Code, Cursor, and any MCP client.
Status: v0.1.3, early stage. Core write/query/retract pipeline works; no semantic search or memory consolidation yet — Factum handles verified structured facts, not conversation context. Best suited for compliance-sensitive agents, multi-agent shared knowledge bases, and anywhere "why did the agent believe X" needs an answer. See the multi-agent usage guide for shared knowledge base patterns.
Unique to Factum: grammar-enforced provenance · cascade retraction · conflict refusal.
Not (yet) in Factum: embedding-based semantic retrieval · memory consolidation · HTTP transport.
Complementary: Mem0/Letta store and retrieve context; Factum stores auditable structured facts. They can run side by side via MCP.
| Agent memory pain point | Factum mechanism |
|---|---|
| Can't tell "user said" from "LLM inferred" | 5-level provenance + grammar-enforced model name on Extracted nodes |
| Stale memory used as current fact | Soft delete + cascade retraction via reverse dependency graph |
| Conflicting memories silently pick one | Ambiguous — refuses to answer rather than guess |
| Memory pollution (prompt injection) | Provenance chain makes contamination traceable and retractable |
| Enterprise can't let agents store sensitive data | Index-level permission filtering — no post-query leakage |
Academic context: The STALE benchmark (2025) shows that even the best LLM agents achieve only 55.2% accuracy at detecting when their own memories are outdated — confirming that memory staleness is an unsolved problem in agent systems.
:note for human-readable context"auto" as the node ID in factum_insert or factum_assert to auto-generate content-based IDs — no manual ID managementExtracted nodes MUST carry model + version — the parser rejects them if missing (not just a documentation convention)deps_rev reverse dependency graph); configurable node limit prevents cascade explosion in large knowledge basesfactum_assert returns corroborated (not an error) — independent agreement is the most valuable multi-agent signalAmbiguous when it cannot uniquely resolveDec(i128, u8) — zero floating-point error| Module | Status | Notes |
|---|---|---|
| factum-core (types, lexer, parser, serialize) | ✅ Implemented | 100% syntactic round-trip |
| factum-rt (store, query, arbitration, permissions, verifiers) | ✅ Implemented | In-memory store (default) + RocksDB persistence (--features rocksdb); 5 column families, WriteBatch atomic writes |
| factum-mcp (JSON-RPC bridge) | ✅ Protocol + handler | stdio transport verified end-to-end; HTTP transport not yet implemented (remote deployment requires custom wrapper) |
| factum-bench (benchmarks) | ✅ Implemented | Syntax round-trip + token efficiency + query perf |
| factum-l (latent space projection) | ❌ Not started | Research item — see ROADMAP.md |
| Wikidata/Mathlib corpus converters | ❌ Not started | M2 milestone |
| Lean/Z3 verifiers | ❌ Not started | Only Schema + DecimalRange verifiers implemented |
| Embedding-based semantic search | ❌ Not started | Not on roadmap — consider using Mem0 alongside Factum |
| Memory consolidation/summarization | ❌ Not started | Not on roadmap — consider using Letta alongside Factum |
| Inspector (visual debugger) | ❌ Not started |
# Build
cargo build
cargo test
cargo run -p factum-demo
cargo build --features rocksdb cargo test --features rocksdb
cargo build --release -p factum-mcp --features rocksdb --bin factum-mcp-server
cargo +nightly fuzz run fuzz_parser -- -max_total_time=600
# Build the MCP server binary (in-memory, default)
cargo build --release -p factum-mcp --bin factum-mcp-server
cargo build --release -p factum-mcp --features rocksdb --bin factum-mcp-server
claude mcp add --transport stdio --scope local factum -- "$(pwd)/target/release/factum-mcp-server"
claude mcp add --transport stdio --scope local factum -- \ "$(pwd)/target/release/factum-mcp-server" --db-path ~/.factum/store
claude mcp get factum
See Getting Started with Factum MCP for the full guide.
; Acme Corp knowledge graph
(node n001 :pred (instance-of @ACME-CORP organization) :conf 0.99 :auth 0.95 :perm public :src (asserted "wikidata"))
(node n004 :pred (shareholder-major @ACME-CORP @FOUNDER-1 0.73 :since #date(2001-03-15)) :conf 0.85 :auth 0.8 :perm confidential :src (extracted "doc002" [100 200] (model "claude-sonnet-4" "2025-01")))
(node n006 :pred (subsidiary-of @ACME-SUB @ACME-CORP :since #date(2001-03-15)) :src (derived n001 "rule-subsidiary-merge") :deps [n001])
When n001 is retracted, n006 is automatically invalidated — the agent knows it can no longer trust the subsidiary relationship.
| Layer | What It Means | Status |
|---|---|---|
| Agent Read | Agent receives Factum-F as context via MCP — lower token overhead than verbose JSON | ✅ Token efficiency measured (real o200k_base: canonical −62%, compact −53% vs JSON) |
| Agent Write | Agent generates Factum-F nodes — parse uniqueness guarantees one valid interpretation, error classes enable self-correction | ✅ See authoring guide |
| Latent Reasoning | factum-l: encode Factum-F into continuous thought vector, reason in latent space, decode back for audit | 🔬 Research item — not started, not blocking layers 1-2 |
A structured knowledge language underpins the memory layer — S-expression based for parse uniqueness, with Dec(i128, u8) for lossless numerics and mandatory model references for LLM self-auditing. Full design rationale in docs/design-rationale.md.
TL;DR: Factum canonical form saves ~62% tokens vs verbose JSON with the same metadata. All numbers measured with real o200k_base (GPT-4o) tokenizer via tiktoken-rs.
| Format | Real tokens (5 nodes) | vs verbose JSON | What it includes |
|---|---|---|---|
| Factum canonical | 238 | −62% | Full 7-tuple: provenance + confidence + validity + permissions |
| Factum compact (JSON) | 290 | −53% | Same 7-tuple, JSON with numeric tags |
| Markdown | 181 | −71% | Assertion text only — no provenance, no confidence, no permissions |
| JSON (pretty) | 623 | baseline | Same 7-tuple metadata in verbose JSON encoding |
Run
cargo test -p factum-bench test_token_efficiency_real_tokenizer -- --nocaptureto reproduce.
Key finding: The canonical S-expression form (238 tokens) is more token-efficient than the compact JSON form (290 tokens) — BPE tokenizers split JSON delimiters but merge S-expression parentheses. The form designed for correctness is also the most token-efficient.
parse(serialize(parse(x))) == parse(x). 100% and verified by the test suite + fuzzing. This is the trust foundation.morphemes.toml via build.rs)morphemes.toml codegen is a future M2 item for external contributions.| Format | How Factum Differs |
|---|---|
| RDF / JSON-LD | RDF triples carry no per-node provenance, confidence, or permissions. Factum makes these first-class and non-optional. |
| Markdown | Markdown has zero metadata. Factum trades human readability for machine verifiability. |
| JSON | JSON has no schema, no provenance, no temporal validity. Factum compact form uses JSON as transport but adds structure and audit chain. |
| Mem0 / Zep / Letta | These store and retrieve agent memory. Factum adds grammar-enforced provenance, cascade retraction, and conflict refusal. Complementary, not competitive. |
factum/
├── crates/ │ ├── factum-core/ # Data model, lexer, parser, serialization │ ├── factum-rt/ # Runtime: store (InMemory + RocksDB), query, arbitration, permissions, verifiers │ ├── factum-mcp/ # MCP bridge: JSON-RPC tools/resources, stdio transport │ ├── factum-bench/ # Benchmarks: round-trip, token efficiency, query perf │ └── factum-demo/ # End-to-end demonstration ├── fuzz/ # cargo-fuzz targets (parser, serialize round-trip, lexer) ├── spec/ # Conformance test vectors (JSON, language-agnostic) ├── docs/site/ # Interactive visualization (GitHub Pages) ├── .github/workflows/ # CI: test + fuzz + gitleaks + Pages deploy ├── Cargo.toml # Workspace root ├── ROADMAP.md # What's planned and in what order ├── SECURITY.md # Vulnerability disclosure ├── CONTRIBUTING.md # How to contribute ├── CHANGELOG.md # Version history ├── docs/design-rationale.md # Why each architectural decisio
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요