
Mcp Server Chart
- 4.3k repo stars
- Updated May 6, 2026
- antvis/mcp-server-chart
mcp-server-chart is an MCP server that generates AntV-based charts from agent tool calls over stdio.
About
io.github.antvis/mcp-server-chart is a Model Context Protocol server that lets coding agents create charts using the AntV visualization stack. developers preparing README metrics, internal analytics snapshots, landing-page figures, or seed-deck charts can describe the data and chart intent in chat and receive generated visuals instead of opening a separate BI tool. The published npm package supports stdio, which maps cleanly to Claude Code and Cursor MCP configs, and environment variables allow you to point VIS_REQUEST_SERVER at a self-hosted endpoint, attach a SERVICE_ID for generation records, or disable specific tools via DISABLED_TOOLS. It complements hand-written React or D3 code when you need fast, good-enough plots during documentation and prototyping. For production customer-facing analytics you will still want tested pipelines and accessibility review; this MCP shines when velocity and agent-native iteration matter more than a fully custom design system.
- MCP server for chart generation powered by AntV
- npm package @antv/mcp-server-chart with stdio transport
- Optional VIS_REQUEST_SERVER for private or custom chart backend
- SERVICE_ID and DISABLED_TOOLS env vars for governance and trimming tools
- Fits agent workflows that need quick line, bar, and composite visuals
Mcp Server Chart by the numbers
- Data as of Jul 28, 2026 (Skillselion catalog sync)
claude mcp add --env VIS_REQUEST_SERVER=YOUR_VIS_REQUEST_SERVER --env SERVICE_ID=YOUR_SERVICE_ID --env DISABLED_TOOLS=YOUR_DISABLED_TOOLS mcp-server-chart -- npx -y @antv/mcp-server-chartAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 4.3k |
|---|---|
| Package | @antv/mcp-server-chart |
| Transport | STDIO |
| Auth | Required |
| Last updated | May 6, 2026 |
| Repository | antvis/mcp-server-chart ↗ |
What it does
Generate AntV charts from natural language during docs, dashboards, or pitch materials without hand-coding every visualization.
Who is it for?
Best when you document metrics in-repo, ship lightweight admin charts, or need agent-generated figures for blogs and pitch PDFs.
Skip if: Skip if you require pixel-perfect branded dashboards, real-time streaming analytics, or heavy embedded BI with row-level security out of the box.
What you get
After registering @antv/mcp-server-chart, your agent can produce AntV charts on demand so docs, decks, and debug views gain visuals without a separate charting sprint.
- Agent-generated AntV chart assets or URLs for docs and decks
- Repeatable chart tool calls tied to your metrics narratives
- Configurable tool surface via DISABLED_TOOLS when you need a smaller MCP footprint
By the numbers
- npm package @antv/mcp-server-chart (catalog package version 0.9.0-beta.1)
- Default VIS_REQUEST_SERVER https://antv-studio.alipay.com/api/gpt-vis
- Server schema version 1.0.0 in catalog metadata
README.md
MCP Server Chart
A Model Context Protocol server for generating charts using AntV. We can use this mcp server for chart generation and data analysis.

This is a TypeScript-based MCP server that provides chart generation capabilities. It allows you to create various types of charts through MCP tools. You can also use it in Dify.
📋 Table of Contents
- ✨ Features
- 🤖 Usage
- 🎨 Skill Usage
- 🚰 Run with SSE or Streamable transport
- 🎮 CLI Options
- ⚙️ Environment Variables
- 📠 Private Deployment
- 🗺️ Generate Records
- 🎛️ Tool Filtering
- 🔨 Development
- 📄 License
✨ Features
Now 26+ charts supported.

generate_area_chart: Generate anareachart, used to display the trend of data under a continuous independent variable, allowing observation of overall data trends.generate_bar_chart: Generate abarchart, used to compare values across different categories, suitable for horizontal comparisons.generate_boxplot_chart: Generate aboxplot, used to display the distribution of data, including the median, quartiles, and outliers.generate_column_chart: Generate acolumnchart, used to compare values across different categories, suitable for vertical comparisons.generate_district_map- Generate adistrict-map, used to show administrative divisions and data distribution.generate_dual_axes_chart: Generate adual-axeschart, used to display the relationship between two variables with different units or ranges.generate_fishbone_diagram: Generate afishbonediagram, also known as an Ishikawa diagram, used to identify and display the root causes of a problem.generate_flow_diagram: Generate aflowchart, used to display the steps and sequence of a process.generate_funnel_chart: Generate afunnelchart, used to display data loss at different stages.generate_histogram_chart: Generate ahistogram, used to display the distribution of data by dividing it into intervals and counting the number of data points in each interval.generate_line_chart: Generate alinechart, used to display the trend of data over time or another continuous variable.generate_liquid_chart: Generate aliquidchart, used to display the proportion of data, visually representing percentages in the form of water-filled spheres.generate_mind_map: Generate amind-map, used to display thought processes and hierarchical information.generate_network_graph: Generate anetworkgraph, used to display relationships and connections between nodes.generate_organization_chart: Generate anorganizationalchart, used to display the structure of an organization and personnel relationships.generate_path_map- Generate apath-map, used to display route planning results for POIs.generate_pie_chart: Generate apiechart, used to display the proportion of data, dividing it into parts represented by sectors showing the percentage of each part.generate_pin_map- Generate apin-map, used to show the distribution of POIs.generate_radar_chart: Generate aradarchart, used to display multi-dimensional data comprehensively, showing multiple dimensions in a radar-like format.generate_sankey_chart: Generate asankeychart, used to display data flow and volume, representing the movement of data between different nodes in a Sankey-style format.generate_scatter_chart: Generate ascatterplot, used to display the relationship between two variables, showing data points as scattered dots on a coordinate system.generate_treemap_chart: Generate atreemap, used to display hierarchical data, showing data in rectangular forms where the size of rectangles represents the value of the data.generate_venn_chart: Generate avenndiagram, used to display relationships between sets, including intersections, unions, and differences.generate_violin_chart: Generate aviolinplot, used to display the distribution of data, combining features of boxplots and density plots to provide a more detailed view of the data distribution.generate_word_cloud_chart: Generate aword-cloud, used to display the frequency of words in textual data, with font sizes indicating the frequency of each word.generate_spreadsheet: Generate aspreadsheetor pivot table for displaying tabular data. When 'rows' or 'values' fields are provided, it renders as a pivot table (cross-tabulation); otherwise, it renders as a regular table.
[!NOTE] The above geographic visualization chart generation tool uses AMap service and currently only supports map generation within China.
🤖 Usage
To use with Desktop APP, such as Claude, VSCode, Cline, Cherry Studio, Cursor, and so on, add the MCP server config below. On Mac system:
{
"mcpServers": {
"mcp-server-chart": {
"command": "npx",
"args": ["-y", "@antv/mcp-server-chart"]
}
}
}
On Window system:
{
"mcpServers": {
"mcp-server-chart": {
"command": "cmd",
"args": ["/c", "npx", "-y", "@antv/mcp-server-chart"]
}
}
}
Also, you can use it on aliyun, modelscope, glama.ai, smithery.ai or others with HTTP, SSE Protocol.
🎨 Skill Usage
If you are using an AI IDE with skill support (like Claude Code), you can use the chart-visualization skill to automatically select the best chart type and generate visualizations.
You can add the skill from https://github.com/antvis/chart-visualization-skills using:
npx skills add antvis/chart-visualization-skills
Then provide your data or describe the visualization you want. The skill will intelligently choose from 25+ chart types and generate the chart for you.
🚰 Run with SSE or Streamable transport
Run directly
Install the package globally.
npm install -g @antv/mcp-server-chart
Run the server with your preferred transport option:
# For SSE transport (default endpoint: /sse)
mcp-server-chart --transport sse
# For Streamable transport with custom endpoint
mcp-server-chart --transport streamable
Then you can access the server at:
- SSE transport:
http://localhost:1122/sse - Streamable transport:
http://localhost:1122/mcp
Docker deploy
Enter the docker directory.
cd docker
Deploy using docker-compose.
docker compose up -d
Then you can access the server at:
- SSE transport:
http://localhost:1123/sse - Streamable transport:
http://localhost:1122/mcp
🎮 CLI Options
You can also use the following CLI options when running the MCP server. Command options by run cli with -H.
MCP Server Chart CLI
Options:
--transport, -t Specify the transport protocol: "stdio", "sse", or "streamable" (default: "stdio")
--host, -h Specify the host for SSE or streamable transport (default: localhost)
--port, -p Specify the port for SSE or streamable transport (default: 1122)
--endpoint, -e Specify the endpoint for the transport:
- For SSE: default is "/sse"
- For streamable: default is "/mcp"
--help, -H Show this help message
⚙️ Environment Variables
| Variable | Description | Default | Example |
|---|---|---|---|
VIS_REQUEST_SERVER |
Custom chart generation service URL for private deployment | https://antv-studio.alipay.com/api/gpt-vis |
https://your-server.com/api/chart |
SERVICE_ID |
Service identifier for chart generation records | - | your-service-id-123 |
DISABLED_TOOLS |
Comma-separated list of tool names to disable | - | generate_fishbone_diagram,generate_mind_map |
📠 Private Deployment
MCP Server Chart provides a free chart generation service by default. For users with a need for private deployment, they can try using VIS_REQUEST_SERVER to customize their own chart generation service.
{
"mcpServers": {
"mcp-server-chart": {
"command": "npx",
"args": ["-y", "@antv/mcp-server-chart"],
"env": {
"VIS_REQUEST_SERVER": "<YOUR_VIS_REQUEST_SERVER>"
}
}
}
}
You can use AntV's project GPT-Vis-SSR to deploy an HTTP service in a private environment, and then pass the URL address through env VIS_REQUEST_SERVER.
- Method:
POST - Parameter: Which will be passed to
GPT-Vis-SSRfor rendering. Such as,{ "type": "line", "data": [{ "time": "2025-05", "value": 512 }, { "time": "2025-06", "value": 1024 }] }. - Return: The return object of HTTP service.
- success:
booleanWhether generate chart image successfully. - resultObj:
stringThe chart image url. - errorMessage:
stringWhensuccess = false, return the error message.
- success:
[!NOTE] The private deployment solution currently does not support geographic visualization chart generation include 3 tools:
geographic-district-map,geographic-path-map,geographic-pin-map.
🗺️ Generate Records
By default, users are required to save the results themselves, but we also provide a service for viewing the chart generation records, which requires users to generate a service identifier for themselves and configure it.
Use Alipay to scan and open the mini program to generate a personal service identifier (click the "My" menu below, enter the "My Services" page, click the "Generate" button, and click the "Copy" button after success):

Next, you need to add the SERVICE_ID environment variable to the MCP server configuration. For example, the configuration for Mac is as follows (for Windows systems, just add the env variable):
{
"mcpServers": {
"AntV Map": {
"command": "npx",
"args": ["-y", "@antv/mcp-server-chart"],
"env": {
"SERVICE_ID": "***********************************"
}
}
}
}
After updating the MCP Server configuration, you need to restart your AI client application and check again whether you have started and connected to the MCP Server successfully. Then you can try to generate the map again. After the generation is successful, you can go to the "My Map" page of the mini program to view your map generation records.
🎛️ Tool Filtering
You can disable specific chart generation tools using the DISABLED_TOOLS environment variable. This is useful when certain tools have compatibility issues with your MCP client or when you want to limit the available functionality.
{
"mcpServers": {
"mcp-server-chart": {
"command": "npx",
"args": ["-y", "@antv/mcp-server-chart"],
"env": {
"DISABLED_TOOLS": "generate_fishbone_diagram,generate_mind_map"
}
}
}
}
Available tool names for filtering See the ✨ Features.
🔨 Development
Install dependencies:
npm install
Build the server:
npm run build
Start the MCP server:
npm run start
Start the MCP server with SSE transport:
node build/index.js -t sse
Start the MCP server with Streamable transport:
node build/index.js -t streamable
📄 License
MIT@AntV.
Recommended MCP Servers
How it compares
AntV chart-generation MCP integration, not a hosted analytics warehouse or spreadsheet skill.
FAQ
Who is mcp-server-chart for?
mcp-server-chart is for developers using MCP agents who want AntV charts from conversational requests while building docs, demos, or simple analytics views.
When should I use mcp-server-chart?
Use it during Build when you need charts for documentation, prototypes, or internal reporting and prefer agent-driven generation over manual AntV or D3 coding.
How do I add mcp-server-chart to my agent?
Install @antv/mcp-server-chart from npm, add a stdio MCP server entry in Claude Code or Cursor, and set VIS_REQUEST_SERVER, SERVICE_ID, or DISABLED_TOOLS only if your deployment requires them.