Skip to main content
Glama

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 アカウントが必要です。

  1. hub.graphistry.comで無料アカウントを登録してください

  2. サーバーを起動する前に、資格情報を環境変数または.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として提供されています。

設定:

cp .mcp.json.example .mcp.json

.mcp.json次のように編集します。

  • 環境に合わせて正しいパスを設定します(例:プロジェクトルート、Python実行ファイル、サーバースクリプト)

  • Graphistry の資格情報を設定します (または環境変数/.env を使用します)

  • HTTP モードと stdio モードを選択します。

    • graphistry-http : HTTP経由で接続します(サーバーのポートに合わせてurlを設定してください)

    • graphistry : stdio 経由で接続します (必要に応じてcommandargsenvを設定します)

注記:

  • .mcp.json.exampleには HTTP と stdio の両方の設定が含まれています。disabled フィールドdisabled設定することで、必要に応じて有効化/無効化できます。

  • 環境変数の設定については、 .env.example参照してください。

インストール

推奨インストール(Python venv + pip)

# Clone the repository git clone https://github.com/graphistry/graphistry-mcp.git cd graphistry-mcp # Set up virtual environment and install dependencies python3 -m venv .venv source .venv/bin/activate pip install -e ".[dev]" # Set up your Graphistry credentials (see above)

または、セットアップ スクリプトを使用します。

./setup-graphistry-mcp.sh

使用法

サーバーの起動

# Activate your virtual environment if not already active source .venv/bin/activate # Start the server (stdio mode) python run_graphistry_mcp.py # Or use the start script for HTTP or stdio mode (recommended, sources .env securely) ./start-graphistry-mcp.sh --http 8080

セキュリティと資格情報の取り扱い

  • サーバーは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辞書を受け入れるようになりました。例:

{ "graph_data": { "graph_type": "graph", "edges": [ {"source": "A", "target": "B"}, {"source": "A", "target": "C"}, {"source": "A", "target": "D"}, {"source": "A", "target": "E"}, {"source": "B", "target": "C"}, {"source": "B", "target": "D"}, {"source": "B", "target": "E"}, {"source": "C", "target": "D"}, {"source": "C", "target": "E"}, {"source": "D", "target": "E"} ], "nodes": [ {"id": "A"}, {"id": "B"}, {"id": "C"}, {"id": "D"}, {"id": "E"} ], "title": "5-node, 10-edge Complete Graph", "description": "A complete graph of 5 nodes (K5) where every node is connected to every other node." } }

例(ハイパーグラフ):

{ "graph_data": { "graph_type": "hypergraph", "edges": [ {"source": "A", "target": "B", "group": "G1", "weight": 0.7}, {"source": "A", "target": "C", "group": "G1", "weight": 0.6}, {"source": "B", "target": "C", "group": "G2", "weight": 0.8}, {"source": "A", "target": "D", "group": "G2", "weight": 0.5} ], "columns": ["source", "target", "group"], "title": "Test Hypergraph", "description": "A simple test hypergraph." } }

利用可能な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 駆動型のグラフ分析とツール統合について学ぶにつれて急速に進化しています。

ライセンス

マサチューセッツ工科大学

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/graphistry/graphistry-mcp'

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