antvis/mcp-server-chart: A Chart Generation MCP Server for LLM-Driven Data Analysis
🤖 A visualization mcp & skills contains 25+ visual charts using @antvis. Using for chart generation and data analysis.
At a glance
- What is it?
- This TypeScript-based MCP server exposes 26+ AntV chart tools to LLM clients. It covers common statistical charts plus specialized diagrams and maps, but geographic tools rely on AMap and are limited to China.
- Who is it for?
- Adopt antvis/mcp-server-chart if you are building an LLM assistant that needs to produce a wide variety of charts on demand and you accept the AntV ecosystem as your rendering layer. Do not adopt it if your users require geographic visualizations outside China, since the map tools depend on AMap and only support domestic regions.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 20 days ago.
- What is it written in?
- Mainly TypeScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
What problem it solves and who it targets
The project addresses a specific gap: giving large language models a standard way to produce visual charts without requiring the model to output raw SVG or JavaScript. Instead of asking an LLM to handcraft visualization code, you point it at this MCP server, which exposes a set of named tools like generate_bar_chart and generate_line_chart. The intended users are developers who are building MCP-compatible desktop applications or AI workflows where a user can request a chart in natural language and receive a rendered image or interactive artifact. The README lists Claude, VSCode, Cline, Cherry Studio, and Cursor as example clients, so the target audience is broad, but the underlying need is consistent: turn data analysis requests into concrete visual output within an LLM conversation.
How the server maps tools to AntV chart types
The mechanism is straightforward at the protocol level. Each tool name follows a pattern: generate_ plus a chart type. The server then translates the tool call into an AntV chart specification. The README lists 26 tools, covering common statistical charts like bar, column, line, pie, scatter, histogram, and boxplot. It also includes specialized diagrams such as fishbone, flow, mind map, and network graph. The mapping is one tool per chart type, which means the model does not need to know AntV configuration syntax. Instead, it supplies data and options through the MCP tool interface. The server handles the rendering. This design reduces the chance of malformed chart code, but it also caps flexibility: you cannot generate a chart that does not have a corresponding tool.
Getting it running with npx and client config
Setup is minimal for desktop clients. On macOS, you add a JSON block to your MCP client configuration that runs npx with the package name. The README gives this exact snippet: command npx, args [-y, @antv/mcp-server-chart]. On Windows, the command changes to cmd with args [/c, npx, -y, @antv/mcp-server-chart]. This npx-based approach means the server downloads on first run, which is convenient but requires network access. The README also mentions running with SSE or Streamable transport, and there are CLI options that are not fully detailed in the provided material. For developers who want to test locally, the repository has a development section, but the README excerpt does not include the specific commands.
Environment variables for deployment control
The README documents three environment variables that give operators control over the server. VIS_REQUEST_SERVER is listed under private deployment, which suggests you can point the server to a custom visualization request backend instead of the default. SERVICE_ID appears under generate records, implying that you can tag or track chart generation requests for logging or analytics. DISABLED_TOOLS is for tool filtering, letting you turn off chart types that you do not want exposed to the LLM. This is useful in production where you might want to restrict the model to a subset of charts. The README does not specify the exact syntax for DISABLED_TOOLS, so you would need to check the source or npm documentation before relying on it.
Geographic charts and the AMap limitation
A notable constraint appears in the geographic chart tools. The README includes a note stating that the geographic visualization tools use the AMap service and currently only support map generation within China. This affects generate_district_map, generate_path_map, and generate_pin_map. If your data involves locations outside China, those tools will not work as expected. Also, using AMap implies a dependency on an external service, which introduces network latency and potential availability issues. For a global audience, this is a real limitation. The README does not mention any plan to support other map providers, so you should treat the China-only scope as a current boundary.
Maintenance and upgrade cost
The repository shows recent activity with releases in late 2025 and early 2026, the latest being 0.9.10 from February 2026. The version numbers below 1.0 indicate that the API may change without a major version bump. The README does not provide a changelog or migration guide in the excerpt, so upgrading between minor versions could require checking release notes on GitHub. The project is under the AntV organization, which is an established open source group, but this specific MCP server is young. The MIT license is permissive, so there are no restrictive licensing costs. The main maintenance cost is staying current with releases if you rely on bug fixes or new chart types. The build badge and codecov badge in the README suggest that the project has CI, but the excerpt does not include test coverage numbers.
Comparing with direct rendering or custom MCP tools
The alternative to this server is to build your own MCP tool that takes data and returns a chart, or to have the LLM output chart code directly. Direct rendering gives you full control over the chart library and the output format, but it requires the LLM to generate syntactically correct code, which is error-prone. Building a custom MCP server lets you define exactly the chart types you need, but that is development effort. antvis/mcp-server-chart sits in between: it provides a broad set of prebuilt tools, so you do not have to write server code, but you inherit the AntV ecosystem and the tool naming scheme. If you only need one or two chart types, a custom tool is simpler. If you need 26 chart types, this server is convenient. The trade-off is that you cannot easily extend it with a new chart type without modifying the server source.
Editorial conclusion
Adopt antvis/mcp-server-chart if you are building an LLM assistant that needs to produce a wide variety of charts on demand and you accept the AntV ecosystem as your rendering layer. Do not adopt it if your users require geographic visualizations outside China, since the map tools depend on AMap and only support domestic regions. Before integrating, verify that your MCP client can handle the npx-based startup and that your environment permits the required network calls to AntV and AMap services. Check the DISABLED_TOOLS environment variable to filter out chart types you do not need, and confirm that the current 0.9.10 release matches your expected feature set, as the project is under active development.
Community notes