一个本地/私有优先的封装器用于 antvis/mcp-server-chart,可以在没有外部服务器依赖的情况下本地生成图表。
在您的Claude Desktop MCP设置中添加:
选项1:NPX(推荐)
{
"mcpServers": {
"gpt-vis-mcp": {
"command": "npx",
"args": ["-y", "@jsr2npm/yao__gpt-vis-mcp@latest"]
}
}
}
选项2:Deno 直接运行
{
"mcpServers": {
"gpt-vis-mcp": {
"command": "deno",
"args": ["run", "--allow-all", "@yao/gpt-vis-mcp/bin"]
}
}
}
选项3:NPX + Deno
{
"mcpServers": {
"gpt-vis-mcp": {
"command": "npx",
"args": ["-y", "deno", "run", "--allow-all", "@yao/gpt-vis-mcp/bin"]
}
}
}
使用npx时可能会遇到canvas依赖问题和字体渲染问题。如果出现这些问题,请尝试选项4。
选项4: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"
]
}
}
}
您也可以以各种传输模式直接运行服务器:
# 使用JSR包(推荐)
# 默认stdio模式(适用于MCP客户端)
deno run --allow-all @yao/gpt-vis-mcp/bin
# SSE服务器模式
deno run --allow-all @yao/gpt-vis-mcp/bin --transport sse --port 3000 --host localhost
# 简短形式
deno run --allow-all @yao/gpt-vis-mcp/bin -t sse -p 3000 -h localhost
# 显示帮助
deno run --allow-all @yao/gpt-vis-mcp/bin --help
# 替代方案:使用npx与deno
# 默认stdio模式
npx -y deno run --allow-all @yao/gpt-vis-mcp/bin
# SSE服务器模式
npx -y deno run --allow-all @yao/gpt-vis-mcp/bin --transport sse --port 3000
# 显示帮助
npx -y deno run --allow-all @yao/gpt-vis-mcp/bin --help
传输模式:
stdio:通过标准输入输出直接进行MCP协议通信(默认)sse:为Web客户端提供Server-Sent Events HTTP服务器# 运行SSE服务器
docker run -p 3000:3000 ghcr.io/yaonyan/gpt-vis-mcp:latest-mcp --transport sse --port 3000 --host 0.0.0.0
# 访问SSE端点
curl http://localhost:3000/sse
离线环境支持:Docker镜像设计用于在无网络连接或离线环境中工作。所有依赖项都在构建阶段被缓存,并且DENO_CACHED_ONLY环境变量确保运行时不会发出任何网络请求。
根据需要设置环境变量:
| 变量 | 描述 | 默认值 |
|---|---|---|
RENDERED_IMAGE_PATH | 图表图像目录 | 系统临时目录 |
RENDERED_IMAGE_HOST_PATH | 访问图像的基础URL | (可选) |
DENO_CACHED_ONLY | 在离线模式下运行 | true(在Docker中) |
我们还提供了一个SSR服务器,遵循了https://github.com/antvis/mcp-server-chart?tab=readme-ov-file#-private-deployment的要求。
# 运行SSR API服务器
docker run -p 3000:3000 -e RENDERED_IMAGE_HOST_PATH=http://localhost:3000/charts ghcr.io/yaonyan/gpt-vis-mcp:latest-http
# 测试SSR API
❯ curl -X POST http://localhost:3000/generate \
-H "Content-Type: application/json" \
-d '{"type": "pie", "data": [{"category": "A", "value": 30}, {"category": "B", "value": 70}]}'
{"success":true,"resultObj":"http://localhost:3000/charts/chart_1750500506056_T6IC0Vtp.png"}
然后,您可以指定VIS_REQUEST_SERVER环境变量来使用上游的@antv/mcp-server-chart:
{
"mcpServers": {
"mcp-server-chart": {
"command": "npx",
"args": ["-y", "@antv/mcp-server-chart"],
"env": {
"VIS_REQUEST_SERVER": "http://localhost:3000/generate"
}
}
}
}
这允许您在使用原始MCP服务器的同时利用自己的私有SSR端点生成图表。
参见CONTRIBUTING.md了解开发设置。
MIT许可证 - 详情见LICENSE