项目简介
GPT-Vis 本地图表生成 MCP 服务器是一个专为大型语言模型 (LLM) 应用设计的后端服务。它将 AntV G2VP 的强大图表生成能力封装为 Model Context Protocol (MCP) 工具。与传统依赖远程服务器的方案不同,该服务支持在用户本地环境生成高质量图表,并将图表图片直接返回给 LLM 客户端,从而实现数据私有化和增强安全性。
主要功能点
- 本地私密图表生成: 所有图表都在您的本地设备上生成,敏感数据不会上传到任何外部服务器,确保数据隐私和安全。
- 丰富图表类型支持: 提供20多种常用的图表类型,包括饼图、折线图、柱状图、雷达图、散点图、热力图等,满足多样化的数据可视化需求。
- 易于部署集成: 针对如 Claude Desktop 等支持 MCP 协议的 LLM 客户端,提供简洁的配置选项,可以通过 'npx' 或 Docker 快速启动和集成。
- 企业级应用支持: 专为需要高度安全和私密环境的企业用户设计,有效避免数据泄露风险。
- 兼容现有生态: 该服务还可以作为私有 SSR(Server-Side Rendering)服务器,与上游 '@antv/mcp-server-chart' 集成,提供灵活的部署和使用方案。
安装步骤
该服务器推荐通过 'npx' 或 Docker 部署。在进行服务器配置前,请确保您的系统已具备相应的运行环境:
- 使用 NPX (推荐): 您的系统需要安装 Node.js (推荐 LTS 版本) 和 npm。
- 使用 Docker: 您的系统需要安装 Docker。
服务器配置
MCP 服务器是为 MCP 客户端(如 Claude Desktop)提供服务的。您需要在 MCP 客户端的设置中添加此服务器的配置。以下是两种推荐的配置方式,请根据您的环境选择,并可以直接复制到客户端的 MCP 服务器配置区域。每个配置块后附有详细说明:
选项 1: NPX (推荐)
{ "mcpServers": { "gpt-vis-mcp": { "command": "npx", "args": ["-y", "@jsr2npm/yao__gpt-vis-mcp@latest"] } } }
配置说明:
- '"gpt-vis-mcp"': 这是您为此 MCP 服务器指定的唯一名称,在 LLM 客户端中将以此名称识别和调用该服务。
- '"command": "npx"': 启动服务器的执行命令,此处为 'npx',一个用于运行 npm 包而无需全局安装的工具。
- '"args": ["-y", "@jsr2npm/yao__gpt-vis-mcp@latest"]': 传递给 'npx' 命令的参数。
- '"-y"': 自动同意安装任何所需的依赖。
- '"@jsr2npm/yao__gpt-vis-mcp@latest"': 指定要运行的 MCP 服务器包及其最新版本。
选项 2: Docker
{ "mcpServers": { "gpt-vis-mcp": { "command": "docker", "args": [ "run", "--interactive", "--rm", "-v", "/tmp/gpt-vis-charts:/tmp/gpt-vis-charts", "ghcr.io/yaonyan/gpt-vis-mcp:latest-mcp" ] } } }
配置说明:
- '"gpt-vis-mcp"': 此 MCP 服务器在客户端中的名称。
- '"command": "docker"': 启动服务器的执行命令,此处为 'docker'。
- '"args"': 传递给 'docker run' 命令的参数。
- '"run"': 运行一个 Docker 容器。
- '"--interactive"': 保持容器的标准输入流打开,这是 MCP 协议通过 Stdio (标准输入输出) 通信所必需的。
- '"--rm"': 容器停止运行时自动删除,确保资源清理。
- '"-v /tmp/gpt-vis-charts:/tmp/gpt-vis-charts"': Docker 卷挂载。将宿主机的 '/tmp/gpt-vis-charts' 目录挂载到容器内部的 '/tmp/gpt-vis-charts',用于存储生成的图表图片。您可以根据需要修改宿主机路径。
- '"ghcr.io/yaonyan/gpt-vis-mcp:latest-mcp"': 指定要运行的 Docker 镜像及其标签。
您还可以通过设置以下环境变量来配置图表图片存储路径和访问 URL:
- 'RENDERED_IMAGE_PATH': 指定图表图片存储的本地目录。
- 'RENDERED_IMAGE_HOST_PATH': 如果您希望生成的图片可以通过 HTTP 链接访问(例如,当您将服务器作为 SSR 服务运行并希望客户端能够直接通过 URL 获取图片时),可以指定一个图片的基础 URL。
通过 SSR 服务器与上游 MCP 服务器集成(高级用法)
如果您已经独立部署了 'gpt-vis-mcp' 的 HTTP SSR 服务器版本(例如在 'http://localhost:3000'),并希望通过 '@antv/mcp-server-chart' 这个上游 MCP 服务器来使用它,可以这样配置:
{ "mcpServers": { "mcp-server-chart": { "command": "npx", "args": ["-y", "@antv/mcp-server-chart"], "env": { "VIS_REQUEST_SERVER": "http://localhost:3000/generate" } } } }
配置说明: 此配置将 '@antv/mcp-server-chart' 启动为一个 MCP 服务器,但它会通过 'VIS_REQUEST_SERVER' 环境变量将图表生成请求转发给您本地运行的 'gpt-vis-mcp' SSR 服务器。这样,您仍然可以使用上游服务器的管理功能,但实际的图表渲染工作由您本地的 'gpt-vis-mcp' 服务完成。
基本使用方法
成功配置并启动 MCP 服务器后,您的 LLM 客户端(如 Claude Desktop)将能发现并调用 'gpt-vis-mcp' 提供的图表生成工具。您可以通过向 LLM 描述您想要可视化的数据和图表类型来生成图表。
例如,在 LLM 对话中您可以说:
“请根据以下数据生成一个饼图:'[{"category": "销售", "value": 45}, {"category": "市场", "value": 25}, {"category": "研发", "value": 30}]',标题为“部门收入占比”。”
LLM 将理解您的意图,并调用 'gpt-vis-mcp' 服务器上的相应工具。服务器会在本地生成图表图片,并将图片的访问链接(或图片本身,取决于客户端实现)返回给 LLM,LLM 客户端即可将该链接或图片展示给您。
信息
分类
AI与计算