Sandbox
@looptech-ai/understand-quickly

Registry and MCP access for code knowledge graphs

This project publishes a machine-readable index of code-knowledge graphs and keeps each entry schema-validated. Agents can read `registry.json`, fetch the graph URL for a repo, and cache by `last_sha` to stay current.

48 starsโ€ข2 forksโ€ขJavaScriptโ€ขUpdated 1mo ago
Who it's for

Builders who want their agent to understand a repo from a published graph instead of a full manual walkthrough.

What it delivers

You can point an agent at a repo and get structured project context in one fetch.

What it does

Public registry

Tracks repo entries in `registry.json` and serves them from GitHub Pages and `.well-known/repos.json`.

Schema validation

Validates registry entries and graph bodies against JSON Schemas in `schemas/`.

MCP server

Exposes tools like `list_repos`, `get_graph`, and `search_concepts` for Claude Code, Codex, Cursor, and other MCP clients.

CLI and wizard

Lets you add a repo with `npx @looptech-ai/understand-quickly-cli add` or the web wizard.

Publish workflow

Provides `looptech-ai/uq-publish-action@v0.1.0` and a publish template to sync graphs after commits.

How to get it

  1. 1Run
    curl -fsSL https://looptech-ai.github.io/understand-quickly/registry.json
  2. 2Run
    pip install understand-quickly
  3. 3Run
    git clone https://github.com/looptech-ai/understand-quickly
    cd understand-quickly
    npm install && npm test

README

๐Ÿง  understand-quickly

A public, machine-readable registry of code-knowledge graphs.

Point AI agents at any indexed repo and they get a current, schema-validated graph โ€” one URL, one fetch.

sync pages release License: Apache 2.0 Data License PRs welcome issues last commit OpenSSF Scorecard

MCP Registry npm CLI npm MCP PyPI Marketplace npm downloads CLI npm downloads MCP PyPI downloads

Latest: v0.4.0 โ€” CLI 0.1.3, MCP 0.1.2, Python SDK 0.1.1, GH Action v0.1.0. CHANGELOG โ†’

Browse โ†’ ยท Add your repo (wizard) ยท Quickstart ยท FAQ (plain English) ยท Alternatives ยท Badge ยท Contributing


New here? Read this first ๐Ÿ‘‹

It's a public directory of "map files" for codebases. Each entry points at a JSON file (a knowledge graph or context bundle) that describes a project's structure โ€” files, functions, modules, how they connect โ€” in a shape that AI tools can read in one network request.

If you're a project maintainer, you can add your repo so AI assistants can understand it instantly. If you're an AI agent or tooling developer, you can fetch any indexed graph by URL with no auth and no SDK.

  • No code required to be listed. Use the wizard โ€” fill four fields, the bot opens the PR.
  • No infrastructure, no costs. Graphs stay in your repo; we only store pointers.
  • Open and public. Apache 2.0 code; permissive Data License for the registry.

First time? The FAQ answers "what is a knowledge graph?", "do I need this?", and "what happens after I submit?" in plain language.


Quickstart

I'm an AI agent / SDK user

curl -fsSL https://looptech-ai.github.io/understand-quickly/registry.json

Pick entries with status: "ok". Fetch entry.graph_url. Cache by last_sha. That's the whole API.

I want to register my repo

Pick the path that fits:

  • ๐Ÿ–ฑ๏ธ Wizard: Add your repo โ†’. Fills the issue for you; the bot opens the PR.
  • ๐Ÿ’ป CLI: npx @looptech-ai/understand-quickly-cli add โ€” auto-detects everything. (npm)
  • โœ๏ธ Manual PR: see Add your repo below.

I want to use it from Claude / Codex / Cursor (MCP)

Three ways, pick whichever your MCP client likes best:

{
  "mcpServers": {
    // 1. Via the MCP Registry โ€” package name; client resolves it.
    "understand-quickly": {
      "package": "io.github.looptech-ai/understand-quickly"
    },

    // 2. Via npm โ€” install once, run the bin.
    //    npm i -g @looptech-ai/understand-quickly-mcp
    "understand-quickly-npm": {
      "command": "understand-quickly-mcp"
    },

    // 3. Via tsx โ€” for hacking on the source in this repo.
    "understand-quickly-dev": {
      "command": "npx",
      "args": ["tsx", "/path/to/understand-quickly/mcp/src/index.ts"]
    }
  }
}

Tools: list_repos, get_graph, search_concepts. See mcp/README.md.

I'm a Python developer

pip install understand-quickly
from understand_quickly import Registry
print(Registry().list(status="ok"))

See python-sdk/README.md.

I'm a developer / contributor

git clone https://github.com/looptech-ai/understand-quickly
cd understand-quickly
npm install && npm test

Then read CONTRIBUTING.md.


How it works

                 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                 โ”‚   looptech-ai/       โ”‚
                 โ”‚  understand-quickly  โ”‚
                 โ”‚                      โ”‚
                 โ”‚  registry.json       โ”‚ โ† canonical pointers
                 โ”‚  schemas/            โ”‚ โ† per-format JSON Schemas
                 โ”‚  README.md           โ”‚ โ† auto-rendered table
                 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
            PR / dispatch โ”‚ raw.githubusercontent.com
                          โ”‚
        โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
        โ–ผ                                     โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”                  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Source repo with โ”‚                  โ”‚ AI agent / MCP /    โ”‚
โ”‚ knowledge graph  โ”‚                  โ”‚ human reader        โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
  • Storage: graphs live in source repos. The registry stores only pointers.
  • Validation: every PR runs schema checks on registry.json and the graph body.
  • Freshness: nightly sync resyncs every entry; source repos can opt-in to instant refresh via repository_dispatch.

Supported formats

FormatSource toolTier
understand-anything@1Understand-Anythingfirst-class
gitnexus@1GitNexusfirst-class
code-review-graph@1code-review-graphfirst-class
bundle@1repo-context packers (Repomix, gitingest, codebase-digest, โ€ฆ)first-class
generic@1any {nodes, edges} graphfallback

Adding a new format: PR schemas/<name>@<int>.json + an ok and bad fixture under schemas/__fixtures__/<name>/. Full instructions in CONTRIBUTING.md.

Upstream tools that produce these formats can integrate via the integration protocol. PR templates are in docs/integrations/.

Integrating an upstream tool

Easiest path: drop the looptech-ai/uq-publish-action into your release/build workflow.

- uses: looptech-ai/uq-publish-action@v0.1.0
  with:
    graph-path: '.your-tool/graph.json'
    format: 'your-format@1'
    token: ${{ secrets.UNDERSTAND_QUICKLY_TOKEN }}

The Action stamps metadata.{tool, tool_version, generated_at, commit} into the graph and fires a repository_dispatch (event_type=sync-entry) at this registry. See docs/integrations/protocol.md for the full producer contract.

Embed an indexed-by badge

Once registered, link a status badge in your repo's README. Lower-case the owner/repo and replace / with -- โ€” for example looptech-ai/uq-publish-action becomes looptech-ai--uq-publish-action:

[![indexed by understand-quickly](https://looptech-ai.github.io/understand-quickly/badges/OWNER--REPO.svg)](https://looptech-ai.github.io/understand-quickly/?entry=OWNER/REPO)

The badge auto-updates as your entry's status changes. See docs/badge.md for the full reference.

Discovery (.well-known/code-graph)

Agents can discover this registry's contents without going through registry.json:

curl -fsSL https://looptech-ai.github.io/understand-quickly/.well-known/repos.json
# returns { schema_version, repos: [{id, format, graph_url, last_synced, status, source_sha}] }

To make YOUR repo discoverable without registering here, publish a .well-known/code-graph.json at the root of your repo. See the Code-Knowledge-Graph Protocol (CKGP v1) spec.

Distribution

ChannelInstall
Pages browser + JSONhttps://looptech-ai.github.io/understand-quickly/
MCP Registryio.github.looptech-ai/understand-quickly (listed in https://registry.modelcontextprotocol.io)
npm CLInpm i -g @looptech-ai/understand-quickly-cli
npm MCP servernpm i -g @looptech-ai/understand-quickly-mcp
PyPI SDKpip install understand-quickly
GitHub Actionlooptech-ai/uq-publish-action@v0.1.0

All MIT-or-Apache-2.0 source-licensed. All free to use. The registry data itself is covered by the Understand-Quickly Data License 1.0.

Add your repo

The fastest path is the wizard or npx @looptech-ai/understand-quickly-cli add. The manual flow:

  1. Run a supported tool locally and commit its output to your repo.

  2. Fork this repo.

  3. Append an entry to registry.json:

    {
      "id": "you/yourrepo",
      "owner": "you",
      "repo": "yourrepo",
      "format": "understand-anything@1",
      "graph_url": "https://raw.githubusercontent.com/you/yourrepo/main/.understand-anything/knowledge-graph.json",
      "description": "one-liner about your project",
      "tags": ["python", "agents"]
    }
    
  4. Open a PR. Validation runs automatically.

Optional: instant refresh on push

Drop docs/publish-template.yml into your repo as .github/workflows/understand-quickly-publish.yml. Add a fine-grained UNDERSTAND_QUICKLY_TOKEN PAT (scoped to repository_dispatch on this registry) to your repo secrets. Every push that touches your graph file triggers an immediate registry sync.

Registry

Auto-generated. Do not hand-edit between the markers.

RepoFormatDescriptionStatusLast synced
understand-quickly/demo-code-review-graphcode-review-graph@1Demo entry: a sample code-review-graph export covering files, classes, and tests.โœ… ok2026-06-25
understand-quickly/demo-gitnexusgitnexus@1Demo entry: a sample GitNexus graph modeled on its own codebase.โœ… ok2026-06-25
understand-quickly/demo-understand-anythingunderstand-anything@1Demo entry: a hand-built sample knowledge graph in the understand-anything@1 shape.โœ… ok2026-06-25

Status legend

Each entry's status field tells consumers whether the linked graph is currently usable.

EmojiStatusMeaningWhat to do
๐Ÿ†•pendingRegistered but the registry hasn't synced it yet.Wait for the next sync (โ‰ค24h, or fire repository_dispatch for instant).
โœ…okFetched, validated, current.Use it.
๐ŸŸกmissing404 in the last sync. Will keep retrying.Verify the file exists at the registered URL on the default branch.
โš ๏ธinvalidBody failed schema validation.Run npm run validate locally; fix the field that fails.
๐Ÿ“ฆoversizeGraph exceeds 50 MB; not fetched.Slim the graph or split it.
๐Ÿ”transient_errorNetwork or 5xx; will retry next sync.Usually nothing โ€” wait one cycle.
๐Ÿ’€dead7+ consecutive misses.Re-publish or open an issue to remove the entry.
โ†ช๏ธrenamedSuperseded by renamed_to.Update tooling to point at the new id.
๐ŸšซrevokedMaintainer-retracted.Don't consume; contact maintainers if unexpected.

Development

nvm use            # Node 20
npm install
npm test           # node:test
npm run test:coverage
npm run validate   # validate registry.json + graphs
npm run sync       # resync all entries (writes registry.json)
npm run smoke      # dry-run sync against tests/registry-smoke.json
npm run render     # regenerate README table

Test suites at HEAD: 132 root + 25 CLI + 27 MCP + 54 Python SDK + 15 Playwright = 253 tests.

Releases

Automated via release-please. Conventional Commits (feat: / fix:) on main โ†’ release-please opens a per-component Release PR โ†’ merging the PR tags and publishes the affected component (CLI, MCP, Python SDK). See docs/ops/release-process.md for the full flow, tag prefixes, and rollback recipes.

Contributing

CONTRIBUTING.md walks through every contribution flow. Trusted authors can land registry-only PRs without review โ€” see docs/verified-publishers.md. By participating you agree to the Code of Conduct. Security issues: SECURITY.md. Security model: see threat-model.

For questions, ideas, or showing off your registered graph: GitHub Discussions.

Special thanks

To the maintainers who carry this protocol upstream.

Adopters (merged)

Integrations in flight

ProjectPR
tirth8205/code-review-graph#449
AsyncFuncAI/deepwiki-open#517
punkpeye/awesome-mcp-servers#6148
yamadashy/repomix#1563
coderamp-labs/gitingest#577
kamilstanuch/codebase-digest#7
safishamsi/graphify#802
The-Pocket/PocketFlow-Tutorial-Codebase-Knowledge#185
DeusData/codebase-memory-mcp#332
AIDotNet/OpenDeepWiki#361

Upstream tools we build on

PRs welcome โ€” see CONTRIBUTING.md.

Star history

Star History Chart

License

  • Code โ€” Apache License 2.0 ยฉ 2026 Alex Macdonald-Smith and LoopTech.AI. Includes a patent grant and contributor terms.
  • Registry data โ€” Understand-Quickly Data License 1.0. Anyone can use the registry, including for AI/ML training; in exchange, contributions and submissions grant Alex Macdonald-Smith and LoopTech.AI a perpetual, sublicensable data-use right that travels with any fork or extension. See DATA-LICENSE.md for the full terms.
  • NOTICE file: NOTICE.

Files in the repo

Repository payloadโ€ข27 top-level entries
  • .clusterfuzzlite
  • .github
  • cli
  • docs
  • fuzz
  • mcp
  • python-sdk
  • schemas
  • scripts
  • site
  • tests
  • .gitignore
  • .lychee.toml
  • .nvmrc
  • .release-please-manifest.json
  • CHANGELOG.md
  • CODE_OF_CONDUCT.md
  • CODEOWNERS
  • CONTRIBUTING.md
  • LICENSE
  • NOTICE
  • package-lock.json
  • package.json
  • README.md
  • registry.json
  • release-please-config.json
  • SECURITY.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More tools

JuliusBrussee/
caveman

๐Ÿชจ why use many token when few token do trick โ€” Claude Code skill that cuts 65% of tokens by talking like caveman

105k
1 add
MemPalace/
mempalace

The best-benchmarked open-source AI memory system. And it's free.

59k
stablyai/
orca

Orca is the ADE for working with a fleet of parallel agents. Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.

66k

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

132k

Never stop coding. Free MIT AI gateway: one endpoint, 352 providers (150+ free), 1200+ models Kimi, Claude, GPT, Gemini, GLM, DeepSeek, MiniMax. Works with Claude Code, Codex, Cursor, OpenCode, Cline & Copilot. Quota-aware auto-fallback, RTK+Caveman compression saves 15-95% tokens, MCP/A2A, Desktop/PWA. Built by 550+ contributors

64k
headroomlabs-ai/
headroom

Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.

71k