SlickFast
SlickFast
A deterministic render engine. Spec in, same bytes out. Forever. Charts, boards, and whole Pages. No headless browser.
↑ Engine output — one JSON spec, one image. Get this exact board on your README with the dashboard template (teal-hero layout).
Local MCP is free forever. A public URL is a plan (free key is enough to learn).
The spec is the chart. A pagespec is a Page. Add .json — that’s the twin.
The hash is on the page. Don’t trust us. Check the math.
npm (MCP):
@slickfast/mcp@0.7.37Website: slickfast.com
Get started / News: slickfast.com/start · slickfast.com/news
Bugs: GitHub Issues · feedback@slickfast.com
This project's pulse — a LIVE chart, right here in the README
The dashboard below is not a screenshot. It's a SlickFast live chart: a permanent image URL whose numbers update on their own. A scheduled job pushes fresh stats; every visitor sees current data. Live Charts — embed once, update forever.
Related MCP server: Chart-Output MCP Server
The range — two boards, two renders
A seller ops board (funnel, bullet graph, goal ring, gauge, calendar heatmap, leaderboard — demo data):

And the board that explains the engine — it times its own render into its title:

Prove it yourself
Don't take the speed or determinism claims on faith — run the benchmark on your own machine:
git clone https://github.com/SlickFast/slickfast && cd slickfast
node scripts/bench.mjsIt renders all 47 chart types, times each, runs a 10,000-chart throughput burst, and double-renders everything to verify byte-identical output. On an M1 Max: median 15µs per chart, ~140,000 renders/sec, 47/47 deterministic. Your numbers are your numbers.
Quick start (MCP)
One-click:
Add to your MCP client config (Claude Code, Claude Desktop, Cursor, …):
{
"mcpServers": {
"slickfast": {
"command": "npx",
"args": ["-y", "@slickfast/mcp"],
"env": { "SLICKFAST_API_KEY": "SF-…" }
}
}
}Omit env to stay local-only (draw free forever). Add a free key from slickfast.com when you want a live URL, share, or a published Page.
Then: get_started → news → gallery → one render_chart. Full tool docs: apps/mcp/README.md.
How to keep a Page
“Save it” is two jobs. On disk: render_page + keep the pagespec JSON (no key). In the world: publish_page (SF- key) → pages.slickfast.com/s/… + .json twin. The hash is on the page. Find it later with my_pages.
Why agents pick SlickFast
Deterministic — same spec, same bytes. Cacheable. Testable.
Cheap tokens — a few dozen tokens of JSON beat hundreds of matplotlib / SVG retries.
One-field edits — swap type, palette, size; re-render. No code rewrite.
Pages = shareable memory — agent output → Page → twin → hash on the page. Not stuck in chat.
No headless browser — pure in-memory SVG → PNG (and Page HTML).
47 types + tiled dashboards in one call.
Loud errors — bad enum / unknown palette lists the valid options.
Local by default — nothing phones home from the MCP package.
What's in this repo
Path | What it is |
| The engine: pure |
| The color library: palettes, nested themes, WCAG contrast, tokens. |
| SVG → PNG rasterization (resvg). |
| The swappable font layer. |
| Scientific charts: scatter, errorbar, lineplot, barplot, survival, Bland–Altman, Q–Q, volcano — log axes and curve fits. README |
| The MCP server published as |
| The hosted HTTP API — |
| The safety net: golden checks, registry-drift check, 323-case torture suite, palette hex check. |
| Ready-made spec presets. |
Build & verify from source
cd apps/mcp && npm install && npm run build # builds dist/index.js
cd ../../packages/raster && npm install # native resvg binding (PNG)
# from the repo root — the full safety net:
node packages/render-core/generate.mjs --check # golden snapshots (all types)
node packages/sci-core/golden/generate.mjs --check # sci-core golden snapshots
node packages/sci-core/verify-stats.mjs # sci-core statistics checks
node scripts/check-surfaces.mjs # type-registry drift check
node scripts/torture.mjs # 323 empty/edge-case renders
node scripts/check-palettes.mjs # palette hex validationThe engine is pure and deterministic by contract: no IO, no Date.now(), no
Math.random() in drawing code, and nothing ships without a snapshot test.
Contributing
Bug reports and feature requests are the best way to contribute — please use the issue templates. The MCP's built-in
report_issuetool writes a ready-to-paste report for you.Day-to-day development happens in an internal tree and releases are published here, so a PR may be ported in rather than merged directly — you'll be credited either way. For anything non-trivial, open an issue first so we can agree on the shape.
License
AGPL-3.0-only. Local MCP is free. Closed commercial products (embed or self-host without AGPL) need a commercial license from $99/year: slickfast.com/license.html · licensing@slickfast.com. Hosted API / hosted MCP: slickfast.com/#pricing.
This server cannot be deployed
Maintenance
Related MCP Connectors
Renders interactive Chart.js charts and dashboards inline in AI conversations.
Create, inspect, manage, and render charts and data visualizations as SVG/PNG or interactive embeds.
Renders interactive Chart.js charts and dashboards inline in AI conversations. Supports bar, line, area, pie, doughnut, scatter, and radar charts with multi-chart dashboard grids.
Clean messy tabular data and render publication-ready PNG charts from your AI assistant.
1
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides machine learning researchers with tools for creating publication-quality scientific visualizations, statistical plots, and 2D data representations. It streamlines the research workflow by enabling AI assistants to generate complex figures from CSV, JSON, or direct data inputs.9MIT
- AlicenseAqualityDmaintenanceEnables AI agents to generate and render charts as PNG, SVG, or WebP images directly in chat interfaces. Supports Chart.js specifications and natural language descriptions for creating visualizations from data.39 npm1MIT
- AlicenseAqualityCmaintenanceZero-dependency charts for Python and AI agents. SVG and PNG, 15 chart types, a one-line MCP server, and a Claude skill.4223 PyPI17MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI agents to generate beautiful, presentation-ready charts (SVG + PNG) with zero setup, supporting various chart types and styling options.25 npmMIT