Graphistry MCP統合
Graphistry と MCP を使用した大規模言語モデルの GPU アクセラレーションによるグラフの視覚化と分析。
概要
このプロジェクトは、Graphistryの強力なGPUアクセラレーションによるグラフ可視化プラットフォームとモデル制御プロトコル(MCP)を統合し、AIアシスタントやLLM向けの高度なグラフ分析機能を実現します。これにより、LLMは標準化されたLLM対応インターフェースを通じて、複雑なネットワークデータを可視化・分析できるようになります。
主な機能:
Graphistry による GPU アクセラレーションによるグラフ可視化
高度なパターン発見と関係分析
ネットワーク分析(コミュニティ検出、中心性、パス検索、異常検出)
さまざまなデータ形式(Pandas、NetworkX、エッジリスト)のサポート
LLM 対応 API: グラフ ツール用の単一の
graph_data辞書
Related MCP server: Data Visualization MCP Server
🚨 重要: Graphistry 登録が必要です
この MCP サーバーでは、視覚化機能を使用するために無料の Graphistry アカウントが必要です。
hub.graphistry.comで無料アカウントを登録してください
サーバーを起動する前に、資格情報を環境変数または
.envファイルで設定します。export GRAPHISTRY_USERNAME=your_username export GRAPHISTRY_PASSWORD=your_password # or create a .env file with: # GRAPHISTRY_USERNAME=your_username # GRAPHISTRY_PASSWORD=your_passwordテンプレートについては
.env.exampleを参照してください。
MCP 構成 (.mcp.json)
このプロジェクトをCursorやその他のMCP互換ツールで使用するには、プロジェクトルートに.mcp.jsonファイルが必要です。テンプレートは.mcp.json.exampleとして提供されています。
設定:
.mcp.json次のように編集します。
環境に合わせて正しいパスを設定します(例:プロジェクトルート、Python実行ファイル、サーバースクリプト)
Graphistry の資格情報を設定します (または環境変数/.env を使用します)
HTTP モードと stdio モードを選択します。
graphistry-http: HTTP経由で接続します(サーバーのポートに合わせてurlを設定してください)graphistry: stdio 経由で接続します (必要に応じてcommand、args、envを設定します)
注記:
.mcp.json.exampleには HTTP と stdio の両方の設定が含まれています。disabled フィールドdisabled設定することで、必要に応じて有効化/無効化できます。環境変数の設定については、
.env.example参照してください。
インストール
推奨インストール(Python venv + pip)
または、セットアップ スクリプトを使用します。
使用法
サーバーの起動
セキュリティと資格情報の取り扱い
サーバーはpython-dotenvを使用して環境変数または
.envから資格情報を読み込むため、ローカル開発では.envファイルを安全に使用できます。start-graphistry-mcp.shスクリプトは.envソースとし、サーバーを起動する最も堅牢で安全な方法です。
カーソル(または他のLLMツール)への追加
MCP サーバーを
.cursor/mcp.jsonまたは同等の構成に追加します。{ "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" } }仮想環境が使用されていることを確認します (venv の python へのフルパスを使用するか、起動前にアクティブ化します)。
API バージョンまたは資格情報の不足に関するエラーが表示される場合は、環境変数と登録を再確認してください。
例: グラフの可視化 (LLM 対応 API)
メインツールでvisualize_graph 、単一のgraph_data辞書を受け入れるようになりました。例:
例(ハイパーグラフ):
利用可能なMCPツール
グラフの視覚化、分析、および操作には、次の MCP ツールが使用できます。
visualize_graph : Graphistry の GPU アクセラレーション レンダラーを使用してグラフまたはハイパーグラフを視覚化します。
get_graph_ids : 現在のセッションに保存されているすべてのグラフ ID を一覧表示します。
get_graph_info : 保存されたグラフのメタデータ (ノード/エッジ数、タイトル、説明) を取得します。
apply_layout : グラフに標準レイアウト (force_directed、radial、circle、grid) を適用します。
detect_patterns : ネットワーク分析 (中心性、コミュニティ検出、パス検索、異常検出) を実行します。
encode_point_color : 列 (カテゴリまたは連続) ごとにノードの色のエンコーディングを設定します。
encode_point_size : 列 (カテゴリまたは連続) ごとにノード サイズのエンコーディングを設定します。
encode_point_icon : 列ごとにノード アイコンのエンコーディングを設定します (カテゴリ別、アイコン マッピングまたはビニングを使用)。
encode_point_badge : 列ごとにノードバッジのエンコーディングを設定します (カテゴリ、アイコン マッピングまたはビニングを使用)。
apply_ring_categorical_layout : カテゴリ列 (グループ/タイプなど) ごとにリング内のノードを配置します。
apply_group_in_a_box_layout : グループインアボックスレイアウトでノードを配置します (igraph が必要です)。
apply_modularity_weighted_layout : モジュール性重み付けレイアウトでノードを配置します (igraph が必要です)。
apply_ring_continuous_layout : 連続した列 (スコアなど) ごとにリング内のノードを配置します。
apply_time_ring_layout : 日付時刻列 (例: created_at) ごとにリング内のノードを配置します。
apply_tree_layout : ノードをツリー (階層型) レイアウトに配置します。
set_graph_settings : 高度な視覚化設定 (ポイント サイズ、エッジの影響など) を設定します。
貢献
PR と問題を歓迎します。このプロジェクトは、LLM 駆動型のグラフ分析とツール統合について学ぶにつれて急速に進化しています。
ライセンス
マサチューセッツ工科大学