LibreModular-MCP

Universeller, in Rust geschriebener MCP-Server mit einem Hub, der nur zwei Werkzeuge bereitstellt

Steuert ein Modell eine Desktop-Anwendung mit einem Werkzeug pro Arbeitsschritt, kostet jeder Schritt einen Hin- und Rückweg. Der Hub stellt zwei Werkzeuge bereit: Ein Skript erledigt die ganze Arbeit in einem Aufruf. GIMP, Krita, Blender, Inkscape und LibreOffice funktionieren heute, jede über ein Modul und eine Brücke; der Hub ist darauf ausgelegt, möglichst viele Anwendungen in einem Server zu verbinden.

Demonstration ausprobieren

Schema: Ein MCP-Client ruft den Hub auf, der zwei Werkzeuge bereitstellt, execute_script und get_state, und leitet jedes Skript über ein Modul und eine Brücke an eine Anwendung weiter: GIMP, Krita, Blender, Inkscape oder LibreOffice. Schema: Ein MCP-Client ruft den Hub auf, der zwei Werkzeuge bereitstellt, execute_script und get_state, und leitet jedes Skript über ein Modul und eine Brücke an eine Anwendung weiter: GIMP, Krita, Blender, Inkscape oder LibreOffice.
Das Modell als Lichtfunke gezeichnet: Seine Strahlen sind die Zeilen, die es an den Hub geschrieben hat, und die, die es von ihm gelesen hat; das Gras ist aus den Sätzen gewoben, die man ihm gegeben hat, und aus Skriptzeilen.
Ein Fries: der Funke des Modells, die beiden Werkzeuge execute_script und get_state, dann fünf Vorschaubilder in einer Reihe: eine 3D-Szene für Blender, ein Funke auf einem Schachbrettmuster für GIMP, eine gemalte Abendlandschaft für Krita, eine Zeichnung von Umlaufbahnen für Inkscape und ein Brief für LibreOffice.
Ein Modell, zwei Werkzeuge, fünf Anwendungen: Jedes Vorschaubild zeigt, was der Hub in seiner Anwendung gemacht hat.

Ein Skript gesendet, die Antwort des Hubs

Dieses Skript zeichnet in einem Inkscape-Dokument ein Diagramm mit drei Balken. Ein Client hat es mit einem einzigen Aufruf von execute_script gesendet, und der Block darunter ist die Antwort des Hubs. Die Demonstration enthält einen Client mit 25 Zeilen und jeden Schritt, um einen solchen Lauf nachzuspielen.

python · Geschriebenes Skript
import json
import os

import inkex

document = inkex.load_svg(os.environ["LMM_DOCUMENT"])
layer = document.getroot().add(inkex.Layer.new("Chart"))
for index, value in enumerate([3, 7, 5]):
    layer.add(inkex.Rectangle.new(20 + index * 30, 100 - value * 10, 20, value * 10))
document.write(os.environ["LMM_DOCUMENT"])
print("LMM_RESULT: " + json.dumps({"bars": len(layer)}))
Antwort des Hubs
{
  "app": "inkscape",
  "duration_ms": 151,
  "error": null,
  "result": {
    "bars": 3
  },
  "status": "ok",
  "stderr": "",
  "stdout": "",
  "truncated": false
}

Inkscape 1.4 hat es im Modus cli ausgeführt, ohne Fenster: Der Hub hat für das Skript einen Python-Prozess gestartet und den Wert, den das Skript nach LMM_RESULT: ausgegeben hat, als result zurückgegeben.

Zwei Werkzeuge, ein Modul pro Anwendung

Das ist LibreModular-MCP. Der Hub ist eine einzige Rust-Binärdatei, die dem Modell genau zwei Werkzeuge bietet. execute_script führt in einer Anwendung ein vollständiges Python-Skript aus und liefert zurück, was das Skript ausgegeben hat (sein result), oder die anwendungseigene Fehlerspur. get_state liefert, was in der Anwendung geöffnet ist. Ein Modul auf der Seite des Hubs und eine Brücke auf der Seite der Anwendung erreichen GIMP, Krita, Blender, Inkscape und LibreOffice; der Hub selbst kennt keine ihrer Schnittstellen.

Diese fünf Anwendungen sind die erprobten, nicht der Umfang des Hubs: Eine weitere Anwendung kommt über ein Modul, eine Brücke und ihren Leitfaden hinzu, wie CONTRIBUTING.md es beschreibt, und der Code steht unter der MIT-Lizenz.

Der Schnellstart legt die Konfiguration des Hubs an, Ihr Modell anbinden trägt ihn in Claude Code oder in opencode ein, und die Installation nennt das Paket für jede Linux-Familie.

Wie es weitergeht

  • Demonstration

    Ein Client mit 25 Zeilen startet den Hub, sendet ein Skript an Inkscape und gibt jede Antwort aus, ohne MCP-Client und ohne Fenster.

  • Installation

    Ein Befehl pro Linux-Familie, um den Hub aus seinem Paket zu installieren, das Windows-Installationsprogramm, die erreichte Stufe jedes Pakets, seine Prüfsumme und der Bau aus den Quellen.

  • Architektur

    Der Hub, seine zwei Werkzeuge, ein Modul und eine Brücke pro Anwendung, die drei Modi und ein Skript im Vergleich mit getrennten Aufrufen.

  • Sicherheit

    Was der Hub begrenzt, welche Risiken bleiben, was den Rechner verlässt, und die für diese Seite wiederholten Messungen.

  • Kompatibilität

    Pro Anwendung die erprobte Version, der Befehl, der sie gestartet hat, und was nicht ausprobiert wurde.

  • Anwendungen

    Ein echtes Rezept pro Anwendung: der dem Modell gegebene Text, sein Skript, die Antworten des Hubs und die erzeugte Datei.