Graphistry MCP 集成
使用Graphistry和MCP对大型语言模型进行GPU加速的图可视化与分析。
概述
该项目将Graphistry的强大的GPU加速图形可视化平台与模型控制协议(MCP)相结合,为人工智能助手和大型语言模型(LLM)提供了先进的图形分析能力。它使大型语言模型能够通过标准化、对LLM友好的界面来可视化和分析复杂的网络数据。
主要特点:
- 通过Graphistry实现GPU加速的图形可视化
- 高级模式发现与关系分析
- 网络分析(社区检测、中心性分析、路径查找、异常检测)
- 支持多种数据格式(Pandas、NetworkX、边列表)
- LLM友好型API:单一
graph_data用于图形工具的字典
🚨 重要提示:需注册Graphistry
此MCP服务器需要一个免费的Graphistry账户才能使用可视化功能。
- 在(某网站/平台)注册一个免费账户 hub.graphistry.com 翻译为中文是:“图数据库网关.graphistry.com”。不过,通常我们不会直接翻译网址的域名部分,而是保持原样,所以更常见的表达可能是直接说“hub.graphistry.com”这个网址,或者根据上下文解释其用途,比如“这是图数据库服务hub.graphistry.com的网址”。如果非要翻译整个网址并保持其可读性,可以表述为“图数据库枢纽(Graphistry Hub)的网址是graphistry.com的hub部分”,但这样的表述在实际使用中并不常见
- 将您的凭据设置为环境变量或在(某个地方)保存
.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通过标准输入输出连接(设置 command, args,和 env (按需)
注:
.mcp.json.example包含HTTP和stdio配置。根据需要通过设置来启用/禁用disabled字段。- 看
.env.example用于设置环境变量。
安装
使用 npm 快速入门(推荐)
# Install via npx (no installation required)
npx -y @silkspace/graphistry-mcp
# Or install globally
npm install -g @silkspace/graphistry-mcp
graphistry-mcpMCP 客户端配置:
添加到您的MCP客户端设置中(.mcp.json,MCP客户端配置等):
{
"graphistry": {
"command": "npx",
"args": ["-y", "@silkspace/graphistry-mcp"],
"env": {
"GRAPHISTRY_USERNAME": "your_username",
"GRAPHISTRY_PASSWORD": "your_password"
}
}
}该 npm 包会自动:
- 创建一个Python虚拟环境
- 安装所有Python依赖项(使用
uv如果可用,则(进行某操作);否则pip) - 设置MCP服务器
备选方案:手动安装(Python 虚拟环境 + 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安全与凭证处理
- 服务器从环境变量中加载凭据或
.env使用 python-dotenv,所以您可以放心使用一个.env用于本地开发的文件。 - 这个(或“该”)
start-graphistry-mcp.sh脚本来源.env并且是启动服务器最稳健、最安全的方式。
添加到MCP客户端
使用 npm(推荐):
在您的MCP客户端配置中添加MCP服务器:
{
"graphistry": {
"command": "npx",
"args": ["-y", "@silkspace/graphistry-mcp"],
"env": {
"GRAPHISTRY_USERNAME": "your_username",
"GRAPHISTRY_PASSWORD": "your_password"
}
}
}使用手动安装:
{
"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"
}
}
}注:
- 确保使用虚拟环境(可以通过使用虚拟环境python的完整路径,或者在启动前激活它)。
- 如果你看到有关API版本或缺少凭证的错误,请仔细检查你的环境变量和注册信息。
示例:可视化图表(适合大语言模型的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工具可用于图形可视化、分析和操作:
- 可视化图表使用Graphistry的GPU加速渲染器来可视化图表或超图。
- 获取图表ID列出当前会话中存储的所有图形ID。
- 获取图表信息获取存储图的元数据(节点/边的数量、标题、描述)。
- 应用布局为图表应用一种标准布局(力导向、径向、圆形、网格)。
- 检测模式执行网络分析(中心性分析、社区检测、路径寻找、异常检测)。
- 编码点颜色根据列(分类或连续)设置节点颜色编码。
- 编码点大小根据列(分类或连续)设置节点大小编码。
- 编码点图标按列设置节点图标编码(分类,带图标映射或分箱)。
- 编码徽章点按列设置节点徽章编码(分类,支持图标映射或分箱)。
- 应用环形分类布局根据分类列(例如,组/类型)将节点排列成环形。
- 在盒装布局中应用组将节点以框内分组布局进行排列(需要igraph库)。
- 应用模块化加权布局按模块性加权布局排列节点(需要igraph库)。
- 应用连续环形布局通过连续列(例如,得分)将节点排列成环。
- 应用时间环布局根据日期时间列(例如,created_at)将节点排列成环。
- 应用树形布局将节点以树状(分层层次)布局进行排列。
- 设置图形参数设置高级可视化参数(点大小、边缘影响等)。
做出贡献
欢迎提出拉取请求(PRs)和问题!随着我们对基于大型语言模型(LLM)的图分析和工具集成了解的深入,这个项目正在迅速发展。
许可证
麻省理工学院(MIT)
