Let an AI coding agent generate accurate, good looking charts inside a chat or coding session via the MCP server.
Add charting to a JavaScript or TypeScript app while keeping the option to switch between Vega-Lite, ECharts, or Chart.js.
Author compact, human editable chart specs instead of hand tuning verbose charting library configuration.
Build a gallery or dashboard that supports many chart types from a single consistent input format.
| microsoft/flint-chart | davidmonterocrespo24/velxio | langchain-ai/openwiki | |
|---|---|---|---|
| Stars | 2,014 | 1,990 | 1,950 |
| Language | TypeScript | TypeScript | TypeScript |
| Last pushed | — | — | 2026-07-03 |
| Maintenance | — | — | Active |
| Setup difficulty | easy | easy | easy |
| Complexity | 3/5 | 2/5 | 2/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Node 18+ is required for local development, the MCP server can be run directly with npx.
Flint is a project from Microsoft that gives AI agents a simple, structured way to describe charts so the agent does not have to fuss over low level details like axis spacing, labels, or layout. Instead of writing a full configuration for a charting library, you or an agent write a short, human editable chart spec that says what kind of chart it is and which data fields map to which visual elements, and Flint's compiler fills in the rest based on the data and the meaning of each field. The project has two main parts. The first is a JavaScript and TypeScript library that takes one of these compact chart specs and turns it into a chart definition for one of three well known charting libraries: Vega-Lite, ECharts, or Chart.js, so you can switch which library actually draws the chart without rewriting your input. The second part is an MCP server, meaning it plugs into the Model Context Protocol that lets AI chat and coding tools call outside services, so an agent working in a chat conversation can create a chart, check that it is valid, and show an interactive preview right there. Flint understands over 70 semantic field types, such as Rank, Price, Temperature, or Country, and uses that understanding to automatically choose sensible sizing, spacing, and chart marks rather than requiring every detail to be specified by hand. It currently supports more than 30 chart types across its three backends, including bar, line, scatter, heatmap, radar, and treemap charts. There is also a source only preview of a Python version of the library, though a published Python package is not yet available. The project is open source, written mainly in TypeScript, and released under the MIT license, which allows free use, modification, and commercial use as long as the license notice is kept. It can be installed as a normal npm package for developers building charting into their own apps, or run as an MCP server for agent based workflows.
A Microsoft library and MCP server that turns simple chart specs into polished Vega-Lite, ECharts, or Chart.js visualizations for AI agents.
Mainly TypeScript. The stack also includes TypeScript, Vega-Lite, ECharts.
Released under the MIT license, allowing free use, modification, and commercial use as long as the license notice is kept.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.