by antvis
Offers over 25 AntV chart types for automated chart generation and data analysis, callable via MCP tools, CLI, HTTP, SSE, or streamable transports.
Provides a Model Context Protocol (MCP) server that generates a wide range of visual charts—more than 25 types—using AntV libraries. It enables AI‑augmented applications, desktop assistants, and custom workflows to request chart images or data visualizations without manual coding.
{
"mcpServers": {
"mcp-server-chart": {
"command": "npx",
"args": ["-y", "@antv/mcp-server-chart"]
}
}
}
On Windows replace the command with cmd
and include "/c"
before npx
.
npm install -g @antv/mcp-server-chart
) run:
mcp-server-chart --transport sse
(default endpoint /sse
)mcp-server-chart --transport streamable
(default endpoint /mcp
)--port
and --endpoint
.cd docker && docker compose up -d
then access the same endpoints on the mapped ports.http://localhost:<port>/<endpoint>
; the server responds with chart URLs or image data.VIS_REQUEST_SERVER
), record keeping (SERVICE_ID
), or disable specific tools (DISABLED_TOOLS
).DISABLED_TOOLS
to hide unsupported or unwanted chart generators.VIS_REQUEST_SERVER
to point to a self‑hosted GPT‑Vis‑SSR service.SERVICE_ID
for centralized chart history viewing.Q: Do I need Node.js installed? A: Yes, Node.js (v14+) is required for the npm package and CLI.
Q: Which transport should I choose?
A: Use SSE for simple streaming over HTTP; choose streamable
for binary‑compatible MCP clients. The default stdio
works for local testing.
Q: How do I disable a specific chart tool?
A: Set the DISABLED_TOOLS
environment variable with a comma‑separated list, e.g., DISABLED_TOOLS=generate_fishbone_diagram,generate_mind_map
.
Q: Can I run the server without the public AntV service?
A: Yes, point VIS_REQUEST_SERVER
to your own GPT‑Vis‑SSR endpoint for private deployment.
Q: Are geographic charts available outside China? A: No, the three map‑related tools rely on AMap and are limited to Chinese regions.
Q: How are chart generation records stored?
A: Provide a SERVICE_ID
(generated via the AntV mini‑program) and the server will forward records to AntV’s record service for later viewing.
Q: What ports are used by default?
A: Port 1122
for SSE/streamable transports; Docker composes expose 1123
for SSE and 1122
for streamable.
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.
Now 25+ charts supported.
generate_area_chart
: Generate an area
chart, used to display the trend of data under a continuous independent variable, allowing observation of overall data trends.generate_bar_chart
: Generate a bar
chart, used to compare values across different categories, suitable for horizontal comparisons.generate_boxplot_chart
: Generate a boxplot
, used to display the distribution of data, including the median, quartiles, and outliers.generate_column_chart
: Generate a column
chart, used to compare values across different categories, suitable for vertical comparisons.generate_district_map
- Generate a district-map
, used to show administrative divisions and data distribution.generate_dual_axes_chart
: Generate a dual-axes
chart, used to display the relationship between two variables with different units or ranges.generate_fishbone_diagram
: Generate a fishbone
diagram, also known as an Ishikawa diagram, used to identify and display the root causes of a problem.generate_flow_diagram
: Generate a flowchart
, used to display the steps and sequence of a process.generate_funnel_chart
: Generate a funnel
chart, used to display data loss at different stages.generate_histogram_chart
: Generate a histogram
, 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 a line
chart, used to display the trend of data over time or another continuous variable.generate_liquid_chart
: Generate a liquid
chart, used to display the proportion of data, visually representing percentages in the form of water-filled spheres.generate_mind_map
: Generate a mind-map
, used to display thought processes and hierarchical information.generate_network_graph
: Generate a network
graph, used to display relationships and connections between nodes.generate_organization_chart
: Generate an organizational
chart, used to display the structure of an organization and personnel relationships.generate_path_map
- Generate a path-map
, used to display route planning results for POIs.generate_pie_chart
: Generate a pie
chart, used to display the proportion of data, dividing it into parts represented by sectors showing the percentage of each part.generate_pin_map
- Generate a pin-map
, used to show the distribution of POIs.generate_radar_chart
: Generate a radar
chart, used to display multi-dimensional data comprehensively, showing multiple dimensions in a radar-like format.generate_sankey_chart
: Generate a sankey
chart, used to display data flow and volume, representing the movement of data between different nodes in a Sankey-style format.generate_scatter_chart
: Generate a scatter
plot, used to display the relationship between two variables, showing data points as scattered dots on a coordinate system.generate_treemap_chart
: Generate a treemap
, 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 a venn
diagram, used to display relationships between sets, including intersections, unions, and differences.generate_violin_chart
: Generate a violin
plot, 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 a word-cloud
, used to display the frequency of words in textual data, with font sizes indicating the frequency of each word.[!NOTE] The above geographic visualization chart generation tool uses AMap service and currently only supports map generation within China.
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.
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:
http://localhost:1122/sse
http://localhost:1122/mcp
Enter the docker directory.
cd docker
Deploy using docker-compose.
docker compose up -d
Then you can access the server at:
http://localhost:1123/sse
http://localhost:1122/mcp
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")
--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
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 |
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
.
POST
GPT-Vis-SSR
for rendering. Such as, { "type": "line", "data": [{ "time": "2025-05", "value": 512 }, { "time": "2025-06", "value": 1024 }] }
.boolean
Whether generate chart image successfully.string
The chart image url.string
When success = false
, return the error message.[!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
.
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.
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.
Install dependencies:
npm install
Build the server:
npm run build
Start the MCP server:
npm run start
MIT@AntV.
Please log in to share your review and rating for this MCP.
{ "mcpServers": { "mcp-server-chart": { "command": "npx", "args": [ "-y", "@antv/mcp-server-chart" ] } } }
Explore related MCPs that share similar capabilities and solve comparable challenges
by reading-plus-ai
A versatile tool that enables interactive data exploration through prompts, CSV loading, and script execution.
by Canner
Provides a semantic engine that lets MCP clients and AI agents query enterprise data with contextual understanding, precise calculations, and built‑in governance.
by surendranb
Provides natural‑language access to Google Analytics 4 data via MCP, exposing over 200 dimensions and metrics for Claude, Cursor and other compatible clients.
by ergut
Provides secure, read‑only access to BigQuery datasets, allowing large language models to query and analyze data through a standardized interface.
by isaacwasserman
Provides an interface for LLMs to visualize data using Vega‑Lite syntax, supporting saving of data tables and rendering visualizations as either a full Vega‑Lite specification (text) or a base64‑encoded PNG image.
by vantage-sh
Fetch and explore cloud cost and usage data from a Vantage account using natural language through AI assistants and MCP clients.
by acryldata
Provides a Model Context Protocol server that enables searching, metadata retrieval, lineage traversal, and SQL query listing for DataHub entities.
by rishijatia
Provides programmatic access to Fantasy Premier League statistics, team information, gameweeks, and analysis tools via a Model Context Protocol server.
by gomarble-ai
Provides seamless integration of the Google Ads API with Model Context Protocol clients, handling OAuth 2.0 authentication, automatic token refresh, GAQL query execution, account management, and keyword‑research capabilities.