Skip to main content
Glama
williamRR

MCP Filesystem Server

by williamRR

RIG MCP-Werkzeuge

Ein Model Context Protocol (MCP)-Server, der intelligente Code-Analyse, graphbasierte Architektureinblicke und Dateivorgänge für KI-Assistenten bereitstellt.

Übersicht

RIG MCP-Werkzeuge kombiniert drei Intelligenzebenen:

  • Statische Analyse — Ein Repository Intelligence Graph (RIG), der aus AST-Parsing (ts-morph, tree-sitter) erstellt und in SQLite gespeichert wird, was Graph-Abfragen ohne LLM-Kosten ermöglicht.

  • Semantische Suche — Einbettungsbasierte Symbolabfrage unter Verwendung eines lokalen Modells (nomic-embed-text oder kompatibel). Einbettungen werden nach dem ersten Durchlauf in SQLite zwischengespeichert. Gibt präzise Code-Schnipsel anstelle ganzer Dateien zurück — minimiert den Token-Verbrauch.

  • LLM-gestützte Werkzeuge — Eine Teilmenge von Werkzeugen, die eine konfigurierbare OpenAI-kompatible API für natürlichsprachliches Schlussfolgern über Code aufrufen.

Related MCP server: PT-MCP (Paul Test Man Context Protocol)

Installation

Von npm

npx rig-mcp-tools

Von der Quelle

git clone <repository-url>
cd rig-mcp-tools
npm install
npm run build

Docker

docker build -t rig-mcp-tools .
docker run rig-mcp-tools

Konfiguration

MCP-Client (Claude Desktop, Cursor, etc.)

{
  "mcpServers": {
    "rig-tools": {
      "command": "node",
      "args": ["/path/to/dist/index.js"],
      "env": {
        "WORKSPACE_PATH": "/your/project",
        "GLM_API_URL": "http://localhost:1234/v1/chat/completions",
        "GLM_MODEL": "qwen2.5-coder-7b-instruct-mlx@8bit",
        "EMBEDDING_API_URL": "http://localhost:1234/v1/embeddings",
        "EMBEDDING_MODEL": "text-embedding-nomic-embed-text-v1.5"
      }
    }
  }
}

Umgebungsvariablen

Variable

Standard

Beschreibung

WORKSPACE_PATH

/workspace

Stammverzeichnis des Arbeitsbereichs

GLM_API_URL

http://localhost:1234/v1/chat/completions

LLM-API-Endpunkt (OpenAI-kompatibel)

GLM_MODEL

qwen2.5-coder-7b-instruct-mlx@8bit

Modell für LLM-gestützte Werkzeuge

EMBEDDING_API_URL

http://localhost:1234/v1/embeddings

Einbettungs-API-Endpunkt

EMBEDDING_MODEL

text-embedding-nomic-embed-text-v1.5

Modell für semantische Suche

LLM- und Einbettungswerkzeuge sind optional — alle statischen Analysewerkzeuge funktionieren ohne API.

Verfügbare Werkzeuge

RIG — Graph-Analyse

Diese Werkzeuge indizieren das Repository über AST-Parsing in einen SQLite-Graphen und fragen diesen ab, ohne ein LLM aufzurufen.

get_smart_context

Abrufen der relevantesten Dateien und Symbole für eine Abfrage unter Verwendung von Graph-Zentralität und Keyword-Scoring.

{ "rootPath": "/project", "text": "authentication flow" }

get_architectural_metrics

Zusammenfassung der Repository-Architektur: Kernknoten, Einstiegspunkte und stabile Grundlagen, sortiert nach Graph-Zentralität.

{ "rootPath": "/project" }

graph_analyzer

Komplexitätsanalyse auf Komponentenebene mit Hotspot-Erkennung und Refactoring-Empfehlungen.

{ "rootPath": "/project" }

generate_call_graph

Generieren von Aufrufdiagrammen oder Abhängigkeitsdiagrammen zwischen Komponenten, Dateien oder Symbolen.

{
  "rootPath": "/project",
  "level": "component",
  "format": "mermaid",
  "maxDepth": 5
}

level: "component" | "file" | "symbol"
format: "mermaid" | "dot" | "json"

generate_diagram

Generieren von C4-Architekturdiagrammen, Sequenzdiagrammen, Aufrufdiagrammen oder Abhängigkeitsvisualisierungen aus dem RIG.

{
  "rootPath": "/project",
  "type": "c4-container",
  "format": "mermaid",
  "focus": "auth",
  "maxDepth": 3,
  "style": "default"
}

type: "c4-context" | "c4-container" | "c4-component" | "sequence" | "call-graph" | "dependency-graph"
format: "mermaid" | "plantuml" | "dot"
style: "default" | "compact" | "detailed"

extract_method

Chirurgisches Extrahieren einer Funktion oder Klasse aus einer Quelldatei in eine Zieldatei unter Verwendung von RIG-Symbolkoordinaten.

{
  "rootPath": "/project",
  "sourceFile": "src/utils/helpers.ts",
  "symbolName": "formatDate",
  "targetFile": "src/utils/date.ts"
}

Dateivorgänge

Reine Dateisystemwerkzeuge, kein Graph oder LLM erforderlich.

read_files

Inhalt von bis zu 10 Dateien in einem einzigen Aufruf lesen.

{ "files": ["src/index.ts", "src/config.ts"] }

write_code_unit

Eine Datei mit spezifischem Inhalt schreiben oder überschreiben. Erstellt bei Bedarf übergeordnete Verzeichnisse.

{ "path": "src/utils/new-file.ts", "content": "export const foo = 1;" }

ls_tree

Verzeichnisstruktur als ASCII-Baum auflisten.

{ "path": "/project/src", "maxDepth": 3 }

search_code

Text- oder Regex-Muster rekursiv in der Codebasis suchen.

{ "path": "/project/src", "pattern": "useEffect", "useRegex": false }

inspect_symbols

Klassen- und Funktionssignaturen aus einer Datei mittels AST-Analyse (ts-morph) extrahieren.

{ "file": "src/tools/index.ts" }

run_shell_task

Zulässige Shell-Befehle ausführen.

{ "command": "npm run build", "timeout": 60000 }

Zulässige Präfixe: npm test, npm run, npm list, npx vitest, npx tsc, npx eslint, node --version, tsc, git status, git diff, git log, git show, git blame, ls, pwd, cat, wc.


Qualitätsanalyse

Statische Analysewerkzeuge, kein LLM erforderlich.

detect_patterns

Anti-Patterns, Code-Smells und Sicherheitsprobleme mittels Babel-AST-Analyse erkennen.

{ "sourceCode": "...", "filePath": "src/auth/login.ts" }

suggest_refactor

Refactoring-Möglichkeiten erkennen: lange Funktionen, tiefe Verschachtelung, magische Zahlen, doppelter Code und fehlende Typannotationen.

{
  "file_path": "src/services/user.ts",
  "max_suggestions": 10,
  "min_priority": 3,
  "include_diff": true
}

Entweder file_path oder code_snippet muss angegeben werden.

analyze_dependencies

Erstellen eines leichtgewichtigen Abhängigkeitsgraphen von TypeScript-Dateien durch Import-Analyse. Gibt Knoten, zirkuläre Abhängigkeiten und das DOT-Format für Graphviz zurück.

{ "rootPath": "/project/src" }

Einbettungsbasiert

Erfordert EMBEDDING_API_URL und EMBEDDING_MODEL. Einbettungen werden einmal pro Symbol generiert und in .rig/index.db zwischengespeichert — nachfolgende Abfragen betten nur die Abfragezeichenfolge ein.

search_semantic

Semantische Symbolsuche mittels Vektorähnlichkeit. Gibt die relevantesten Funktionen und Klassen mit ihren Code-Schnipseln zurück. Verwenden Sie dies vor read_files, um das Laden ganzer Dateien in den Kontext zu vermeiden. Einbettungen werden einmal pro Symbol generiert und in .rig/index.db zwischengespeichert.

{
  "repoPath": "/project",
  "query": "how is authentication handled",
  "maxResults": 5,
  "threshold": 0.3
}

LLM-gestützt

Erfordert GLM_API_URL und GLM_MODEL.

analyze_logic

Stellen Sie eine natürlichsprachliche Frage zu einem Codeabschnitt. Verwendet das konfigurierte LLM, um über Verhalten, Absicht oder Logik zu schlussfolgern.

{
  "filePath": "/project/src/auth/login.ts",
  "question": "What edge cases does this miss?"
}

Bevorzugen Sie filePath gegenüber code, um das Übergeben von Dateiinhalten durch den Kontext zu vermeiden.

smart_summarize

Generieren Sie eine intelligente Zusammenfassung einer Codedatei, einschließlich Importen, Exporten, Zweck und wichtigen Abhängigkeiten.

{ "filePath": "/project/src/services/user.ts", "maxLength": 200 }

generate_unit_tests

Generieren Sie Vitest-Unit-Tests für eine bestimmte Funktion oder Klasse. Verwendet den RIG-Index, um nur den Methodenkörper (nicht die ganze Datei) zu extrahieren — token-effizient. Deckt den Happy Path, Grenzfälle und Fehlerfälle ab.

{
  "repoPath": "/project",
  "symbolName": "createUser",
  "filePath": "src/services/user.ts"
}

filePath ist nur erforderlich, wenn das Symbol in mehreren Dateien existiert.

investigate_ts_fix

Führen Sie tsc --noEmit aus und verwenden Sie das LLM, um jeden TypeScript-Fehler zu erklären und minimale Korrekturen vorzuschlagen. Token-effizient: übergibt nur den Schnipsel um die Fehlerzeile (±8 Zeilen), nicht die ganze Datei.

{
  "repoPath": "/project",
  "filePath": "src/services/user.ts",
  "maxErrors": 5
}

filePath und maxErrors sind optional. Lassen Sie filePath weg, um alle Fehler im gesamten Repository zu untersuchen.


Architektur

src/
├── cli/           # rig-indexer CLI (pre-index a repo into .rig/index.db)
├── graph/         # RIG graph engine (indexer, parsers, SQLite storage, types)
├── security/      # Path validation and safe extension checks
└── tools/         # MCP tool implementations (19 tools)

Vorindizierung eines Repositorys

Für große Codebasen, vor der Verwendung von RIG-Werkzeugen vorindizieren:

npx tsx src/cli/index.ts /path/to/project --db /path/to/project/.rig/index.db

Optionen: --max-files <n>, --include-tests, --json

Entwicklung

npm run build   # Compile TypeScript
npm run dev     # Run in development mode
npm test        # Run test suite
npm run clean   # Clean build artifacts

Lizenz

MIT

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides intelligent code context and analysis through semantic compression, AST parsing, and multi-language support. Offers 60-80% token reduction while enabling AI assistants to understand codebases through local analysis, OpenAI-enhanced insights, and GitHub repository integration.
    6
    22
    3
    MIT
  • F
    license
    B
    quality
    Not graded
    maintenance
    Provides comprehensive codebase analysis and semantic understanding through integrated knowledge graphs, enabling AI assistants to understand project structure, patterns, dependencies, and context through multiple analysis tools and format generators.
    9
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables LLMs to perform high-performance code search and analysis across multiple languages using symbol indexing, regex text search, and structural AST pattern matching. It also provides tools for technology stack detection and dependency analysis with persistent caching for optimized performance.
    7
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI coding agents to query a pre-built semantic knowledge graph of code, reducing token usage and tool calls. Supports 16 tools for code exploration, analysis, and context building.
    14
    7
    MIT

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/williamRR/mcp-filesystem-rig'

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