Skip to main content
Glama

agent-wiki

The knowledge base that makes AI agents smarter over time.

Instead of retrieving raw fragments every query (RAG), your agent compiles, refines, and interlinks knowledge — like a team wiki that writes itself.

Works with Claude Code, Cursor, Windsurf, and any MCP client. Also installable as a native skill for Claude Code. No LLM built in — your agent IS the intelligence.

agent-wiki is also evolving into the reference implementation of Open Knowledge Format (OKF): a Git-native package format for agent-maintained knowledge with immutable source evidence, mutable compiled pages, schemas, indexes, evidence metadata, and machine-checkable governance.

npm CI Node MCP License: MIT

agent-wiki's built-in 3D graph view

Pages as nodes, [[wikilinks]] as edges, edits push live — included in the main package.

Quick Start

Option A: MCP Server (Cursor, Windsurf, Claude Desktop, any MCP client)

Add to your MCP client config:

{
  "mcpServers": {
    "agent-wiki": {
      "command": "npx",
      "args": ["-y", "@agent-wiki/mcp", "serve", "--wiki-path", "/path/to/knowledge"]
    }
  }
}

Option B: Native Skill (Claude Code)

npm install -g @agent-wiki/mcp

# Install as Claude Code plugin
agent-wiki install claude-code

Option C: CLI only

npx @agent-wiki/mcp call wiki_search '{"query": "deployment"}'

Option D: 3D Graph Viewer

See your wiki as a realtime 3D knowledge graph — edits push live via SSE. Included in the main package, no separate install needed.

npm install -g @agent-wiki/mcp
agent-wiki web --wiki-path ./wiki --open

Heavy browser libs (3d-force-graph, three.js) load from a CDN at runtime. See graph-viewer/README.md for the full feature list and interaction guide.

That's it. Your agent now has a persistent, structured knowledge base.

Related MCP server: BENZEMA's Personal Knowledge Card

Why Not RAG?

RAG

agent-wiki

Approach

Retrieve fragments at query time

Build and maintain compiled knowledge

Memory

Stateless — forgets after each query

Persistent — knowledge accumulates

Quality

Raw chunks, often noisy

Curated, structured, interlinked

Cost

Embedding + retrieval every query

One-time compilation, free reads

Contradictions

Invisible — buried in source docs

Flagged automatically by lint

Source tracking

Lost after retrieval

Full provenance chain (raw -> wiki)

Features

Feature

Description

Batch Mode

Generic batch tool + semantic pipelines — collapse multi-step workflows into single requests

Knowledge Pipelines

Unified knowledge_ingest modes — end-to-end ingest/digest/write-back loop without expanding the public tool surface

Structured Extraction

PDF (per-page), DOCX, XLSX (per-sheet), PPTX (per-slide) — segments with source provenance

Immutable Sources

SHA-256 verified raw/ layer — write-once, tamper-proof, full provenance

Knowledge Compilation

Agent builds structured wiki pages from raw sources — not retrieve-and-forget

BM25 Search

Field-weighted scoring, synonym expansion, fuzzy matching, CJK tokenization — zero LLM

Hybrid Search

Optional BM25+vector re-ranking via @xenova/transformers — enable with one config line, no external API

Auto-Classification

Zero-LLM heuristic assigns entity types and tags across 10 categories

Multi-Level Indexes

Auto-generated index.md at every directory level — nested topic hierarchies with sub-topic navigation

Self-Checking Lint

Catches contradictions, broken links, orphan pages, stale content

Coverage Report

raw_coverage tells the agent which raw sources have not yet been compiled into any wiki page — drives active knowledge completion

Atlassian Import

One-command Confluence pages and Jira issues with full hierarchy. Supports both Atlassian Cloud (*.atlassian.net) and self-hosted Server / Data Center, with auto-routed API endpoints and Bearer / Basic auth handling.

File Versioning

Auto-version same-name files, query latest, list all versions

Language Plugins

Deterministic parsers + cross-file knowledge graphs for legacy code. COBOL shipped with field lineage in three families (shared-copybook reuse, CALL ... USING boundary, cross-program DB2 flow), DB2 column-level pairing, dynamic CALL resolution, and a precision / recall eval harness. JCL planned. See Language Plugins below.

Skill Install

One-command install as native skill for Claude Code and compatible clients

Git-Native

Plain Markdown — diffable, blameable, revertable

Open Knowledge Format (OKF)

Directional package contract: agent-wiki.yaml manifest, immutable raw/, mutable wiki/, schemas, rebuildable indexes, evidence artifacts, and conformance checks. See OKF Adoption Plan.

3D Graph Viewer

Built-in — realtime 3D graph of pages and [[wikilinks]], edits push live over SSE. Run agent-wiki web.

Architecture

Three immutability layers, inspired by how compilers work:

Layer

Mutability

Role

raw/

Immutable

Source documents — write-once, SHA-256 verified

wiki/

Mutable

Compiled knowledge — structured pages that improve over time

schemas/

Reference

Entity templates — consistent structure across knowledge types

Open Knowledge Format (OKF)

The same layers are being formalized as OKF: a portable knowledge package that another agent or tool can inspect without a hosted service.

agent-wiki-package/
  agent-wiki.yaml   # portable package manifest
  raw/              # immutable source evidence
  wiki/             # mutable compiled knowledge
  schemas/          # page/entity contracts
  indexes/          # rebuildable search/graph artifacts
  evidence/         # provenance, confidence, coverage, page classes
  logs/             # optional operational telemetry

Important distinction: .agent-wiki.yaml remains runtime/operator config; agent-wiki.yaml is the portable OKF manifest. OKF v0.1 now has an executable path: schemas/agent-wiki-okf.schema.json, wiki_admin action: "format-check", and optional persisted package reports at evidence/okf-report.json via wiki_admin action: "rebuild" with okf_report: true.

See Open Knowledge Format for the thesis and OKF Adoption Plan for the implementation plan and feasibility assessment.

Design Principles

  1. Raw is immutable — Source documents are write-once, SHA-256 verified. Ground truth never changes.

  2. Wiki is mutable — Compiled knowledge improves with every interaction.

  3. No LLM dependency — Zero API keys, zero cost per operation. Your agent IS the intelligence.

  4. Self-checking — Lint catches structural issues and flags potential contradictions.

  5. Knowledge compounds — Every write enriches the whole wiki. Synthesis creates higher-order understanding.

  6. Provenance matters — Every wiki claim traces back to raw sources.

  7. Git-native — Plain Markdown. Every change is diffable, blameable, and revertable.

Integration

Method

Best For

Setup

MCP Server

Cursor, Windsurf, Claude Desktop, any MCP client

Add to .mcp.json

Native Skill

Claude Code (native plugin)

agent-wiki install claude-code

CLI

Any agent with shell access

agent-wiki call <tool> '{json}'

3D Graph Viewer

Visual exploration of the whole wiki

agent-wiki web -w ./wiki

Language Plugins

agent-wiki extends to source-code analysis via language plugins — deterministic parsers + cross-file knowledge graphs, no LLM. Each plugin emits structured artifacts (raw/parsed/<lang>/) and writes wiki pages with full provenance back to the source files.

Language

Status

Capabilities

COBOL

Shipped

AST parser (fixed-format with mainframe alphanumeric sequence areas + free-format). Programs, copybooks, sections, CALL (incl. dynamic-call constant propagation), COPY / REPLACING (incl. via-replacing cohorts and REPLACING-aware inferred matching), EXEC SQL (DB2 column-level host-var pairing), EXEC CICS, file access modes. Field lineage in three families: shared-copybook reuse (deterministic + inferred), CALL ... USING boundary, cross-program DB2 flow. Depth-bounded impact queries via code_query.

JCL

Planned

Job / step / dataset / proc extraction, batch-flow wiki pages, dataset-mediated cross-program lineage. See PRD Phase 2.

Tier-gate decisions (Phase C precision gates, dynamic-call resolver, DB2 column pairing) are evaluated against ground-truth fixtures via a built-in precision / recall eval harness — each PR runs against a committed NIST CCVS slice as a corpus-level regression anchor.

Hybrid Search Setup

Upgrade from keyword-only to semantic search with two steps:

1. Add to .agent-wiki.yaml:

search:
  hybrid: true

2. Run wiki_admin once to rebuild and embed all pages:

agent-wiki call wiki_admin '{"action":"rebuild"}'

The first run downloads the Xenova/all-MiniLM-L6-v2 model (~90 MB) from HuggingFace Hub and caches it locally. After that, every wiki_write automatically keeps the vector index up to date.

Hybrid mode blends BM25 + cosine similarity scores. If embedding fails for any reason, search falls back to pure BM25 — queries never fail.

See Search configuration for weight tuning.

Documentation

Acknowledgment

Inspired by Andrej Karpathy's LLM Wiki concept — the idea that AI agents should compile and maintain knowledge, not just retrieve raw fragments. This project is an independent, full implementation of that vision.

License

MIT

Available Tools

15 tools
batchA

Execute multiple tool calls in a single request. Reduces tool-call count for LLM subscriptions that bill per-request (e.g. GitHub Copilot). Supports ANY combination of tools — e.g. read 5 wiki pages, write 3 pages, add 2 raw files, search, all in one call. Wiki index rebuild is automatically deduplicated (runs once at the end, not per-write). Each operation is independent — one failure does not abort the batch. Nested batch calls are not allowed.

Inputs: operations (required).

code_parseA

Parse a source file from raw/ into structured code knowledge (AST, normalized model, summary). Currently supports COBOL (.cbl, .cob, .cpy). Persists artifacts under raw/parsed/cobol/. Optionally traces all references to a variable.

Inputs: path (required), trace_variable.

code_queryA

Query parsed code knowledge. Select query_type to control behavior:

  • trace_variable: Trace all references to a variable in a parsed source file — shows where it is read, written, or passed, grouped by section/paragraph.

  • impact: Query the compiled knowledge graph for downstream impact — returns affected programs, copybooks, or datasets grouped by dependency depth, with evidence and uncertainty markers.

  • procedure_flow: Query parsed procedure/section PERFORM flow for one source file — returns section-level and paragraph-level flow, optionally focused on one procedure.

  • field_lineage: Query compiled field-lineage artifacts — returns deterministic and inferred matches for one field, optionally narrowed to a copybook or qualified name.

  • dataflow_edges: Query field-level dataflow edges — MOVE/COMPUTE/ADD assignment, EXEC SQL host-variable, and CALL USING parameter edges. Filter by from/to, or set field+transitive: true to follow chains across the full graph.

Inputs: query_type (required), path, variable, node_id, +13 more.

knowledge_ingestA

Knowledge ingestion pipeline. Select mode to control behavior:

  • batch: Batch import, extract, chunk, and pack source documents into digest packs. Scans a directory (or single file), imports to raw/, extracts text with structural provenance (per-page PDF, per-sheet XLSX, per-slide PPTX), chunks into fixed-line segments, then packs into markdown digest packs under raw/digest-packs/{topic}/. Files already in raw/ are skipped.

  • digest_write: Write LLM-generated digest summaries to wiki with structured provenance. Creates or updates one or more wiki pages from digested content, linking back to source raw files and digest packs. Index is rebuilt once at the end. Each page gets auto-classified, auto-routed, and timestamped.

Inputs: mode (required), source_path, pattern, maxFiles, +5 more.

raw_coverageA

Report which raw/ files are not yet referenced by any wiki page. Answers 'what should I compile next?' — returns uncovered files sorted by recency/size, plus overall coverage ratio. Matches frontmatter 'sources' and inline 'raw/...' body references. Parsed artifacts (raw/parsed/) are excluded.

Inputs: limit, sort, tag.

raw_ingestA

Ingest raw source documents into the knowledge base. Select mode to control the ingestion method:

  • add: Add a local file or content string (immutable, SHA-256 verified). Supports directory imports. Single images (<10MB) returned inline — you MUST immediately call wiki_write to describe them.

  • fetch: Download a file from a URL into raw/ (arXiv abstract URLs auto-converted to PDF). Single images returned inline — you MUST immediately call wiki_write to describe them.

  • import_confluence: Recursively import Confluence pages with attachments and hierarchy. Supports both Cloud (*.atlassian.net/wiki/...) and Server / Data Center ({host}/spaces/...). Defaults to reading the CONFLUENCE_API_TOKEN env var; pass auth_env to point at any other variable. Token format accepted: email:api-token (Cloud Basic), Bearer <pat> (explicit), or a bare PAT (Bearer prefix added automatically).

  • import_jira: Import a Jira issue with comments, attachments, and linked issues. Supports both Cloud and Server / Data Center; auto-falls-back to REST API v2 on older Server / DC. Defaults to reading the JIRA_API_TOKEN env var; pass auth_env to point at any other variable. Token format accepted: email:api-token (Cloud Basic), Bearer <pat> (explicit), or a bare PAT (Bearer prefix added automatically).

Inputs: mode (required), filename, content, source_path, +13 more.

raw_listA

List all raw source documents with metadata (path, source URL, download time, hash, size).

Inputs: no named parameters.

raw_readA

Read a raw source document's content and metadata. Raw files are immutable — this is read-only. Text/SVG files return content as string; document files (PDF, DOCX, XLSX, PPTX) have text extracted automatically; other binary files (images, etc.) return metadata only.

Pagination by format:

  • PDF: use 'pages' for page ranges (e.g. '1-5')

  • PPTX: use 'pages' for slide ranges (e.g. '1-10')

  • XLSX: use 'sheet' to read a specific sheet; response always includes 'sheet_names'

  • DOCX / text: use 'offset' + 'limit' for line-based pagination (default limit: 200)

For large documents, paginate rather than reading all at once.

Inputs: filename (required), pages, sheet, offset, +1 more.

raw_versionsA

List all versions of a raw file, sorted by version number, with the latest version marked. Given a base filename (e.g. 'report.xlsx'), returns all matching versions (report.xlsx as v1, report_v2.xlsx, report_v3.xlsx, etc.) with metadata and a 'latest' field pointing to the newest file.

Inputs: filename (required).

wiki_adminA

Wiki administration and maintenance. Select action to control behavior:

  • init: Initialize a new knowledge base — creates wiki/, raw/, schemas/ directories and default templates.

  • config: Show current workspace configuration: directories, lint settings, search settings, entity templates.

  • format-check: Validate the portable OKF package manifest (agent-wiki.yaml), package inventory, and conformance findings against OKF v0.1.

  • rebuild: Rebuild index.md, timeline.md, code knowledge graphs, and optionally the vector index (when search.hybrid is enabled). Set evidence_report=true to also regenerate the evidence report and persist it to wiki/evidence-report.md as part of the rebuild. Set okf_report=true to persist evidence/okf-report.json.

  • lint: Run comprehensive health checks: contradictions, orphan pages, broken links, raw file integrity (SHA-256), synthesis page integrity. Set apply_fixes=true to auto-repair fixable issues.

  • evidence-report: Aggregate evidence-first telemetry into a corpus-level Markdown report (source coverage, lineage diagnostics, 4-week write trend, Phase 2b readiness gates). Set write=true to also persist the report to wiki/evidence-report.md.

Inputs: action (required), path, workspace, apply_fixes, +3 more.

wiki_deleteB

Delete a wiki page. Cannot delete system pages (index.md, log.md, timeline.md).

Inputs: page (required).

wiki_listA

List all wiki pages, optionally filtered by entity type or tag.

Inputs: type, tag.

wiki_readA

Read one or more wiki pages. Single page: pass page. Multiple pages: pass pages array — reads all in one request, saving N-1 round trips. RECOMMENDED WORKFLOW: (1) call without 'section' to get the TOC for large pages, (2) use wiki_search 'section' field to jump directly to the relevant heading, (3) call with 'section' to read only that part. Large pages without 'section' are truncated at 200 lines — check 'truncated' and 'toc' in the response.

Inputs: page, pages, section, offset, +1 more.

wiki_writeA

Create or update a wiki page. Content should include YAML frontmatter (title, type, tags, sources) and Markdown body. Timestamps (created/updated) are auto-managed. Auto-routes root-level pages to matching topic subdirectories (via frontmatter topic field or tag matching). Auto-links: scans body for mentions of existing page titles and injects [[slug|text]] links automatically (skips code blocks, existing links, URLs). Wiki pages are MUTABLE — they represent compiled knowledge that improves over time. Set return_content: true to include the final written content in the response — eliminates the follow-up wiki_read call in write-then-reference workflows.

Inputs: page (required), content (required), source, return_content.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 15 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose, with unique names and detailed descriptions that prevent confusion. Overlaps are minimal and well-explained, e.g., raw_ingest vs knowledge_ingest handle different stages of ingestion.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case, such as wiki_read, raw_ingest, code_query. This makes the API predictable and easy to navigate.

    Tool Count5/5

    With 15 tools, the set is well-scoped for a comprehensive knowledge base server, covering ingestion, parsing, search, and administration without being excessive.

    Completeness5/5

    The tool surface covers the full lifecycle of a wiki/knowledge base: init, config, add/read/update/delete content, search, raw file management, code analysis, and maintenance tasks like linting and rebuilds. No obvious gaps.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      This MCP server provides LLMs with a live, curated knowledge base of AI agent research, world models, and source-code reviews, enabling personalized and context-aware responses. Users can either connect to the hosted knowledge or build and host their own vault.
      -
    • A
      license
      Not graded
      quality
      D
      maintenance
      A self-hosted MCP server that gives AI agents persistent, searchable memory with importance scoring, knowledge graphs, and autonomous memory consolidation.
      1
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP server for persistent, compounding markdown wikis maintained by LLMs. Enables incremental knowledge base building with interlinked pages, search, and raw source management.
      34 npm
      1
      MIT