@luorivergoddess/mcp-geo
Ein MCP-Server (Model Context Protocol) zur Generierung präziser geometrischer Bilder mit Asymptote. Dieser Server ermöglicht MCP-kompatiblen KI-Modellen die Anforderung der Bildgenerierung durch Bereitstellung von Asymptote-Code.
Voraussetzungen
Stellen Sie vor der Verwendung dieses Servers sicher, dass Folgendes installiert ist:
Node.js : Version 16.x oder höher wird empfohlen. Sie können es von nodejs.org herunterladen.
Asymptote : Dies ist eine kritische Abhängigkeit. Das Befehlszeilentool
asymuss installiert und im PATH Ihres Systems zugänglich sein.Besuchen Sie die offizielle Asymptote-Website zum Herunterladen und für ausführliche Installationsanweisungen.
Gängige Installationsmethoden:
macOS (über Homebrew):
brew install asymptoteDebian/Ubuntu Linux:
sudo apt-get install asymptoteWindows: Wird oft als Teil von TeX-Distributionen wie MiKTeX oder TeX Live installiert. Stellen Sie sicher, dass das Asymptote-
bin-Verzeichnis zu Ihrem Pfad hinzugefügt wird.
Der Server versucht beim Start, nach
asy -versionzu suchen und gibt einen Fehler aus, wenn sie nicht gefunden wird.
Related MCP server: Stability AI MCP Server
Installation
So installieren Sie dieses Paket global (wenn Sie den Befehl „ connect direkt ausführen möchten) oder als Abhängigkeit in einem anderen Projekt:
Wenn Sie das Repository geklont haben und es lokal für die Entwicklung ausführen möchten:
Klonen Sie das Repository.
Abhängigkeiten installieren:
npm installErstellen Sie das Projekt:
npm run build
Verwendung
Starten des Servers
Sobald das Paket installiert ist (z. B. global oder lokal verknüpft), können Sie den MCP-Server mit dem in diesem Paket bereitgestellten connect -Befehl starten. Dieser Befehl ist für den Aufruf durch einen MCP-Client vorgesehen.
Oder, wenn Sie das Repository geklont und erstellt haben:
Der Server wird gestartet und wartet unter Verwendung von @modelcontextprotocol/sdk auf JSON-RPC-Nachrichten auf stdin/stdout.
MCP-Client-Integration
Konfigurieren Sie Ihren MCP-kompatiblen Client (z. B. VS Code mit Copilot-Agent-Modus, Claude Desktop) für die Verwendung dieses Servers. Dazu müssen Sie dem Client in der Regel mitteilen, wie der Server gestartet werden soll. Dies geschieht mit dem Befehl npx @luorivergoddess/mcp-geo connect .
Verfügbares Tool: renderGeometricImage
Der Server stellt ein primäres Tool bereit:
Name:
renderGeometricImageBeschreibung: Rendert ein Bild aus Asymptote-Code.
Eingabeschema:
{ "type": "object", "properties": { "asyCode": { "type": "string", "description": "A string containing complete and valid Asymptote code to be compiled. The server executes this code directly. Ensure necessary `import` statements (e.g., `import graph;`) and settings (e.g., `unitsize(1cm);`) are included within this code block if needed." }, "outputParams": { "type": "object", "description": "Optional parameters to control the output image.", "properties": { "format": { "type": "string", "enum": ["svg", "png"], "description": "The desired output image format. \"svg\" for scalable vector graphics (recommended for diagrams and plots), \"png\" for raster graphics. Defaults to \"svg\" if not specified." }, "renderLevel": { "type": "number", "description": "For PNG output only. Specifies the rendering quality (supersampling level for antialiasing). Higher values (e.g., 4 or 8) produce smoother images but take longer to render and result in larger files. Asymptote default is 2. This server defaults to 4 if not specified and format is \"png\". Ignored for SVG output." } } } }, "required": ["asyCode"] }Ausgabe: Das Tool gibt ein
CallToolResultzurück, das ein Array von Inhaltsteilen enthält.Bei Erfolg enthält es einen
ImageContentTeil mit:type: "image"mimeType: "image/svg+xml"oder"image/png"data: "<base64_encoded_image_data>"
Es kann auch einen
TextContentTeil mit Protokollen von Asymptote enthalten.Wenn ein Fehler auftritt, wird ein
McpErrorausgegeben.
Beispiel für
Hinweise zur Client-Kompatibilität:
Bei einigen MCP-Clients können Einschränkungen hinsichtlich der unterstützten Bild-MIME-Typen vorliegen.
Wenn Sie diesen Server beispielsweise mit einem Client verwenden, der
image/svg+xmlnicht unterstützt (z. B. bestimmte Versionen oder Konfigurationen von „Cherry Studio“, wie berichtet), stellen Sie bitte sicher, dass Sie daspngFormat anfordern, indem Sie"outputParams": { "format": "png" }in Ihren Tool-Aufrufargumenten angeben. Der Server verwendet standardmäßigsvg, wenn kein Format angegeben ist.
Autor
luorivergoddess
Lizenz
ISC