Skip to main content
Glama

Git Stuff Server

Dieses Repository enthält eine Node.js-Anwendung, die als MCP-Server (Model Context Protocol) fungiert und Git-bezogene Funktionen bereitstellt. Derzeit bietet es ein Tool zum Generieren des Diffs für einen Git-Merge-Commit gegenüber dem ersten übergeordneten Element.

Merkmale

  • MCP-Server: Läuft als Standard-MCP-Server und verwendet stdio zur Kommunikation.

  • get_git_merge_diff

    • Akzeptiert einen Git-Merge-Commit-Hash.

    • Führt das PowerShell-Skript GenerateMergeDiff.ps1 aus.

    • Gibt den von git show -m --first-parent <commitHash> generierten textuellen Diff-Inhalt zurück.

Related MCP server: Git Forensics MCP

Voraussetzungen

  • Node.js (Version, die ES-Module unterstützt, prüfen Sie engines in package.json , falls angegeben, andernfalls prüfen Sie das Ziel tsconfig.json – ES2022)

  • npm (wird normalerweise mit Node.js geliefert)

  • Git ist im PATH des Systems installiert und zugänglich.

  • PowerShell (Windows) oder pwsh (Linux/macOS) ist installiert und im PATH des Systems zugänglich.

Installation

  1. Klonen Sie das Repository:

    git clone <your-repo-url> cd GitStuffServer
  2. Installieren Sie Abhängigkeiten:

    npm install

Verwendung

  1. Erstellen Sie den TypeScript-Code:

    npm run build

    Dadurch wird der TypeScript-Code von src/ in JavaScript in build/ kompiliert.

  2. Führen Sie den Server aus:

    • So führen Sie den kompilierten Code aus:

      npm start
    • So erstellen und führen Sie den Entwicklungsmodus aus:

      npm run dev

Der Server wird gestartet und wartet auf MCP-Anfragen auf der Standardeingabe/-ausgabe.

Verwenden des Tools get_git_merge_diff

Wenn Sie über einen MCP-Client verbunden sind, können Sie das Tool get_git_merge_diff mit der folgenden Eingabe aufrufen:

  • commitHash (Zeichenfolge): Der Git-Commit-Hash (SHA) des Merge-Commits, den Sie vergleichen möchten.

Das Tool gibt den Diff-Inhalt als Text zurück.

So funktioniert es

  1. Der MCP-Server ( src/index.ts ) empfängt eine Anfrage für das Tool get_git_merge_diff .

  2. Es validiert die commitHash Eingabe.

  3. Es führt das PowerShell-Skript GenerateMergeDiff.ps1 aus und übergibt den commitHash .

  4. Das PowerShell-Skript führt git show -m --first-parent <commitHash> aus und speichert die Ausgabe (einschließlich aller Fehler) in einer temporären Datei namens merge_changes.diff im aktuellen Arbeitsverzeichnis des Servers.

  5. Der Node.js-Server liest den Inhalt von merge_changes.diff .

  6. Der Server löscht die temporäre Datei merge_changes.diff .

  7. Der Server gibt den Diff-Inhalt (oder eine Fehlermeldung) an den MCP-Client zurück.

Konfiguration

Wichtige Konfigurationspunkte werden als Konstanten innerhalb von src/index.ts definiert:

  • SERVER_NAME : Der vom MCP-Server registrierte Name.

  • SCRIPT_NAME : Der Dateiname des auszuführenden PowerShell-Skripts.

  • OUTPUT_DIFF_FILE : Der Name der temporären Diff-Datei, die vom Skript erstellt wurde.

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei package.json .

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

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/skurekjakub/GitStuffServer'

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