Skip to main content
Glama
GeorgeTsakonas

code-atlas-mcp

  ██████╗ ██████╗ ██████╗ ███████╗      █████╗ ████████╗██╗      █████╗ ███████╗
 ██╔════╝██╔═══██╗██╔══██╗██╔════╝     ██╔══██╗╚══██╔══╝██║     ██╔══██╗██╔════╝
 ██║     ██║   ██║██║  ██║█████╗ █████╗███████║   ██║   ██║     ███████║███████╗
 ██║     ██║   ██║██║  ██║██╔══╝ ╚════╝██╔══██║   ██║   ██║     ██╔══██║╚════██║
 ╚██████╗╚██████╔╝██████╔╝███████╗     ██║  ██║   ██║   ███████╗██║  ██║███████║
  ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝     ╚═╝  ╚═╝   ╚═╝   ╚══════╝╚═╝  ╚═╝╚══════╝
                                 [ M C P ]

Hochleistungsfähiger AST-bewusster Model Context Protocol Server

License: MIT TypeScript Node.js MCP Standard Vitest

Verbinden Sie Claude Code, Claude Desktop und autonome KI-Agenten direkt mit strukturellen AST-Codekarten, token-effizienten Skeletten und PR-Blast-Radius-Auswirkungsanalysen.


📖 Überblick

Moderne LLM-Codierungsagenten verbrauchen bis zu 70 % ihres Kontextfensters für das Aufnehmen roher Dateibäume und redundanter Dateiinhalte. Bei der Änderung großer Codebasen fehlt KI-Assistenten oft die Sicht auf:

  1. Nachgelagerte Aufrufer & Abhängigkeiten: Das Ändern einer exportierten Funktionssignatur bricht Aufrufer, die 5 Verzeichnisse entfernt liegen.

  2. Token-Inflation: Vollständige Datei-Dumps verschwenden Kontext für Implementierungskörper statt für Typdefinitionen und Signaturen.

  3. PR-Regressions-Blast-Radius: Fehlendes Bewusstsein darüber, welche Unit- und Integrationstestsuiten die geänderten AST-Knoten abdecken.

code-atlas-mcp löst dies, indem es eine AST-bewusste Intelligenzschicht über das standardmäßige Model Context Protocol (MCP) bereitstellt. Es parst Quelldateien in strukturelle Symbolbäume, beschneidet Funktionskörper zu token-effizienten Codeskeletten, isoliert geänderte AST-Knoten über Git-Diffs hinweg und berechnet den transitiven Regressions-Blast-Radius.


Related MCP server: MCP Filesystem Server

🏛️ Architektur

┌────────────────────────────────────────────────────────────────────────┐
│                        AI Coding Clients                               │
│        (Claude Code CLI / Claude Desktop / Cursor / Custom Agents)     │
└──────────────────────────────────┬─────────────────────────────────────┘
                                   │  MCP Protocol (JSON-RPC over stdio)
                                   ▼
┌────────────────────────────────────────────────────────────────────────┐
│                          code-atlas-mcp                                │
│  ┌───────────────────────────────┬──────────────────────────────────┐  │
│  │      MCP Request Router       │      Tool Schema Validators      │  │
│  │ (ListTools / CallTool Handler)│          (Zod Runtime)           │  │
│  └───────────────┬───────────────┴──────────────────┬───────────────┘  │
│                  ▼                                  ▼                  │
│  ┌───────────────────────────────┐  ┌───────────────────────────────┐  │
│  │          AST Engine           │  │          Git Engine           │  │
│  │   • TypeScript Compiler API   │  │   • Unified Diff Parser       │  │
│  │   • Symbol & Hierarchy Extr.  │  │   • Line-to-AST Correlation   │  │
│  │   • Token-Efficient Skeletons │  │   • Working Tree / Ref Diffs  │  │
│  └───────────────┬───────────────┘  └───────────────┬───────────────┘  │
│                  └───────────────┬──────────────────┘                  │
│                                  ▼                                     │
│  ┌──────────────────────────────────────────────────────────────────┐  │
│  │                      Impact Analyzer                             │  │
│  │   • Downstream Callers Graph  • Transitive Dependency BFS        │  │
│  │   • Test Suite Coverage Map   • Risk Scoring & Assessment Engine │  │
│  └──────────────────────────────────────────────────────────────────┘  │
└──────────────────────────────────┬─────────────────────────────────────┘
                                   ▼
┌────────────────────────────────────────────────────────────────────────┐
│                          Local Codebase                                │
│               Filesystem (.ts, .tsx, .js, .jsx) & .git                 │
└────────────────────────────────────────────────────────────────────────┘

⚡ Kern-MCP-Tools

1. get_repo_structure

Gibt eine hierarchische, AST-beschnittene Strukturkarte des Repositorys mit optionalen token-effizienten Codeskeletten zurück. Entfernt Funktionskörper, während vollständige Signaturen, exportierte Schnittstellen, Typen und Docstrings erhalten bleiben.

Parameter

Parameter

Typ

Erforderlich

Beschreibung

Standard

rootDir

string

Nein

Ziel-Repository-Verzeichnis.

Aktuelles Arbeitsverzeichnis

includeSkeletons

boolean

Nein

Token-effiziente Codeskelette mit entfernten Funktionskörpern erzeugen.

true

maxDepth

number

Nein

Maximale Verzeichnis-Tiefe (1-20).

5

ignorePatterns

string[]

Nein

Array von Ordner-/Datei-Glob-Mustern zum Ignorieren.

[]

fileExtensions

string[]

Nein

Array erlaubter Erweiterungen (z. B. ['.ts', '.tsx']).

Standard TS/JS

Beispiel-Tool-Ausgabe

{
  "rootDir": "/workspace/my-app",
  "totalFiles": 42,
  "totalSymbols": 318,
  "fileTree": {
    "name": "src",
    "type": "directory",
    "children": [
      {
        "name": "auth.ts",
        "type": "file",
        "symbolsCount": 4,
        "summary": {
          "language": "typescript",
          "linesOfCode": 120,
          "symbols": [
            {
              "name": "verifyJwt",
              "kind": "function",
              "signature": "export function verifyJwt(token: string): Promise<JwtPayload>",
              "startLine": 15,
              "endLine": 42,
              "isExported": true
            }
          ],
          "astSkeleton": "import { JwtPayload } from \"./types.js\";\n\nexport function verifyJwt(token: string): Promise<JwtPayload>;"
        }
      }
    ]
  }
}

2. analyze_diff_impact

Analysiert geänderte AST-Knoten zwischen Branches, Commits oder dem uncommitteten Arbeitsbaum, um betroffene nachgelagerte Funktionen, Klassen und Komponenten zu bestimmen.

Parameter

Parameter

Typ

Erforderlich

Beschreibung

Standard

baseRef

string

Nein

Basis-Git-Revision oder Branch (z. B. 'main', 'HEAD~1').

Uncommitteter Arbeitsbaum

headRef

string

Nein

Head-Git-Revision oder Branch (z. B. 'feature-auth', 'HEAD').

Zustand des Arbeitsbaums

repoPath

string

Nein

Pfad zum Git-Repository-Root.

Aktuelles Arbeitsverzeichnis

Beispiel-Tool-Ausgabe

{
  "baseRef": "main",
  "headRef": "HEAD",
  "changedFilesCount": 2,
  "modifiedFiles": ["src/auth/jwt.ts"],
  "modifiedAstNodes": [
    {
      "filePath": "src/auth/jwt.ts",
      "symbol": {
        "name": "verifyJwt",
        "kind": "function",
        "signature": "export function verifyJwt(token: string, options?: VerifyOptions): Promise<JwtPayload>",
        "startLine": 12,
        "endLine": 35,
        "isExported": true
      },
      "changeType": "modified",
      "modifiedLines": [12, 13, 14]
    }
  ],
  "affectedDownstream": [
    {
      "symbolName": "verifyJwt",
      "sourceFile": "src/auth/jwt.ts",
      "dependentFile": "src/middleware/auth.ts",
      "impactType": "direct_import",
      "reason": "File 'src/middleware/auth.ts' directly imports symbol 'verifyJwt' modified in 'src/auth/jwt.ts'"
    }
  ],
  "summary": "Diff Impact Analysis: 1 file(s) modified across 1 distinct AST symbol(s). Identified 1 downstream dependent reference(s) that require verification."
}

3. inspect_blast_radius

Identifiziert potenzielle Regressionspunkte, transitive nachgelagerte Abhängigkeiten (BFS-Traversierung) und fehlerhafte Testsuiten für eine gezielte Dateiänderung. Berechnet einen Risikowert von 0-100 mit kritischen Faktoren.

Parameter

Parameter

Typ

Erforderlich

Beschreibung

Standard

targetFile

string

Ja

Pfad zur Ziel-Quelldatei (z. B. 'src/services/ast-engine.ts').

repoPath

string

Nein

Pfad zum Repository-Root.

Aktuelles Arbeitsverzeichnis

Beispiel-Tool-Ausgabe

{
  "targetFile": "src/services/user.ts",
  "targetSymbols": [ /* AST Symbols */ ],
  "directDependents": [
    {
      "filePath": "src/controllers/auth.ts",
      "importedSymbols": ["getUserById", "updateUser"]
    }
  ],
  "transitiveDependents": [
    {
      "filePath": "src/routes/api.ts",
      "depth": 2,
      "chain": ["src/services/user.ts", "src/controllers/auth.ts", "src/routes/api.ts"]
    }
  ],
  "affectedSuites": [
    {
      "testFile": "tests/auth.test.ts",
      "reliesOn": ["src/services/user.ts", "src/controllers/auth.ts"],
      "riskLevel": "HIGH",
      "potentialFailures": ["getUserById", "updateUser"]
    }
  ],
  "riskAssessment": {
    "score": 65,
    "level": "HIGH",
    "factors": [
      "Exports 4 symbol(s)",
      "High direct coupling: 3 direct dependent files",
      "Moderate cascade: 5 transitive dependents",
      "1 test suite(s) actively verify dependent code"
    ]
  }
}

🚀 Installation & Schnellstart

Globale CLI-Installation

npm install -g code-atlas-mcp

Direkt über NPX ausführen

npx code-atlas-mcp --root /path/to/your/project

🤖 Claude-Integrationskonfiguration

Claude Desktop Einrichtung

Fügen Sie code-atlas-mcp zu Ihrer claude_desktop_config.json hinzu:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "code-atlas": {
      "command": "npx",
      "args": [
        "-y",
        "code-atlas-mcp"
      ]
    }
  }
}

Wenn Sie ein bestimmtes Repository-Verzeichnis festlegen möchten:

{
  "mcpServers": {
    "code-atlas": {
      "command": "npx",
      "args": [
        "-y",
        "code-atlas-mcp",
        "--root",
        "/absolute/path/to/your/repository"
      ]
    }
  }
}

Claude Code CLI Einrichtung

Starten Sie claude mit dem angehängten MCP-Server:

claude --mcp-server "npx -y code-atlas-mcp"

🛠️ Entwicklung & Testen

Voraussetzungen

  • Node.js >= 18.0.0

  • npm >= 9.0.0

  • Git CLI

Einrichtung

# Clone the repository
git clone https://github.com/GeorgeTsakonas/code-atlas-mcp.git
cd code-atlas-mcp

# Install dependencies
npm install

# Build TypeScript to dist/
npm run build

# Run unit and integration tests with Vitest
npm test

# Run tests in watch mode
npm run test:watch

# Type check
npm run lint

🗺️ Roadmap

  • TypeScript-Compiler-API-AST-Extraktion

  • Token-effiziente Skelettgenerierung (entfernte Körper)

  • Git-Diff-Zeilen-zu-AST-Knoten-Korrelation

  • Nachgelagerte Abhängigkeitsgraph- & Aufrufstellen-Auswirkungsanalyse

  • Transitive Blast-Radius-Inspektion & Testsuiten-Identifikation

  • MCP-Standard-stdio-Transport

  • Python-AST-Parser-Engine-Unterstützung (ast / Tree-sitter)

  • Rust- und Go-AST-Parsing-Module

  • Semantische Vektorsuche über AST-Symbole


🤝 Mitwirken

Beiträge sind willkommen! Bitte zögern Sie nicht, einen Pull Request einzureichen.

  1. Forken Sie das Projekt

  2. Erstellen Sie Ihren Feature-Branch (git checkout -b feature/AmazingFeature)

  3. Committen Sie Ihre Änderungen (git commit -m 'Add some AmazingFeature')

  4. Pushen Sie den Branch (git push origin feature/AmazingFeature)

  5. Öffnen Sie einen Pull Request


📄 Lizenz

Verteilt unter der MIT-Lizenz. Siehe LICENSE für weitere Informationen.

Install Server
A
license - permissive license
B
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to understand and navigate codebases through structural analysis. Provides code mapping, symbol search, and impact analysis using ast-grep for accurate parsing of Python, JavaScript, TypeScript, and Go projects.
    4
    52
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides LLM-optimized tools for advanced code analysis, repository complexity evaluation, and call graph generation. It enables users to visualize directory structures, detect code patterns, and build semantic context with significant token savings.
    11
    MIT
  • A
    license
    B
    quality
    A
    maintenance
    Enables LLMs to efficiently read, write, and refactor code using precise AST-based operations, reducing token usage and context window waste.
    25
    57
    3
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GeorgeTsakonas/code-atlas-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server