Graphistry MCP-Integration
GPU-beschleunigte Graphvisualisierung und -analyse für große Sprachmodelle mit Graphistry und MCP.
Überblick
Dieses Projekt integriert die leistungsstarke GPU-beschleunigte Graphvisualisierungsplattform von Graphistry mit dem Model Control Protocol (MCP) und ermöglicht so erweiterte Graphanalysefunktionen für KI-Assistenten und LLMs. LLMs können komplexe Netzwerkdaten über eine standardisierte, LLM-freundliche Schnittstelle visualisieren und analysieren.
Hauptmerkmale:
GPU-beschleunigte Graphvisualisierung über Graphistry
Erweiterte Mustererkennung und Beziehungsanalyse
Netzwerkanalyse (Community-Erkennung, Zentralität, Pfadfindung, Anomalieerkennung)
Unterstützung für verschiedene Datenformate (Pandas, NetworkX, Edge-Listen)
LLM-freundliche API: einzelnes
graph_dataDict für Graph-Tools
Related MCP server: Data Visualization MCP Server
🚨 Wichtig: Graphistry-Registrierung erforderlich
Für die Nutzung der Visualisierungsfunktionen dieses MCP-Servers ist ein kostenloses Graphistry-Konto erforderlich.
Registrieren Sie sich für ein kostenloses Konto unter hub.graphistry.com
Legen Sie Ihre Anmeldeinformationen als Umgebungsvariablen oder in einer
.envDatei fest, bevor Sie den Server starten:export GRAPHISTRY_USERNAME=your_username export GRAPHISTRY_PASSWORD=your_password # or create a .env file with: # GRAPHISTRY_USERNAME=your_username # GRAPHISTRY_PASSWORD=your_passwordEine Vorlage finden Sie unter
.env.example.
MCP-Konfiguration (.mcp.json)
Um dieses Projekt mit Cursor oder anderen MCP-kompatiblen Tools zu verwenden, benötigen Sie eine .mcp.json Datei im Projektstammverzeichnis. Eine Vorlage steht als .mcp.json.example zur Verfügung.
Aufstellen:
Bearbeiten Sie .mcp.json wie folgt:
Legen Sie die richtigen Pfade für Ihre Umgebung fest (z. B. Projektstamm, ausführbare Python-Datei, Serverskript).
Legen Sie Ihre Graphistry-Anmeldeinformationen fest (oder verwenden Sie Umgebungsvariablen/.env).
Wählen Sie zwischen HTTP- und Stdio-Modus:
graphistry-http: Verbindung über HTTP (stellen Sie dieurlso ein, dass sie mit dem Port Ihres Servers übereinstimmt)graphistry: Verbindung über stdio (command,argsundenvnach Bedarf festlegen)
Notiz:
.mcp.json.exampleenthält sowohl HTTP- als auch stdio-Konfigurationen. Aktivieren/deaktivieren Sie diese nach Bedarf, indem Sie dasdisabledFeld festlegen.Informationen zum Einrichten von Umgebungsvariablen finden Sie unter
.env.example.
Installation
Empfohlene Installation (Python venv + pip)
Oder verwenden Sie das Setup-Skript:
Verwendung
Starten des Servers
Sicherheit und Handhabung von Anmeldeinformationen
Der Server lädt Anmeldeinformationen aus Umgebungsvariablen oder
.envmithilfe von python-dotenv , sodass Sie eine.envDatei sicher für die lokale Entwicklung verwenden können.Das Skript
start-graphistry-mcp.shbezieht.envund ist die robusteste und sicherste Möglichkeit, den Server zu starten.
Hinzufügen zum Cursor (oder anderen LLM-Tools)
Fügen Sie den MCP-Server zu Ihrer
.cursor/mcp.jsonoder einer gleichwertigen Konfiguration hinzu:{ "graphistry": { "command": "/path/to/your/.venv/bin/python", "args": ["/path/to/your/run_graphistry_mcp.py"], "env": { "GRAPHISTRY_USERNAME": "your_username", "GRAPHISTRY_PASSWORD": "your_password" }, "type": "stdio" } }Stellen Sie sicher, dass die virtuelle Umgebung verwendet wird (entweder indem Sie den vollständigen Pfad zum Python des Venv verwenden oder indem Sie es vor dem Start aktivieren).
Wenn Sie Fehler bezüglich der API-Version oder fehlende Anmeldeinformationen sehen, überprüfen Sie Ihre Umgebungsvariablen und Ihre Registrierung.
Beispiel: Visualisieren eines Graphen (LLM-freundliche API)
Das Haupttool, visualize_graph , akzeptiert jetzt ein einzelnes graph_data -Wörterbuch. Beispiel:
Beispiel (Hypergraph):
Verfügbare MCP-Tools
Die folgenden MCP-Tools stehen zur Visualisierung, Analyse und Bearbeitung von Diagrammen zur Verfügung:
visualize_graph : Visualisieren Sie einen Graphen oder Hypergraphen mit dem GPU-beschleunigten Renderer von Graphistry.
get_graph_ids : Listet alle gespeicherten Graph-IDs in der aktuellen Sitzung auf.
get_graph_info : Ruft Metadaten (Knoten-/Kantenanzahl, Titel, Beschreibung) für ein gespeichertes Diagramm ab.
apply_layout : Wenden Sie ein Standardlayout (kraftgerichtet, radial, Kreis, Gitter) auf ein Diagramm an.
detect_patterns : Führen Sie eine Netzwerkanalyse durch (Zentralität, Community-Erkennung, Pfadfindung, Anomalieerkennung).
encode_point_color : Legen Sie die Farbcodierung des Knotens nach Spalte fest (kategorisch oder kontinuierlich).
encode_point_size : Legen Sie die Knotengrößenkodierung nach Spalte fest (kategorisch oder kontinuierlich).
encode_point_icon : Legen Sie die Knotensymbolkodierung nach Spalte fest (kategorisch, mit Symbolzuordnung oder Binning).
encode_point_badge : Legen Sie die Knoten-Badge-Kodierung nach Spalte fest (kategorisch, mit Symbolzuordnung oder Binning).
apply_ring_categorical_layout : Ordnen Sie Knoten in Ringen nach einer kategorischen Spalte an (z. B. Gruppe/Typ).
apply_group_in_a_box_layout : Knoten im Group-in-a-Box-Layout anordnen (erfordert igraph).
apply_modularity_weighted_layout : Knoten nach modularitätsgewichtetem Layout anordnen (erfordert igraph).
apply_ring_continuous_layout : Ordnen Sie Knoten in Ringen nach einer kontinuierlichen Spalte an (z. B. Punktzahl).
apply_time_ring_layout : Ordnen Sie Knoten in Ringen nach einer Datums-/Uhrzeitspalte an (z. B. „created_at“).
apply_tree_layout : Ordnen Sie Knoten in einem Baumlayout (hierarchisch geschichtet) an.
set_graph_settings : Erweiterte Visualisierungseinstellungen festlegen (Punktgröße, Kanteneinfluss usw.).
Beitragen
PRs und Probleme sind willkommen! Dieses Projekt entwickelt sich rasant, da wir immer mehr über LLM-gesteuerte Graphanalyse und Tool-Integration erfahren.
Lizenz
MIT