Microcharts logo

Microcharts

by ganapativs

Find, configure, and render 106 word-sized chart types as self-contained SVG with generated alt text.

Install Microcharts

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "ganapativs-microcharts": {
      "command": "npx",
      "args": [
        "-y",
        "@microcharts/mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Automated check passed— started and listed 3 tools correctly (14d ago).

Overview

ganapativs/microcharts provides MCP tools for selecting, configuring, and rendering word-sized charts from the microcharts library. It ranks chart types for a natural-language question, returns wiring details and sample props, then produces validated SVG with generated alt text. The local stdio server runs through npx and returns self-contained output suitable for chat surfaces that cannot run React. Reach for it when an agent needs compact sparklines, bars, bullets, or other microcharts without sending data to a hosted service.

Use cases

  • Find a chart type from a plain-language analytical question
  • Render compact trends in chat interfaces without React
  • Generate accessible SVG charts with descriptive summaries
  • Inspect chart props and samples before wiring a visualization
  • Embed microcharts in Vercel AI SDK workflows

Key features

  • Catalog of 106 word-sized chart types
  • Natural-language chart discovery
  • Chart wiring details and JSON samples
  • Validated SVG rendering with generated alt text
  • Embedded-style and bare SVG output modes
  • MCP resources for catalog and agent setup

Tools3

What Microcharts lets your agent do. Expand a tool for its parameters.

Verified live~504 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

23/24 checks healthy over the last 88d

What it can do

From the 3 tools this server returned when we ran it.

Read-only tools · 3
Network at startup3 connections
Files written at startupNone
Install scriptsNone
npm provenanceSigned build
Package age90 days
Maintainers1

Observed 2026-10-23 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 2d ago via OSV.dev · @microcharts/mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars206Stargazers on the source repository.
npm downloads355Package downloads in the last 30 days.
Last commit1d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed3Callable tools this server registers over MCP.
Directory activity6 viewsConfig copies, upvotes, and views on AllMCPs.

How Microcharts works

What ganapativs/microcharts does

ganapativs/microcharts connects an MCP client to the microcharts library and exposes a workflow for choosing and producing compact charts. The catalog contains 106 word-sized chart types, including sparklines, bars, bullets, dot plots, and OHLC charts. The server renders the selected chart to SVG and includes generated descriptive text through the result's summary field.

Its local design keeps execution on the user's machine. The package runs as a stdio server distributed through npm; it does not require an account or API key, and chart data is not sent to a hosted service. Because the rendered SVG includes its styles by default, the result can be placed into a chat or other surface without a React runtime.

How it works

The three main tools support a staged workflow:

  • find_microchart(question, dataShape?) ranks chart types against a plain-language question and optionally considers the shape of the available data.
  • get_microchart(slug) returns the selected chart's import path, chart-specific and shared props, expected data shape, usage guidance, runnable example, and JSON sample props.
  • render_microchart(type, data?, props?, format?) turns the chart type, series data, and additional properties into a finished SVG.

Chart inputs are deliberately type-aware. A sparkline can take a number[], while a dot plot expects objects shaped like { label, value }; an OHLC chart expects { open, high, low, close } records. Chart-specific values such as value and target, along with shared settings such as curve, color, and width, belong in props.

Rendering returns the SVG, a generated summary, the image/svg+xml MIME type, and dimensions. The default svg format embeds styles. The optional bare format omits CSS for pages that already load @microcharts/react/styles.css.

Setup and configuration

Install the server in an MCP client with the npm package command:

config.json
{
  "mcpServers": {
    "microcharts": {
      "command": "npx",
      "args": ["-y", "@microcharts/mcp"]
    }
  }
}

Claude Desktop uses claude_desktop_config.json, while Cursor uses .cursor/mcp.json. The client starts the process over stdio when needed. The same capabilities are also available as Vercel AI SDK tools from @microcharts/mcp/ai-sdk; the package exports microchartsTools and the underlying findChart, getChart, and renderChart functions.

Tools and capabilities

Two MCP resources complement the tools: microcharts://catalog provides chart metadata, and microcharts://agent-setup provides a prompt for integrating microcharts into a codebase. The catalog resource also identifies the library version associated with the bundled snapshot.

The package includes its compatible @microcharts/react dependency and maintains its own package version as the server changes. get_microchart is useful for agents that need an exact import and a render-ready sample before producing a chart.

Limitations and notes

The server rejects missing or incorrectly shaped data before passing it to React, returning an error that names the chart and expected data shape. Oversized payloads are also refused because the output is intended to remain a compact, word-sized chart. Rendering is focused on SVG output; the bare option assumes the consuming page is responsible for loading the chart stylesheet.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Microcharts

ganapativs/microcharts is an MCP server that connects AI clients to the microcharts library through stdio. Its main tools find charts for natural-language questions, return wiring and samples for selected chart types, and render validated data as self-contained SVG with generated alt text. It supports 106 word-sized chart types.

Install it by configuring an MCP client to run `npx -y @microcharts/mcp`. Add that command and argument under a `microcharts` server entry; Claude Desktop uses `claude_desktop_config.json`, and Cursor uses `.cursor/mcp.json`.

Yes, ganapativs/microcharts works with Cursor through its standard stdio configuration. Add the `microcharts` entry to `.cursor/mcp.json` with `npx` as the command and `-y @microcharts/mcp` as the arguments.

Call `render_microchart` with a chart type and correctly shaped data, placing additional chart properties in `props`. Use `get_microchart` first to obtain the expected data shape and a ready-to-render sample, then choose `svg` or `bare` output.

Yes, the package exports `microchartsTools` from `@microcharts/mcp/ai-sdk`. You can pass those tools to Vercel AI SDK functions such as `streamText`, or call the exported `findChart`, `getChart`, and `renderChart` functions directly.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMicrocharts AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/ganapativs-microcharts?style=directory)](https://allmcps.com/mcp/ganapativs-microcharts)
HTML Embed
<a href="https://allmcps.com/mcp/ganapativs-microcharts"><img src="https://allmcps.com/api/badge/ganapativs-microcharts?style=directory" alt="Microcharts on AllMCPs" /></a>