If you're an AI reading this: skill.md has everything you need.Read it →
Explorer/MCP/chartoutput/chart-output
REMOTE

chart-output

chartoutput/chart-output

Render Chart.js configs to PNG, SVG, WebP, and PDF images from any AI agent. No browser required.

7 tools available
The Journeyman
A reasonable amount of history and nothing concerning in the scan.
Time indexed (2mo)
7toolsRemote/ HTTP2moindexed
100% uptime · 307ms avgChecked Aug 15, 2026
Quality Score
43/95
Established
Risk Score
0/100
Clean
How is this calculated?
Quality Breakdown
Tenure11.5/20
66 days indexed
Capability16.6/25
Tools: 4.6/13 (7 tools)
Description: 5/5
Endpoint: 7/7
Adoption4.6/25
Use count: 4.6/20 (13 uses)
Multi-registry: 0/5 (1 registry)
Reliability10/25
Currently live: 10/10
Uptime history: 0/15 No checks yet
Security scan: 0 pts in v1.0; ready to weight when coverage improves
Risk
0Clean
No signals detected.
The scanner shows
7 tools. Nothing caught our attention.
First indexed Jun 11, 2026
Server Profile
Tools catalogued
7
7 tools available. Full list below.
Hosting
Remote / HTTP
Runs on the internet. No access to your filesystem, SSH keys, or environment variables.
Registry presence
Not verified
Not yet verified by the Official MCP Registry.
Liveness
100%
Based on 48 checks. Average response: 307ms.
Publisher Verification
Not yet verified by the Official MCP Registry.
Endpoint
https://chart-output--chartoutput.run.tools
Tools (7)
list_chart_output_examples
Return the ids of all built-in chart/card JSON specs shipped with this MCP package. Use this tool when: you are about to call render_card and are unsure of the spec shape; you have received a 400 error from render_card; you want to browse available example layouts before choosing one. Do NOT skip this step when building full card compositions — guessing field names causes 400 errors. Returns: a plain-text list of example ids (one per line). Pass any id to get_chart_example to retrieve the full, API-ready JSON body. Example invocation: list_chart_output_examples() → ["mrr-breakdown", "weekly-sales-by-plan", ...]
get_chart_example
Return the complete JSON body for a named built-in example spec — identical to examples/<id>.json on disk. Use this tool when: you need a valid API body to start from before calling render_card; render_card returned HTTP 400; you want to verify the exact field names for header, kpiStrip, footer, data, options, or theme. Do NOT hand-author a full card spec from memory — always start from this example and edit values only. Returns: the full JSON text of the example, ready to pass as the `spec` argument to render_card. Field structure must be preserved; only values should change. Errors: throws if the id is not found — call list_chart_output_examples first to see valid ids. Example invocation: get_chart_example({ example: "mrr-breakdown" }) → { type: "bar", data: {...}, header: {...}, ... }
render_chart
Render a Chart.js-style chart from structured labels and datasets and return it as an inline base64-encoded image. Use this tool when: you have pre-structured numeric data with explicit labels and datasets; you want a simple chart (line, bar, pie, doughnut, radar, polarArea) returned directly as an image in chat; you want to optionally add Chart-Output dashboard extras (dark background, KPI strip, header, footer) via the extensions field without building a full card spec by hand. Do NOT use this tool when: you need a stable URL to embed in HTML or email → use render_chart_url instead; you have raw or natural-language data without structured labels/datasets → use render_chart_ai instead; you need a full branded card with header, footer, KPI strip, and theme → use render_card instead. Behavior: this tool makes a remote API call to Chart-Output and may consume render credits. Returns: an inline base64 image at the requested dimensions and format, plus a confirmation text string showing actual width×height and format. The image content-type matches the format parameter (image/png by default). Errors: 401 — CHART_OUTPUT_API_KEY is missing or invalid; set the key in the MCP server env and retry. 400 — malformed spec, most often a mismatch between labels length and datasets[].data length, or an unsupported field value. 429 — rate-limited; retry with exponential backoff and honor Retry-After if present. Network error — chart-output.com is unreachable or timed out. Example: render_chart({ type: "bar", labels: ["Q1","Q2","Q3","Q4"], datasets: [{ label: "Revenue", data: [12000, 15000, 18000, 22000], backgroundColor: "#4F81BD" }], title: "2024 Revenue", width: 800, height: 400 })
render_chart_url
Render a Chart.js-style chart from structured labels and datasets and return a stable CDN URL string instead of image bytes. Use this tool when: you need to embed a chart in an HTML page, markdown document, or email via an <img> src attribute; you need to pass a chart URL to another tool or API; you want to avoid sending large base64 image blobs in the conversation. Do NOT use this tool when: you want the image displayed inline in chat → use render_chart instead; you have raw or natural-language data → use render_chart_ai instead; you need a full branded card → use render_card instead. Behavior: this tool makes a remote API call to Chart-Output, may consume render credits, and returns a publicly accessible CDN URL. Returns: a plain text string containing a single HTTPS CDN URL pointing to the rendered chart image (e.g. "https://cdn.chart-output.com/..."). The URL is publicly accessible and stable for the lifetime of the render. Errors: 401 — CHART_OUTPUT_API_KEY is missing or invalid; set the key in the MCP server env. 400 — malformed spec, most often a labels/data length mismatch or unsupported field value. 429 — rate-limited; retry with exponential backoff and honor Retry-After if present. Network error — chart-output.com is unreachable or timed out. Example: render_chart_url({ type: "line", labels: ["Jan","Feb","Mar"], datasets: [{ label: "MAU", data: [12000, 18000, 24000] }], title: "Monthly Active Users" }) → "https://cdn.chart-output.com/abc123.png"
render_card
Render a full branded card composition — header, KPI strip, chart, and footer — and return it as an inline base64-encoded image. Use this tool when: you need a production-grade dashboard layout with a header (title, subtitle, badge), KPI metric row, themed background, footer, or brand kit; you want to send the full /api/v1/render JSON body verbatim to Chart-Output. Do NOT use this tool when: you only need a simple chart without branding → use render_chart instead; you need a URL rather than inline bytes → use render_card_url for full branded cards or render_chart_url for simple charts; you have natural-language data → use render_chart_ai instead. Behavior: this tool makes a remote API call to Chart-Output and may consume render credits. IMPORTANT — always start from an example spec: call get_chart_example("mrr-breakdown") (or list_chart_output_examples to browse all ids) and modify values only. Do NOT hand-author the full spec from memory; incorrect field names cause HTTP 400. Returns: an inline base64 image at the format and dimensions defined in the spec, plus a confirmation text string with dimensions and format. Errors: 400 — malformed or missing required spec fields; the server will auto-retry once after normalizing common structural issues (root labels/datasets → data object). 401 — API key missing or invalid. 429 — rate-limited; retry with exponential backoff and honor Retry-After if present. returnUrl in spec — not allowed; render_card returns inline images only; omit returnUrl from the spec. Limitations: does not support returnUrl; inline image only. For the full field reference see https://www.chart-output.com/docs/card-composition. Example: render_card({ spec: { ...get_chart_example("mrr-breakdown"), header: { title: "Q1 Report" } } })
render_card_url
Render a full branded card composition — header, KPI strip, chart, and footer — and return a stable CDN URL string instead of image bytes. Use this tool when: you need an openable, shareable, or downloadable URL for a production-grade dashboard layout with a header, KPI metric row, themed background, footer, or brand kit; you want to send the full /api/v1/render JSON body verbatim to Chart-Output. Do NOT use this tool when: you want the image displayed inline in chat → use render_card instead; you only need a simple Chart.js labels/datasets chart → use render_chart_url instead; you have natural-language data → use render_chart_ai instead. Behavior: this tool makes a remote API call to Chart-Output, may consume render credits, and returns a publicly accessible CDN URL. IMPORTANT — always start from an example spec: call get_chart_example("mrr-breakdown") (or list_chart_output_examples to browse all ids) and modify values only. Do NOT hand-author the full spec from memory; incorrect field names cause HTTP 400. Returns: a plain text string containing a single HTTPS CDN URL pointing to the rendered full card image. The URL is publicly accessible and stable for the lifetime of the render. Errors: 400 — malformed or missing required spec fields; the server will auto-retry once after normalizing common structural issues (root labels/datasets → data object). 401 — API key missing or invalid. 429 — rate-limited; retry with exponential backoff and honor Retry-After if present. Example: render_card_url({ spec: { ...get_chart_example("mrr-breakdown"), header: { title: "Q1 Report" } } }) → "https://cdn.chart-output.com/abc123.png"
Show all 7 tools ↓
render_chart_ai
Generate a chart from a natural language description and optional raw data, and return it as an inline base64-encoded image. Chart-Output's AI layer selects the chart type, builds the spec, and renders automatically. Use this tool when: you have natural-language data or a plain description without pre-structured labels/datasets; you want Chart-Output to pick the best chart type automatically; you have raw tabular data (JSON array or CSV) and want a chart without manually extracting labels and datasets. Do NOT use this tool when: you already have structured labels and datasets → use render_chart or render_chart_url instead; you need SVG output → SVG is not supported by this tool; you need custom Chart.js options or extensions → use render_chart with extensions instead. Behavior: this tool makes a remote API call to Chart-Output's AI endpoint and may consume render credits. Returns: an inline base64 image. The response text reports the AI-selected chart type and generation time in milliseconds. Errors: 401 — CHART_OUTPUT_API_KEY is missing or invalid. 403 — the API key is a Free-tier key; this tool requires a Pro or Business key (upgrade at chart-output.com/pricing). 400 — description is empty or data is malformed. 429 — rate-limited; retry with exponential backoff and honor Retry-After if present. Limitations: SVG format is not supported (use png, jpeg, or webp). Custom Chart.js options, extensions, headers, and KPI strips are not available — use render_chart or render_card for those. Requires a Pro or Business API key. Example: render_chart_ai({ description: "Monthly revenue for 2024 as a green bar chart, growing from 12k in Jan to 28k in Dec", width: 800, height: 400 })

Is this your server?

Create a free RNWY account to connect your on-chain identity to this server. MCP server claiming is coming; register now and you'll be first in line.

Create your account →
Similar servers
keycloak-source-mcp
An MCP server that enables AI assistants to navigate, search, and analyze local Keycloak source code to support developer customizations like SPIs and authenticators. It provides tools for searching classes, generating boilerplate code, detecting breaking changes between versions, and tracing dependencies.
MCP Web Research Server
The MCP Web Research Server enables real-time web research with Claude by integrating Google search, capturing webpage content and screenshots, and tracking research sessions.
JS Reverse MCP
An MCP server for JavaScript reverse engineering that enables AI to perform browser debugging, script analysis, and automated hook injection. It streamlines complex workflows like deobfuscation, network tracing, and risk assessment through direct browser integration.
Memory Store MCP Server
A lightweight, stateless MCP server utilizing Puppeteer for web searches, returning structured JSON results, easily integratable with other MCP-enabled systems.
devdoc
A documentation MCP server that crawls websites and Git repositories, stores them as Markdown, and provides tools to search and retrieve documentation for local LLMs and AI agents.
BerryRAG
A local vector database RAG system that integrates with Playwright MCP for web scraping, enabling users to build searchable knowledge bases from web content with multiple embedding providers and Claude-optimized context formatting.
Indexed from Smithery · Updates nightlyView on Smithery →