This server provides graph-based codebase analysis through two core operations:
Trace Logic Paths (
get_logic_path) - Follow the call graph to discover all dependencies and usages of a specific function or class, revealing how code flows through your projectAnalyze Refactoring Impact (
analyze_impact) - Calculate the "blast radius" of changing a code element to understand what will be affected before making modifications, including direct callers and transitive dependencies
Key capabilities:
Deterministic Results - Uses Arbor's semantic dependency graph for execution-aware analysis rather than text matching, with confidence scoring (High/Medium/Low)
AI Integration - Implements Model Context Protocol (MCP) enabling LLMs like Claude to query the graph directly for structurally-accurate code analysis
Multi-Language Support - Works across 10+ languages (Rust, TypeScript, Python, Go, Java, C/C++, C#, Dart, JavaScript) with cross-file symbol resolution
Local Privacy - All analysis happens locally with no data leaving your machine
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@arborshow me all functions that call the authentication service"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Arbor
Graph‑Native Intelligence for Codebases
Know what breaks before you break it.
Status (March 2026)
Stable line:
release/v1.5Current feature line:
release/v1.6Main development trunk:
main
Arbor is currently in final polish for the v1.6 release line.
Highlights
Accurate Token Counting — tiktoken (cl100k_base) replaces heuristic estimates for precise LLM context budgets
Fuzzy Symbol Suggestions — Typo tolerance with Jaro-Winkler matching:
arbor refactor autth→ "Did you mean:auth?"Enhanced MCP/AI Integration — Rich JSON output with confidence, roles, and edge explanations for Claude/Cursor
Git-Aware Risk Workflows —
arbor diff,arbor check, andarbor openfor refactor confidenceIncremental Refresh —
arbor index --changed-onlyfor faster re-index during active branchesBetter Python UX — Empty
__init__.pyhandled silently (no false warnings)
Overview
What is Arbor?
Arbor is a local‑first impact analysis engine for large codebases. Instead of treating code as text, Arbor parses your project into a semantic dependency graph. This lets you trace real execution paths—callers, callees, imports, inheritance, and cross‑file relationships—so you can confidently understand the consequences of change.
Unlike keyword search or vector‑based RAG systems, Arbor answers questions like:
“If I change this function, what actually breaks?”
with structural certainty, not probabilistic guesses.
Example: Blast Radius Detection
Before refactoring detect_language, inspect its true impact:
$ arbor refactor detect_language
Analyzing detect_language...
Confidence: High | Role: Core Logic
• 15 callers, 3 dependencies
• Well-connected with manageable impact
> 18 nodes affected (4 direct, 14 transitive)
Immediate Impact:
• parse_file (function)
• get_parser (function)
Recommendation: Proceed with caution. Verify affected callers.This is execution‑aware analysis, not text matching.
Graphical Interface
Arbor ships with a native GUI for interactive impact analysis.
arbor gui
GUI Capabilities
Symbol Search – Instantly locate functions, classes, and methods
Impact Visualization – Explore direct and transitive dependencies
Privacy‑Safe – File paths are hidden by default for clean screenshots
Export – Copy results as Markdown for PRs and design docs
The CLI and GUI share the same analysis engine—no feature gaps.
Quick Start
Install Arbor (CLI + GUI):
cargo install arbor-graph-cli
Or use one-command installers (no Rust toolchain required):
macOS/Linux:
curl -fsSL https://raw.githubusercontent.com/Anandb71/arbor/main/scripts/install.sh | bashWindows (PowerShell):
irm https://raw.githubusercontent.com/Anandb71/arbor/main/scripts/install.ps1 | iex
See Installation Guide for version pinning and manual assets.
One-shot setup + first index:
cd your-project
arbor setupRun Impact Analysis:
arbor refactor <symbol-name>
For git-aware workflows:
arbor diff
arbor check --max-blast-radius 30
arbor open <symbol>Launch the GUI:
arbor gui
You can run Arbor from any nested subdirectory; it automatically resolves to your project root.
📘 See the Quickstart Guide for advanced workflows.
Release Channels & Branches
To keep maintenance and feature work clean:
main→ ongoing developmentrelease/v1.5→ maintenance-only fixes for 1.5.xrelease/v1.6→ 1.6 feature delivery and stabilization
This avoids shipping new features into older maintenance branches and keeps backports explicit.
MCP Directory Listing
Arbor is listed on Glama MCP Directory:
Documentation Hub
Quickstart: docs/QUICKSTART.md
Installation: docs/INSTALL.md
Architecture: docs/ARCHITECTURE.md
MCP Integration: docs/MCP_INTEGRATION.md
Protocol Specification: docs/PROTOCOL.md
Roadmap: docs/ROADMAP.md
Release Notes (v1.6): docs/RELEASE_NOTES_v1.6.0.md
Why Arbor?
Most AI coding tools treat code as unstructured text, relying on vector similarity. This approach is fast—but imprecise.
Arbor builds a graph.
Every function, class, and module is a node. Every call, import, and reference is an edge. When you ask a question, Arbor follows the graph—the same way your program executes.
Traditional RAG: Arbor Graph Analysis:
"auth" → 47 results AuthController
(keyword similarity) ├── calls → TokenMiddleware
├── queries → UserRepository
└── emits → AuthEventThe result: deterministic, explainable answers.
Core Features
Native GUI
A lightweight, high‑performance interface bundled directly with Arbor—no browser, no server.
Confidence Scoring
Each result includes an explainable confidence level:
High – Fully resolved, statically verifiable paths
Medium – Partial uncertainty (e.g., polymorphism)
Low – Heuristic or dynamic resolution
Node Classification
Arbor infers architectural roles automatically:
Entry Point – APIs, CLIs, main functions
Core Logic – Domain and business rules
Utility – Widely reused helpers
Adapter – Interfaces, boundaries, and bridges
AI Bridge (MCP)
Arbor implements the Model Context Protocol (MCP), enabling LLMs (e.g., Claude) to query the graph directly:
find_path(start, end)– Trace logic flowanalyze_impact(node)– Compute blast radiusget_logic_path(node)– Generate graph-backed architectural brief
📦 Available on – Discover Arbor in the MCP server directory
Cross‑File Resolution
A global symbol table resolves:
Imports and re‑exports
Inheritance and interfaces
Overloads and namespaces
User in auth.ts is never confused with User in types.ts.
Supported Languages
Language | Status | Parser Coverage |
Rust | ✅ | Functions, Structs, Traits, Impls, Macros |
TypeScript | ✅ | Classes, Interfaces, Types, Imports, JSX |
JavaScript | ✅ | Functions, Classes, Vars, Imports |
Python | ✅ | Classes, Functions, Imports, Decorators |
Go | ✅ | Structs, Interfaces, Funcs, Methods |
Java | ✅ | Classes, Interfaces, Methods, Fields |
C | ✅ | Structs, Functions, Enums, Typedefs |
C++ | ✅ | Classes, Namespaces, Templates |
C# | ✅ | Classes, Methods, Properties, Interfaces |
Dart | ✅ | Classes, Mixins, Widgets |
Python note: Decorators,
__init__.py, and@dataclassare statically analyzed. Dynamic dispatch is flagged with reduced confidence.
Build from Source
git clone https://github.com/Anandb71/arbor.git
cd arbor/crates
cargo build --releaseLinux GUI Dependencies
sudo apt-get install -y pkg-config libx11-dev libxcb-shape0-dev libxcb-xfixes0-dev \
libxkbcommon-dev libgtk-3-dev libfontconfig1-dev libasound2-dev libssl-dev cmakeTroubleshooting
Symbol not found?
.gitignore – Arbor respects it (
arbor status --files)File type – Ensure the extension is supported
Empty files – Skipped (except
__init__.py)Dynamic calls –
eval/ runtime reflection may not resolveCase sensitivity – Use
arbor query <partial>to search
Empty graph?
Run arbor status to verify file detection and parser health.
Need environment diagnostics?
Run arbor doctor (or arbor check-health) to verify ports, project structure, and integration readiness.
Security Model
Arbor is Local‑First by design:
No data exfiltration
Fully offline
No API keys
Fully open source
Your code never leaves your machine.
License
MIT License. See LICENSE for details.