ChartOne MCP
Render themed charts as hosted URLs from any AI agent. Embed in markdown READMEs, emails, Slack, and docs — no copy-pasting screenshots.
Quick Start
Add ChartOne to your editor's MCP config. No build step required — npx handles installation automatically.
{
"mcpServers": {
"chartone": {
"command": "npx",
"args": ["-y", "@chartone/mcp"],
"env": {
"CHARTONE_API_KEY": "your-api-key"
}
}
}
}No API key yet? Request one or use anonymous mode (charts are watermarked, 7-day URLs).
Editor Setup
Edit ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"chartone": {
"command": "npx",
"args": ["-y", "@chartone/mcp"],
"env": {
"CHARTONE_API_KEY": "your-api-key"
}
}
}
}Tools
render_chart
Render a chart from explicit type, data, and theme. Returns an inline image and a persistent hosted URL.
| Parameter | Type | Required | Description |
|---|---|---|---|
| type | string | required | Chart type. One of: line, bar, horizontalBar, area, pie, doughnut, gauge, scatter, bubble, radar, funnel, stackedBar, groupedBar, multiLine. |
| data | object | required | Chart data with labels (string[]) and datasets (array of { label, data }). |
| theme | string | optional | Visual theme. Default: modern. Free themes: modern, minimal. Paid: dark, vibrant, monochrome, pastel, corporate. |
| title | string | optional | Chart title rendered above the chart. |
| width | number | optional | Width in pixels. Default: 800. Range: 100–4000. |
| height | number | optional | Height in pixels. Default: 400. Range: 100–4000. |
| format | string | optional | Output format: png (default), jpeg, or svg. |
suggest_chart
Describe your data and intent in plain language. ChartOne's AI picks the best chart type and theme, renders it, and returns the image + URL + rationale.
| Parameter | Type | Required | Description |
|---|---|---|---|
| data | object | required | Chart data with labels and datasets. |
| user_intent | string | required | Plain-language description of what you want to show, e.g. "show quarterly revenue trend". |
| width | number | optional | Width in pixels. Default: 800. |
| height | number | optional | Height in pixels. Default: 400. |
| format | string | optional | Output format: png, jpeg, or svg. |
Anonymous vs API Key
- No setup required
- 20 renders/day
- modern + minimal themes
- Watermarked charts
- 7-day hosted URLs
{
"mcpServers": {
"chartone": {
"command": "npx",
"args": ["-y", "@chartone/mcp"]
}
}
}Example Prompts
README chart
Add a bar chart of our benchmark results (model A: 94ms, model B: 210ms, model C: 87ms) to the README using render_chart.
Board email
Render a bar chart of Q1=$10k, Q2=$15k, Q3=$13k, Q4=$22k revenue using render_chart with theme modern, then write a one-paragraph board email with the chart URL embedded.
Auto-pick chart type
Use suggest_chart to visualize this sales funnel data: Visitors=5000, Leads=1200, Trials=340, Paid=87.
Slack message
Make a line chart of our weekly active users for the past 6 weeks: 120, 145, 139, 162, 180, 197. Give me the hosted URL to paste into Slack.
Themes
Pass the theme name as the theme parameter in render_chart.
moderndarkminimalvibrantmonochromepastelcorporate