ChartAnt
Server Details
ChartAnt is a remote MCP server that gives your AI assistant 51 tools to draw charts, diagrams and maps as real PNG images with their own link, ready for email, Slack, slides or a README.
40+ chart and diagram types: line, bar, column, pie, area, scatter, funnel, sankey, treemap, waterfall, gantt, heatmap, KPI cards, dashboards, flowcharts, mind maps, org charts and more.
Maps of every country: world maps, the states, provinces or regions of any country, and pin maps from coordinates. Region names in 20+ languages, with "did you mean" hints for names that don't match.
Charts that stay updated: sign in once and your assistant can save a chart at a fixed link. Later, say "add 10% to this month's sales" and the image at the same link updates. Copies can go to Slack, Teams, Discord or email on every change or on a schedule.
Nothing to install and no API key: paste the URL into Claude, ChatGPT, Cursor, VS Code, Windsurf or n8n.
EU-hosted. Chart data is used only to draw the image and is never logged.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 51 tools
Most dedicated chart generators target distinct visual types, but create_report, create_living_chart with type 'report', and generate_dashboard overlap in combining multiple charts into an output. generate_more_charts is a broad catch-all that overlaps with dedicated tools such as scatter/bubble, histogram/density, and violin/boxplot, even though descriptions provide some guidance.
The set overwhelmingly follows a snake_case verb_noun convention: generate_*_chart, create_*, list_*, update_*, restore_*, schedule_*, and send_*. Minor deviations include the plural vague name generate_more_charts and the multi-action manage_workspace.
At 51 tools, the surface is far beyond a typical well-scoped MCP server and is heavy even for a comprehensive charting service. Many individual chart generators could be consolidated behind a type parameter, as generate_more_charts already demonstrates for lesser-used chart types.
The server covers a broad lifecycle: chart generation, reports, living charts, updates, versions, restore, scheduling, destinations, workspaces, and geographic data cleanup. Minor gaps remain, such as no explicit delete-chart or remove-destination operation, but list_my_charts exposes attached destinations and most workflows are workable.
Available Tools
51 toolsadd_destinationAdd a place to send chartsAInspect
Add a destination for charts: 'slack', 'teams' or 'discord' (needs the channel's incoming webhook URL, which the user creates in that app), 'email' (the user's own confirmed address, no URL), or 'webhook' (any https URL; requests are signed).
Inputs: name (required), type (required), url.
create_living_chartCreate a chart that stays updatedAInspect
Save a chart, map, dashboard or report with a fixed link that always shows its latest data. Use when the user wants a chart they will update later, embed in a page, or send to Slack/email when it changes. 'chart' is the same JSON as the generate_* tools: { type, title, data, ... } (e.g. { type: 'line', data: [{ time: 'Mon', value: 3 }] }). For a report with several charts and text, send { type: 'report', title, subtitle?, blocks: [...] } with the same blocks as create_report: its fixed link is a page, with PDF and PowerPoint download links using the same report ID, and a PNG of the whole report. Returns the id and its fixed link. Needs the user's API key in the connector URL.
Inputs: name (required), chart (required), stamp.
create_reportReport from several chartsARead-onlyInspect
Put several charts, maps or KPI cards and some text into one report. Returns a link to a report page (shareable, PDF download) and a PowerPoint deck with a slide per chart. Each chart block takes the same fields as the render API, with its 'type' (e.g. column, line, pie, country-map, world-map, county-map, kpi).
Inputs: title (required), blocks (required), subtitle.
generate_area_chartGenerate Area ChartBRead-onlyInspect
Generate a area chart to show data trends under continuous independent variables and observe the overall data trend, such as, displacement = velocity (average or instantaneous) × time: s = v × t. If the x-axis is time (t) and the y-axis is velocity (v) at each moment, an area chart allows you to observe the trend of velocity over time and infer the distance traveled by the area's size.
Inputs: data (required), stack, style, theme, +7 more.
generate_bar_chartGenerate Bar ChartBRead-onlyInspect
Generate a horizontal bar chart to show data for numerical comparisons among different categories, such as, comparing categorical data and for horizontal comparisons.
Inputs: data (required), group, stack, style, +8 more.
generate_boxplot_chartGenerate Boxplot ChartBRead-onlyInspect
Generate a boxplot chart to show data for statistical summaries among different categories, such as, comparing the distribution of data points across categories.
Inputs: data (required), style, theme, title, +5 more.
generate_bullet_chartBullet chartARead-onlyInspect
Draw a bullet chart: each measure as a bar against its target marker and range, e.g. KPIs versus goals. Returns an image link.
Inputs: data (required), theme, title, width, +2 more.
generate_calendar_heatmapCalendar heatmapBRead-onlyInspect
Draw a calendar heatmap (GitHub-style contribution grid): one cell per day coloured by value. Use for daily activity over weeks or months. Returns an image link.
Inputs: data (required), theme, title, width, +2 more.
generate_candlestick_chartCandlestick chartARead-onlyInspect
Draw a candlestick (OHLC) chart of prices: open, high, low and close for each period. Returns an image link.
Inputs: data (required), theme, title, width, +2 more.
generate_column_chartGenerate Column ChartBRead-onlyInspect
Generate a column chart, which are best for comparing categorical data, such as, when values are close, column charts are preferable because our eyes are better at judging height than other visual elements like area or angles.
Inputs: data (required), group, stack, style, +8 more.
generate_country_mapCountry mapARead-onlyInspect
Draw a map of one country with its first-level regions (states, provinces, prefectures, counties, departments) coloured by a number. Works for every country. Use region names or ISO 3166-2 codes (e.g. country 'US', region 'California' or 'US-CA'; country 'India', region 'Maharashtra').
Inputs: data (required), country (required), unit, title, +5 more.
generate_county_mapUS county mapARead-onlyInspect
Draw a map of US counties coloured by a number: all of the US, or the counties of one state. Name counties with their state ("Cook, IL", "Los Angeles County, California") or use 5-digit FIPS codes ("17031"). With 'state' set, bare county names are looked up in that state. For states, use generate_country_map with country 'US'.
Inputs: data (required), unit, state, title, +5 more.
generate_dashboardDashboard imageARead-onlyInspect
Combine KPI cards, charts, maps and short notes into ONE image, in rows (1-4 rows, 1-4 panels per row, at most 8 panels). For weekly email updates, Slack posts, client reports and slides. Each panel is a chart definition with its 'type' (kpi, line, column, bar, pie, area, country-map, world-map, county-map, small-multiples, or note for a sentence of text: {type:'note', text}). Typical: a row of KPI cards, then a trend chart beside a map or a top-10 bar chart, then a note with the takeaway.
Inputs: rows (required), title, width, subtitle, +1 more.
generate_dual_axes_chartGenerate Dual Axes ChartBRead-onlyInspect
Generate a dual axes chart which is a combination chart that integrates two different chart types, typically combining a bar chart with a line chart to display both the trend and comparison of data, such as, the trend of sales and profit over time.
Inputs: series (required), categories (required), style, theme, +5 more.
generate_fishbone_diagramGenerate Fishbone DiagramARead-onlyInspect
Generate a fishbone diagram chart to uses a fish skeleton, like structure to display the causes or effects of a core problem, with the problem as the fish head and the causes/effects as the fish bones. It suits problems that can be split into multiple related factors.
Inputs: data (required), style, theme, width, +2 more.
generate_flow_diagramGenerate Flow DiagramBRead-onlyInspect
Generate a flow diagram chart to show the steps and decision points of a process or system, such as, scenarios requiring linear process presentation.
Inputs: data (required), style, theme, width, +2 more.
generate_funnel_chartGenerate Funnel ChartBRead-onlyInspect
Generate a funnel chart to visualize the progressive reduction of data as it passes through stages, such as, the conversion rates of users from visiting a website to completing a purchase.
Inputs: data (required), style, theme, title, +3 more.
generate_gantt_chartGantt chartARead-onlyInspect
Draw a Gantt chart (a project timeline): one bar per task from its start to its end date, optionally coloured by group or phase. Use for project plans, roadmaps and schedules. Returns an image link.
Inputs: data (required), theme, title, width, +2 more.
generate_gauge_chartGaugeBRead-onlyInspect
Draw a gauge (speedometer dial) for one value against a maximum, e.g. 72 of 100 or a score. Returns an image link.
Inputs: value (required), max, min, unit, +5 more.
generate_heatmap_chartHeatmapARead-onlyInspect
Draw a heatmap: a grid of cells coloured by value, with x and y categories (e.g. weekday × hour, product × region). Returns an image link.
Inputs: data (required), theme, title, width, +2 more.
generate_histogram_chartGenerate Histogram ChartBRead-onlyInspect
Generate a histogram chart to show the frequency of data points within a certain range. It can observe data distribution, such as, normal and skewed distributions, and identify data concentration areas and extreme points.
Inputs: data (required), style, theme, title, +6 more.
generate_kpi_cardKPI cardsARead-onlyInspect
Draw 1 to 4 KPI cards as one image: each a big number with its label, optional change since the last period (green when good, red when bad) and an optional sparkline of recent values. For report emails, Slack updates and dashboards in documents.
Inputs: items (required), title, brandTheme.
generate_line_chartGenerate Line ChartBRead-onlyInspect
Generate a line chart to show trends over time, such as, the ratio of Apple computer sales to Apple's profits changed from 2000 to 2016.
Inputs: data (required), style, theme, title, +6 more.
generate_liquid_chartGenerate Liquid ChartARead-onlyInspect
Generate a liquid chart to visualize a single value as a percentage, such as, the current occupancy rate of a reservoir or the completion percentage of a project.
Inputs: percent (required), shape, style, theme, +4 more.
generate_map_rankingMap with a top-10 rankingARead-onlyInspect
Draw a map (regions of one country, or countries of the world) next to a bar chart of the top places, in matching colours, as one image. Easier to read than a map alone: the bars give the exact numbers. Use region names or ISO codes as 'name'.
Inputs: data (required), top, unit, title, +2 more.
generate_mind_mapGenerate Mind MapCRead-onlyInspect
Generate a mind map chart to organizes and presents information in a hierarchical structure with branches radiating from a central topic, such as, a diagram showing the relationship between a main topic and its subtopics.
Inputs: data (required), style, theme, width, +2 more.
generate_more_chartsMore chart typesARead-onlyInspect
Draw one of these chart types and get an image link. Set type and data as below. rose (Nightingale/polar area), radial-bar: data [{category, value}]. lollipop: data [{category, value}]. dumbbell (before/after per row): data [{category, start, end}], optional startLabel, endLabel. slope (change between two points): data [{category, before, after}], optional beforeLabel, afterLabel. bubble: data [{x, y, size, label?, group?}], optional axisXTitle, axisYTitle. chord (flows between groups): data [{source, target, value}]. circle-packing: data [{name, value, group?}]. parallel-coordinates (compare items on several measures): data [{name, : number, ...}], at least two numeric measures. tree (hierarchy): data {name, children: [{name, children: [...]}]}. population-pyramid: data [{age, group, value}] with exactly two groups (e.g. Men, Women). marimekko (100% stacked with variable widths): data [{category, group, value}]. sunburst (hierarchy as rings), icicle (hierarchy as bands): data {name, children: [{name, value} or {name, children}]}; innermost items need a value. beeswarm (every value as a dot, no overlap): data [{value, group?, label?}], optional axisXTitle. density (smoothed distribution curves): data [{value, group?}], at least 3 values, optional axisXTitle.
Inputs: data (required), type (required), theme, title, +9 more.
generate_network_graphGenerate Network GraphBRead-onlyInspect
Generate a network graph chart to show relationships (edges) between entities (nodes), such as, relationships between people in social networks.
Inputs: data (required), style, theme, width, +2 more.
generate_organization_chartGenerate Organization ChartBRead-onlyInspect
Generate an organization chart to visualize the hierarchical structure of an organization, such as, a diagram showing the relationship between a CEO and their direct reports.
Inputs: data (required), style, theme, width, +3 more.
generate_pie_chartGenerate Pie ChartBRead-onlyInspect
Generate a pie chart to show the proportion of parts, such as, market share and budget allocation.
Inputs: data (required), style, theme, title, +5 more.
generate_pin_mapPin mapARead-onlyInspect
Draw a map with labelled dots at given latitude/longitude anywhere in the world (offices, stores, customers, events). Optional 'value' sizes the dots. The map zooms to the points automatically.
Inputs: data (required), unit, title, width, +3 more.
generate_radar_chartGenerate Radar ChartARead-onlyInspect
Generate a radar chart to display multidimensional data (four dimensions or more), such as, evaluate Huawei and Apple phones in terms of five dimensions: ease of use, functionality, camera, benchmark scores, and battery life.
Inputs: data (required), style, theme, title, +3 more.
generate_sankey_chartGenerate Sankey ChartBRead-onlyInspect
Generate a sankey chart to visualize the flow of data between different stages or categories, such as, the user journey from landing on a page to completing a purchase.
Inputs: data (required), style, theme, title, +4 more.
generate_scatter_chartGenerate Scatter ChartBRead-onlyInspect
Generate a scatter chart to show the relationship between two variables, helps discover their relationship or trends, such as, the strength of correlation, data distribution patterns.
Inputs: data (required), style, theme, title, +5 more.
generate_small_multiplesSmall multiplesARead-onlyInspect
Draw the same small chart once per group (country, product, team) in a grid, all on one shared scale, so the groups can be compared at a glance. Rows are {group, x, value}, e.g. {group:'France', x:'Jan', value:120}. Up to 24 groups.
Inputs: data (required), unit, chart, title, +2 more.
generate_spreadsheetGenerate SpreadsheetARead-onlyInspect
Generate a spreadsheet or 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. Useful for displaying structured data, comparing values across categories, and creating data summaries.
Inputs: data (required), rows, theme, width, +4 more.
generate_treemap_chartGenerate Treemap ChartBRead-onlyInspect
Generate a treemap chart to display hierarchical data and can intuitively show comparisons between items at the same level, such as, show disk space usage with treemap.
Inputs: data (required), style, theme, title, +3 more.
generate_venn_chartGenerate Venn ChartARead-onlyInspect
Generate a Venn diagram to visualize the relationships between different sets, showing how they intersect and overlap, such as the commonalities and differences between various groups.
Inputs: data (required), style, theme, title, +3 more.
generate_violin_chartGenerate Violin ChartARead-onlyInspect
Generate a violin chart to show data for statistical summaries among different categories, such as, comparing the distribution of data points across categories.
Inputs: data (required), style, theme, title, +5 more.
generate_waterfall_chartGenerate Waterfall ChartBRead-onlyInspect
Generate a waterfall chart to visualize the cumulative effect of sequentially introduced positive or negative values, such as showing how an initial value is affected by a series of intermediate positive or negative values leading to a final result. Waterfall charts are ideal for financial analysis, budget tracking, profit and loss statements, and understanding the composition of changes over time or categories.
Inputs: data (required), style, theme, title, +5 more.
generate_word_cloud_chartGenerate Word Cloud ChartARead-onlyInspect
Generate a word cloud chart to show word frequency or weight through text size variation, such as, analyzing common words in social media, reviews, or feedback.
Inputs: data (required), style, theme, title, +3 more.
generate_world_mapWorld mapARead-onlyInspect
Draw a world map colouring countries by a number (sales, population, users, visitors by country). Use country names in any common language or ISO 3166 codes (e.g. 'Japan', 'JP', 'JPN'). Unmatched names are listed in the result.
Inputs: data (required), unit, title, width, +4 more.
list_chart_versionsList chart historyCRead-onlyInspect
List saved versions of an owned living chart.
Inputs: id (required).
list_my_chartsList my charts and destinationsARead-onlyInspect
List the user's charts that stay updated (id, name, link) and their destinations (Slack, Teams, Discord, email, webhook).
Inputs: no named parameters.
locate_pointsFind the region of each pointARead-onlyInspect
For each latitude/longitude, find the country, its state/province/region (ISO 3166-2) and, in the US, the county (FIPS). Works offline. With map set, also draws a map of how many points fall in each area (regions of the main country, US counties, or countries).
Inputs: points (required), map, title.
manage_workspaceManage workspaceCDestructiveInspect
List the team, invite/remove a member (owner only), or list/create/delete read-only client pages. All charts must belong to this workspace.
Inputs: operation (required), args.
match_placesClean up place namesARead-onlyInspect
Turn messy place names into standard names and codes: countries (ISO 3166 codes), the states/provinces/regions of one country (ISO 3166-2 codes) or US counties (FIPS codes). Understands other languages, abbreviations and typos ("Bayern", "BY", "Bavarai" → Bavaria, DE-BY). Use it to clean a column of locations before a map, a join or a report.
Inputs: names (required), level, state, country.
restore_chart_versionRestore chart versionCInspect
Restore a saved version and send it to connected destinations.
Inputs: id (required), version (required).
schedule_chartSchedule chart deliveryBInspect
Send an owned living chart to a destination daily or weekly, including every Monday. Times are UTC.
Inputs: id (required), frequency (required), destination_id (required), hour, +2 more.
send_chart_on_updateSend a chart whenever it changesAInspect
Send a chart (from create_living_chart) to a destination (from add_destination) every time its data changes, and optionally once right now.
Inputs: chart_id (required), destination_id (required), send_now.
update_living_chartUpdate a chart's dataAIdempotentInspect
Replace the data (or the whole chart) of a chart made with create_living_chart. Its link stays the same, pages showing it update, and destinations attached to it get a fresh copy. Unchanged data does nothing. For a report, send the whole report (title and blocks) as chart.
Inputs: id (required), data, name, chart, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Charts and tables for AI agents with live-updating embed links. No account: signup returns a key.
Renders interactive Chart.js charts and dashboards inline in AI conversations.
Charts and dashboards as images for AI agents. No browser, same data same bytes. Local and free.
ChartGaze is a service that connects AI assistants to live and historical market data and, with your authorization, to trading-account information and trading actions. It works with MCP-compatible AI tools and supports platforms such as MT5, MT4, cTrader, and crypto exchanges.
Related MCP Servers
- AlicenseAqualityCmaintenanceTableCharts MCP Server gives any LLM assistant the ability to instantly convert tabular data into beautiful, hosted, interactive dashboards. Simply provide JSON rows, raw CSV text, or a public URL (Notion page, Google Sheet, or Salesforce report), and get back a shareable dashboard URL plus an embeddable iframe code — all in one tool call. Supports 6 chart types: bar, line, area, pie, scatter, a29 npmMIT
- AlicenseAqualityBmaintenanceYour coding agent answers with dashboards, not paragraphs. An MCP server for Claude Code, Codex, Cursor, Gemini CLI and more: charts and tables from read-only SQL on Postgres, SQLite, Excel or CSV, in your browser, your app or a terminal pane. 2.7× cheaper than Claude Code making the charts itself.87MIT
- AlicenseBqualityDmaintenanceMCP server for Claude, ChatGPT, coding agents (cursor, claude code etc), windsurf, etc— generate visual AI automation workflows. Describe a business process, get an interactive flow map you can edit and share.178 npmMIT

image-charts-mcpofficial
AlicenseAqualityDmaintenanceAn MCP server that turns chart requests into permanent, hosted Image-Charts URLs, enabling agents to generate charts that render anywhere without client-side libraries.38 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.