Ontology Atlas MCP Server

by wlsdks• 147•• Scanned•Claim this listing•Request removal
Coding Agentsai agents frameworkclaude codecode visualizationcodebasecodex

Understand what your codebase builds, why it is structured that way, and what a change could affect. One shared Markdown ontology for humans and coding agents—visualized for people, accessible to agents through MCP, and reviewed with Git. Local-first. Open source.

Ontology Atlas is an open-source mcp server by wlsdks, written mainly in TypeScript, with 147 GitHub stars and the MIT license. Its code was last updated Oct 26, 2026.

English | 한국어 | 日本語 | 简体中文

<h1 align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="public/brand/lockup-dark@2x.png" /> <img src="public/brand/lockup-light@2x.png" alt="Ontology Atlas" width="360" /> </picture> </h1> <p align="center"><strong>Understand your system as AI agents change its code.</strong></p> <p align="center"> A map of what your code does and why, kept as Markdown in your repository<br /> and read by both you and your coding agent. </p> <p align="center"> <a href="https://ontologyatlas.com/en/download/"><strong>Download for macOS</strong></a> · <a href="https://ontologyatlas.com/en/topology/">Try it in the browser</a> · <a href="https://ontologyatlas.com/en/guide/">Guide</a> </p> <p align="center"><a href="LICENSE"><img alt="MIT license" src="https://img.shields.io/badge/license-MIT-5e6ad2.svg" /></a> <a href="https://github.com/wlsdks/ontology-atlas/releases"><img alt="Latest release" src="https://img.shields.io/github/v/release/wlsdks/ontology-atlas?color=5e6ad2" /></a> <a href="https://mcpservers.org/servers/wlsdks/ontology-atlas"><img src="https://mcpservers.org/badge.svg" alt="Listed on mcpservers.org" height="20" /></a> <a href="https://stackmap.shipwithai.xyz/repos/wlsdks/ontology-atlas"><img src="https://img.shields.io/endpoint?url=https%3A%2F%2Fstackmap.shipwithai.xyz%2Fapi%2Fbadge%2Fontology-atlas.json" alt="On StackMap" height="20" /></a></p>

The Ontology Atlas map of this repository's own ontology with the Ontology Atlas project selected: its domains and capabilities laid out around it, a concept list on the left, and the project record with its code-evidence state on the right

Why

Coding agents now change code faster than a team can keep a picture of it in their heads. Atlas keeps that picture beside the code: what each part is for, which files implement it, what depends on what, and what nobody knows yet. Your agent reads it before a task and proposes updates after; you keep, correct or reject each change as a Markdown diff.

  • Your agent starts with context. Claude Code, Codex, Cursor and Antigravity read the concepts, code paths, dependencies and open questions a task touches, over MCP.
  • You own the record. One Markdown file per concept in an atlas/ folder, versioned and reviewed in Git like the code.
  • You decide what is true. Agent proposals stay proposals until you accept them.
  • It says what it does not know. A line on the map is a declared relationship, not proof of runtime impact; missing evidence shows as unknown, never as safe. Compact task handoffs preserve whole uncertainty statements or report omissions with the document reads needed to inspect them. Initial analysis also excludes literal Markdown examples and marks truncated document evidence for review with a hash-bound original-source follow-up. Task matching and navigation use authored evidence; code examples, hidden comments and blockquotes cannot supply capability claims or work coordinates.

See it

<table> <tr> <td width="50%"><img src="public/gateway/projects.en.png" alt="Projects: each project with its domains, capabilities and code-evidence state" /><br /><b>Projects</b> — every project and how much of it has code evidence.</td> <td width="50%"><img src="public/gateway/library.en.png" alt="Library: sources on the left, the wiki pages written from them, and the concepts those pages name" /><br /><b>Library</b> — documents in, cited wiki pages out.</td> </tr> <tr> <td width="50%"><img src="public/gateway/planning.en.png" alt="Planning: a project folder's Markdown files listed on the left, one document open on the right" /><br /><b>Planning</b> — read a project folder's Markdown in place, without copying it.</td> <td width="50%"><img src="public/gateway/changes.en.png" alt="Changes: one week of commits, each with its date" /><br /><b>Changes</b> — what was merged in a period, counted and grouped, with the pull requests, commits and files behind it.</td> </tr> <tr> <td width="50%"><img src="public/gateway/git.en.png" alt="Git: an unsaved concept change with its exact Markdown diff" /><br /><b>Git</b> — the exact Markdown diff before you save.</td> <td width="50%"><img src="public/gateway/harness.en.png" alt="Harness: what the repository tells, blocks and watches for its coding agents" /><br /><b>Harness</b> — what your repository tells, blocks and watches for agents.</td> </tr> <tr> <td width="50%"><img src="public/gateway/automations.en.png" alt="Automations: scheduled checks that keep the folder current" /><br /><b>Automations</b> — scheduled checks that keep the folder current.</td> </tr> </table>

New in v1.9: Git and pull request briefings, which read a repository's pull requests, commits and files in separate views, and Planning, which reads a project folder's Markdown in place. See the releases.

A few things worth knowing before you start:

  • The map shows declared relationships, not proof of runtime impact; its key explains every mark and direction. Map
  • An empty folder offers its start actions, and a failed start can be retried without overwriting files. Popup tours are retired. First run
  • Library setup and checks need the app; a browser offers the app or adding files. Library
  • Planning is read-only and works in the macOS app on a folder you choose; it shows Markdown and PNG/JPEG images. Planning
  • Git's send-only action does not commit new file changes; it asks you to review a stale folder or branch again. Pull can change files across the repository. Git
  • Before a folder is connected, the app keeps Library, Planning, Agents and Changes reachable. Features

Quick start

  1. Install the app from the download page, or open the browser version.
  2. Open a folder. Atlas reads its Markdown in place, or starts an atlas/ folder in your repository, and shows the path before it writes anything.
  3. Connect your agent. In Agents › MCP, press Connect for your tool, restart the agent, and ask about your next task.

macOS (Apple Silicon) is signed and notarized and carries the MCP server inside the app. Windows x64 is an unsigned beta. On Linux, use the browser version or run the CLI and MCP server from a source checkout. Releases list each version's files and checksums.

How it works

your-repo/
├── src/
└── atlas/                 ← cloned, branched and reviewed with the code
    ├── project.md
    ├── domains/  capabilities/  elements/
    ├── sources/           documents kept exactly as they arrived
    └── wiki/              pages written from those sources, every fact cited

A Markdown file whose frontmatter has kind: is one concept. Its uid never changes, its slug is its current address, and its path names the code it describes. The map, documents, Library and Git screens all read these files.

Your agent reaches the folder two ways:

  • MCP: the agent starts the Atlas MCP server, which reads and writes the folder on disk, even with the app closed. Connect an agent · MCP reference
  • ACP: Claude Agent and Codex also run in the app's own chat; each write waits until you allow it. Agents

A project's source-path repair opens the affected concept and recorded relative path; stale or missing targets require remeasurement.

Project checks distinguish a document changed since its last meaning review from malformed input. They ask for review and explicit re-finalization; supported code paths and saved changes do not accept the meaning.

Codex's locally configured permission profiles are excluded from the in-app mode picker because their effective approval behavior is not disclosed. Read-only startup stays required; an unsolicited move into a profile is reported as unverified, without claiming the runtime was stopped.

The full project editor confirms leaving unsaved changes inside the app, so Cancel and Back work in the macOS WebView as well as the browser.

Local-first

The installed app's Changes screen opens a chosen Git repository without requiring an ontology. Pull requests, commits and files have separate reading views. An explicit public GitHub read lists PRs updated in the selected local dates, including open and closed work; a moving, paginated list may be incomplete. Each PR original is attributed and remains inspectable. Commit-only summaries use a local model, while the separately labelled earlier combined briefing retains matched PR descriptions and earlier results. Private PR access and in-app ACP explanations are not yet available in the PR inventory. Failed reads retain the session's earlier results. Inspect individual commit messages and bounded, endpoint-based file comparisons inside Atlas. Author records and optional ontology grouping do not establish verified behavior changes. Change briefing

  • No backend, account or telemetry. The folder stays plain Markdown on your disk.
  • Model calls with your API key or a local model are opt-in, and each records its destination in .ontology-atlas/llm-audit.jsonl.
  • A connected coding agent may send your prompt and what it reads to its own provider; Atlas's log does not cover those transfers.

Trust · Security

Status

Atlas is early. Our benchmark has not yet shown better answers with Atlas, and Atlas was slower (the correction). Construction trials, their failures and limits are in the construction measurements.

Documentation

What is Atlas? · First five minutes · What becomes a node? · Relations · Specification · Features · CLI · Architecture

Contributing

Read CONTRIBUTING.md; external pull requests come from forks. AGENTS.md is the contract for people and agents alike.

pnpm install
pnpm dev
pnpm checks:changed -- --run

pnpm pr:land <number> merges a reviewed pull request and keeps its original commits. Development checks covers choosing checks, CI internals and lane budgets.

Pre-push checks the commit being pushed and runs affected lint, unit and Node tests in parallel with the relevant cheap checks. CI owns browser, full contract and dependency-graph verification. Test-only edits to CI tooling run their regressions without starting unrelated product suites; changes to the planner implementation still require exhaustive CI.

<details> <summary><b>Repository commands</b></summary>
CommandWhat it answers
node scripts/ci/run-playwright-ci.mjs --helpBrowser shard options, without discovering or running tests; unknown options fail before execution
pnpm agents:checkEach harness's instruction files are valid; Codex and Claude files need not match
pnpm brand:spritesRebuild Moru sprites, 74 animation exports, 16 poses and compass sizes from retained project sources; inspect assets/brand/moru/preview.html
pnpm brief:new -- --slug=<slug> --owns=<path,...>A delegation brief with the port, scratch, checks and merge lines filled in
pnpm build:staticReuse out/ only for matching build inputs; fail without a reuse stamp if inputs change during the build
pnpm bundle:plan · pnpm bundle:prunePlan merging several branches as one, then prune the branches main contains (/merge)
pnpm checks:changedWhich gates this change needs
pnpm conflicts:scanWhich open pull requests change the same files as this branch, and whether a trial merge conflicts
pnpm decisions:find <terms> · pnpm decisions:checkThe decision to cite or overturn, and whether this change owes one
pnpm design:tokens -- [--prefix=<name>]The current token ramps, resolved from app/styles
pnpm doc:new -- --type=<kind> --area=<area> --slug=<slug>A new living document from its template in docs/.templates/
pnpm docs:checkDocs gates, including pnpm docs:language, pnpm source:language, pnpm changelog:check, pnpm dev-checks:check, pnpm docs:meta
pnpm docs:meta · pnpm doc:history -- <path>Every living document's kind, status and area; one document's commits across moves
pnpm docs:moveMoves the documents in docs/.moved.json and rewrites references (-- --check only reports)
pnpm e2e:durations -- <timings dir>Rebalances the browser shards from downloaded playwright-timings-* reports
pnpm e2e:sleeps:checkRefuses a new fixed waitForTimeout without a // measurement window: note
pnpm gates:yield -- --runs=200Which CI checks ever failed, per run, from the lane reports CI uploads
pnpm gateway:capture -- --base-url=<static export>Re-shoots the six app screens on the download page, in Korean and English
pnpm harness:tokens -- --since=<date>Where Claude Code tokens went per agent type, from local transcripts, and which runs broke the compaction window or turn caps (budget)
pnpm knipDead files, exports and types
pnpm licenses:check · pnpm notice:build · pnpm notice:checkShipped packages are on the license allow-list, and NOTICE.md is current (rules)
pnpm messages:build · pnpm messages:check · pnpm messages:adoptCompose messages/<locale>.json from one file per namespace, prove it current, and carry an old branch's edits
pnpm messages:coverage -- --locale <code>Checks one locale's strings against en: arguments, plurals, script, keep-terms and typography
pnpm perf:mcp:memory · pnpm perf:mcp:memory:checkWhether the MCP server releases memory across repeated calls; about a minute
pnpm pr:ci <n>Fire CI on a draft now
pnpm pr:land --plan <n...> · pnpm pr:land --conductDry-run a merge, or merge queued pull requests until the queue is empty
pnpm pr:land <n> · pnpm pr:queueQueue a pull request to merge (green ones merge together behind one CI run), and show the queue
pnpm review:facts -- --base=<ref>The mechanical facts a reviewer would otherwise count by hand: line growth, 800-line files, export and dependency changes, untouched sibling tests, security paths
pnpm seo:checkAfter pnpm build: every sitemap URL in out/ canonicalizes to itself, / and each locale root point at /{locale}/download/, and titles and descriptions are unique per locale
pnpm typecheckTypes across every file, with Next's generated route and page types
pnpm ui:audit -- --url=<base> --route=<path> [--setup=<module.mjs>]Prepare an interactive state with an optional local module, then measure rendered facts per width: horizontal overflow, occluded or unreachable controls, small touch targets, off-ramp type/radius/shadow values, low contrast, unequal repeated sets, scroll-end reserve
pnpm ui:look -- --route=<path> [--vault=fixture|sample|<dir>] [--widths=1440] [--audit]Builds and serves the static export on a free port (or uses --url), opens each route with a vault attached, and prints one screenshot path per route and width

Use --scope=<selector> to audit one visible modal or region. The selector must match exactly one visible element; the report includes its measured element count.

</details>

Moru

Moru is Atlas's pixel seal companion; the compass is the app identity. The project includes 74 motions, 16 poses and their sources. Open the local motion studio to play, pause and inspect every frame.

At folder entry, Moru greets, offers a small folder and waits. Play gives way to the existing waiting view when a folder opens. The download invitation uses a separate welcome. Hops travel only while airborne; hovering lets a hop land before Moru waits. Pet Moru for a brief shy, clap, dance, thinking, pondering, hearts, laughter or flipper-groove response; right-click Moru or press Shift+F10 for pause/resume. No playback button sits beside the character. Reduced motion keeps a still expression.

New 32-pose gestures add a bow, flipper five and hat greeting to petting; the download welcome also offers a fish trick. A small wordless bubble answers touch with a heart, note or sparkle and occasionally accompanies a return hop. Waiting stays quiet. Peekaboo, rosy temper and bubble play are available in the catalogue.

Moru now keeps its rounded shape during the small nod. Play combines three phrases with different quiet rests; petting varies the order while avoiding the two most recent gestures. Waiting remains gentle and stationary.

Four new 32-pose encounters add nose-star balancing, a sparkle sneeze, peekaboo with a pup and a heart gift; the flipper groove is also redrawn with 32 poses. The second pet reveals a playful encounter, then the complete repertoire varies without recent repeats. A pup occasionally peeks out during idle play. Folder entry offers 14 reactions; the download welcome offers 18, including silent singing and bubble chasing. Prop-led scenes keep their own headroom clear of extra speech bubbles.

<img src="assets/brand/moru/moru-poses-showcase.png" width="400" height="400" alt="Moru" /> <details> <summary>Open motion samples</summary> <img src="assets/brand/moru/animated/gif/authored/moru-wave.gif" width="128" height="128" alt="Moru greeting" /> <img src="assets/brand/moru/animated/gif/authored/moru-source-read.gif" width="128" height="128" alt="Moru reading source" /> <img src="assets/brand/moru/animated/gif/authored/moru-await-permission.gif" width="128" height="128" alt="Moru waiting for a person" /> <img src="assets/brand/moru/animated/gif/authored/moru-clap.gif" width="128" height="128" alt="Moru celebrating observed completion" /> <img src="assets/brand/moru/animated/gif/authored/moru-sing.gif" width="128" alt="Moru singing" /> <img src="assets/brand/moru/animated/gif/authored/moru-fish-play.gif" width="128" alt="Moru and a fish" /> <img src="assets/brand/moru/animated/gif/authored/moru-dance.gif" width="128" alt="Moru dancing" /> <img src="assets/brand/moru/animated/gif/authored/moru-chorus.gif" width="128" alt="Moru chorus" /> <img src="assets/brand/moru/animated/gif/authored/moru-shy.gif" width="128" alt="Moru smiling shyly" /> <img src="assets/brand/moru/animated/gif/authored/moru-friend-play.gif" width="128" alt="Moru playing ball with a friend" /> <img src="assets/brand/moru/animated/gif/authored/moru-pup-cuddle.gif" width="128" alt="Moru cuddling three pups" /> <img src="assets/brand/moru/animated/gif/authored/moru-rainy-day.gif" width="128" alt="Moru with an umbrella in the rain" /> <img src="assets/brand/moru/animated/gif/authored/moru-snow-day.gif" width="128" alt="Moru watching snowflakes" /> <img src="assets/brand/moru/animated/gif/authored/moru-breeze.gif" width="128" alt="Moru in a little breeze" /> <img src="assets/brand/moru/animated/gif/authored/moru-somersault.gif" width="128" height="128" alt="Moru doing a somersault" /> <img src="assets/brand/moru/animated/gif/authored/moru-toy-fishing.gif" width="128" height="128" alt="Moru playing with a fishing-line toy" /> <img src="assets/brand/moru/animated/gif/authored/moru-laptop-code.gif" width="128" height="128" alt="Moru coding on a laptop" /> <img src="assets/brand/moru/animated/gif/authored/moru-thinking.gif" width="128" height="128" alt="Moru thinking" /> <img src="assets/brand/moru/animated/gif/authored/moru-pondering.gif" width="128" height="128" alt="Moru pondering" /> <img src="assets/brand/moru/animated/gif/authored/moru-hearts.gif" width="128" height="128" alt="Moru sending little hearts" /> <img src="assets/brand/moru/animated/gif/authored/moru-laugh.gif" width="128" height="128" alt="Moru giggling" /> <img src="assets/brand/moru/animated/gif/authored/moru-frown.gif" width="128" height="128" alt="Moru frowning thoughtfully" /> <img src="assets/brand/moru/animated/gif/authored/moru-grumpy.gif" width="128" height="128" alt="Moru with a tiny temper" /> <img src="assets/brand/moru/animated/gif/authored/moru-flipper-groove.gif" width="128" height="128" alt="Moru dancing with its flippers" /> <img src="assets/brand/moru/animated/gif/authored/moru-ontology-orbit.gif" width="128" height="128" alt="Moru watching a floating ontology model" /> <img src="assets/brand/moru/animated/gif/authored/moru-ontology-dance.gif" width="128" height="128" alt="Moru dancing with a floating ontology" /> <img src="assets/brand/moru/animated/gif/authored/moru-soft-bow.gif" width="128" height="128" alt="Moru bowing softly" /> <img src="assets/brand/moru/animated/gif/authored/moru-hat-tip.gif" width="128" height="128" alt="Moru tipping a tiny hat" /> <img src="assets/brand/moru/animated/gif/authored/moru-magic-fish.gif" width="128" height="128" alt="Moru revealing a magic fish" /> <img src="assets/brand/moru/animated/gif/authored/moru-peekaboo.gif" width="128" height="128" alt="Moru playing peekaboo" /> <img src="assets/brand/moru/animated/gif/authored/moru-warm-temper.gif" width="128" height="128" alt="Moru blushing with a tiny temper" /> <img src="assets/brand/moru/animated/gif/authored/moru-flipper-five.gif" width="128" height="128" alt="Moru offering a flipper five" /> <img src="assets/brand/moru/animated/gif/authored/moru-folder-peek.gif" width="128" height="128" alt="Moru peeking into a folder" /> <img src="assets/brand/moru/animated/gif/authored/moru-bubble-chase.gif" width="128" height="128" alt="Moru chasing a bubble" /> <img src="assets/brand/moru/animated/gif/authored/moru-nose-balance.gif" width="128" height="128" alt="Moru balancing a star" /> <img src="assets/brand/moru/animated/gif/authored/moru-star-sneeze.gif" width="128" height="128" alt="Moru sneezing sparkles" /> <img src="assets/brand/moru/animated/gif/authored/moru-pup-peek.gif" width="128" height="128" alt="Moru playing with a pup" /> <img src="assets/brand/moru/animated/gif/authored/moru-heart-gift.gif" width="128" height="128" alt="Moru offering a heart" /> </details>

License

MIT. Third-party notices are in NOTICE.md, and the full license texts in public/third-party-licenses.txt. The pixel mascot and its sources are described in Brand.

Ontology Atlas alternatives

View more →

Similar mcp servers in Coding Agents, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.

NameStarsLicenceLast updatedScan
Ontology Atlas (this page)
wlsdks
147MITOct 26, 2026Scanned, no flagged issues
Context Mode
mksglu
33kNone foundNov 1, 2026Not scanned yet
Serena
oraios
31kNone foundOct 28, 2026Not scanned yet
Fastmcp
PrefectHQ
28kApache-2.0Nov 1, 2026Scanned, no flagged issues
Nuclear
nukeop
19kAGPL-3.0Nov 1, 2026Scanned, no flagged issues
MCP For Beginners
microsoft
18kMITOct 30, 2026Scanned, no flagged issues