Aethvion Project Mapper

Give your AI coding agent a living project brain.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • Pm Context: Retrieve a focused context package relevant to a coding task. Keyword-scores all entities in the knowledge graph against the task description, seeds from the best matches (and any named an
  • Pm Impact: Find all entities that would be affected if the named entity changes. Traverses dependency-propagating relations (calls, imports, depends_on, uses, reads_from, etc.) outward from the subjec
  • Pm Path: Find the shortest connection between two entities in the knowledge graph. Traverses all relation kinds in both directions (undirected). Useful for answering 'how does the auth system connect

What data it sees

Do you need an account

No: the server works without sign-in

Give your AI coding agent a living project brain.

Project Mapper scans your codebase once and builds a fast, structured knowledge graph of every module, class, function, and their relationships — then answers complex queries in milliseconds.

Massive token savings:

  • ~87% (Full mode) / ~91% (Slim mode) average token reduction vs grep + reading raw files
  • ~380× faster than reading raw files for the same task
  • Geometric mean measured across 11 real-world codebases, 57–10,437 files each

Key Tools (12 MCP tools total)

  • pm_context — Semantic search: find all classes/functions relevant to a query
  • pm_impact — Blast radius of changing a class/function
  • pm_path — Shortest semantic connection between entities + method notes
  • pm_find — Locate a symbol's definition, callers, and callees
  • pm_orphans — Surface dead-code candidates (no inbound relations)
  • pm_visualize — Mermaid/DOT dependency diagrams centred on any entity
  • pm_security — Standalone SAST scanner, 140+ OWASP Top 10 patterns, no scan required
  • pm_security_triage — Mark findings as false positive / verified / resolved
  • pm_scan / pm_delta — Fast full, incremental, and background indexing
  • pm_contribute — Let the agent write discoveries back into the graph
  • pm_stats — Inspect what's already indexed

Proven on 11 real codebases across 13 languages: Python, TypeScript/JS, Java/Kotlin, Go, Rust, C#, C, C++, PHP, Ruby, Swift — including Django, Spring Framework, ASP.NET Core, Hugo, Zod, WordPress, Redis, Jekyll, LevelDB, ripgrep, and Swift Algorithms.

v2.0.0 Highlights:

  • Package restructured into a layered analyzers/ → core/ → {mcp/, http/} architecture
  • New pm_visualize tool + full HTTP API parity for every MCP tool
  • pm_scan background mode — avoids client timeouts on large repos
  • Security scanner expanded to 140+ patterns with route-reachability taint tracking
  • 87-test suite covering DB layer, MCP protocol, and security scanner
  • Pure static analysis (no LLM calls during indexing)
  • Runs entirely on your machine — no data leaves your computer

Stop feeding your AI raw files. Give it the map.

Server tool list (12)

Raw names from tools/list. Only developers need these.

pm_contextRetrieve a focused context package relevant to a coding task. Keyword-scores all entities in the knowledge graph against the task description, seeds from the best matches (and any named anchor entities), then expands by following relations. Use this BEFORE starting any non-trivial feature or refactor so you understand the existing architecture and avoid breaking changes.
pm_impactFind all entities that would be affected if the named entity changes. Traverses dependency-propagating relations (calls, imports, depends_on, uses, reads_from, etc.) outward from the subject. Use before refactoring or deleting a module/class to understand the blast radius.
pm_pathFind the shortest connection between two entities in the knowledge graph. Traverses all relation kinds in both directions (undirected). Useful for answering 'how does the auth system connect to the payment flow?' or tracing why a change in one module might affect another.
pm_contributeRecord agent-discovered knowledge back into the project graph. Accepts property updates, new relation declarations, and a free-text rationale that is stored as a dated timeline event. Call this after implementing a feature or making an architectural decision so future agents (and developers) can see why things are the way they are.
pm_statsReturn a quick overview of the ProjectMapper database: entity counts by type, file manifest coverage, and last scan status. Use at the start of a session to understand what's already been indexed.
pm_deltaShow what has changed in the project since the last scan — new files, modified files, and deleted files — without making any database changes. Use to decide whether a re-scan is needed, or to preview what an incremental scan would process.
pm_findLook up a symbol by name and return its definition location, callers, and callees. Searches by exact name first (case-insensitive), then suffix/method match, then substring. Use this when you know — or partially know — the name of a function, class, or module and need to find where it lives, what calls it, and what it calls. Faster and more precise than pm_context for direct symbol lookups.
pm_orphansFind entities that have no inbound calls, imports, or dependencies — potential dead code. Entry points, dunder methods, and test functions are filtered out automatically. Use before a cleanup pass to identify candidates for removal. Note: dynamic dispatch, decorator-registered handlers, and public API won't have graph callers — review results before deleting anything.
pm_visualizeGenerate a Mermaid or DOT subgraph diagram centred on a named entity. Shows the entity's call/import/dependency neighbourhood up to a configurable depth. Useful for understanding blast radius, explaining a subsystem visually, or producing architecture diagrams for docs and PRs. Output is a fenced Mermaid code block by default — renders natively in GitHub/GitLab markdown, VS Code Mermaid extension, and Obsidian.
pm_scanScan a project directory and populate the knowledge graph via static AST analysis. Creates module/class/function entities and wires their relations. With incremental=true (default) only changed files are reprocessed. By default this call BLOCKS until the scan completes. Pass background=true to return immediately and poll pm_stats for progress — recommended for large projects (500+ files) over MCP to avoid timeouts.
pm_securityStandalone security scanner: walks the project files and runs OWASP Top 10 pattern matching across Python, JavaScript/TypeScript, PHP, Ruby, Go, Java, C#, and C/C++. Covers SQL/command/NoSQL injection, XSS, open redirect, path traversal, insecure deserialization, SSRF, weak crypto, and hardcoded secrets. Completely decoupled from pm_scan — run on-demand whenever you want a security review. Persists findings to a snapshot with stable IDs and triage statuses (unreviewed / verified_vulnerability / false_positive / resolved). false_positive findings are hidden by default to save tokens. Use pm_security_triage to update statuses after investigating.
pm_security_triageUpdate the review status of one or more security findings in the snapshot. Statuses: 'unreviewed' (default, needs investigation), 'false_positive' (confirmed safe — hidden from future pm_security output to save tokens), 'verified_vulnerability' (confirmed real bug — kept visible as a reminder until fixed), 'resolved' (auto-set when a triaged finding disappears from the codebase). Use pm_security first to get finding IDs, then call this after investigating each finding. Bulk-update all findings in a file with the 'file' argument.
Aethvion Project Mapper: connect to Claude, ChatGPT, Cursor · Connectors.fun