- MicrosoftがAIエージェント向けの可視化中間言語「Flint」をMITライセンスで公開しました
- 100行以上必要だったグラフ設定が、約10行の仕様で済みます
- 同じ仕様からVega-Lite・ECharts・Chart.js・Plotly・Excelの5種類に出力できます
- MCPサーバー版があり、ClaudeやGitHub Copilotから直接グラフを作れます
- 一方で「既存ライブラリで十分では」という批判もあり、3Dやネットワーク図は対象外です
AIに「このデータをグラフにして」と頼んだら、軸のラベルが重なってぐちゃぐちゃになった。そんな経験はありませんか。Microsoftはこの問題に、グラフ描画ライブラリの「手前」に置く新しい言語で答えを出しました。この記事では、Flintの仕組みと効果、そして日本の現場で何が変わるのかを整理します。
Flintとは?Microsoftが公開した「グラフの中間言語」
Flint(フリント)は、AIエージェントが簡潔な指定から見栄えの良いグラフを作るための「中間言語」です。
Microsoft Researchが2026年7月8日に発表しました。中国人民大学のIDEAS Labとの共同プロジェクトです。日本では8月30日にGIGAZINEが取り上げ、一気に知られるようになりました。
中間言語(そのまま実行せず、別の形式に変換するための言語)という点が肝心です。Flint自身はグラフを描きません。書いた内容をVega-LiteやEChartsといった既存ライブラリの設定に変換します。
ライセンスはMITで、誰でも無料で商用利用できます。npmで flint-chart と flint-chart-mcp の2つが配布されています。
GitHubリポジトリはすでに4.1kスター、コミット数は573件。8月12日にはバージョン0.5.1が出ており、開発は活発です。
なぜAIはグラフ作りでつまずくのか
設定する項目が多すぎる
Vega-LiteやApache EChartsは強力ですが、その分だけ書くことが山ほどあります。
目盛りの範囲、軸ラベルの角度、余白、色の割り当て、凡例の位置、数値の書式。複雑なグラフだとJSONで100行を超えることも珍しくありません。
AIはこの長い設定を丸ごと書き上げる必要があります。1か所でも数値を間違えると、文字が重なったり、棒グラフの基準線がゼロからずれたりします。長く書かせるほど失敗しやすい、というわけです。
Flintの答えは「意味」を書かせること
Flintが求めるのは、見た目の設定ではなくデータの「意味」です。
これをセマンティック型(データが何を表すかの種類)と呼びます。「これは日付」「これは金額」「これは前年比のパーセント」といった具合です。
用意されている型は70種類以上。論文では6つの大分類、15の中分類、44の詳細型という3階層で整理されています。
AIにとってこれは得意な作業です。列名が「sales_2025」なら金額だろう、と推測するのは人間と同じ感覚でできます。
あとはコンパイラの仕事です。意味の解決、レイアウトの最適化、コード生成という3段階を通って、目盛りも配色も書式も自動で決まります。
数字で見るFlintの効果
効果は具体的な数値で示されています。
まず記述量。100行超だったJSONが、Flintでは約10行になります。論文のケーススタディでは、ライブラリ本来のコードと比べて85%短くなったと報告されています。
次に品質です。研究チームはVega-Liteを直接書かせる方式(DirectVL)と勝負させました。
- GPT-5.1: Flintの勝ち129件(41%)、引き分け65件(21%)、負け118件(38%)
- GPT-5-mini: 勝ち140件(45%)、引き分け65件(21%)、負け106件(34%)
- GPT-4.1: 勝ち135件(43%)、引き分け70件(23%)、負け106件(34%)
圧勝ではありません。ただ、10分の1の記述量で同等以上の品質という点に価値があります。
評価には2025年のTidyTuesday(毎週公開される公開データセット)から63テーブル・51トピックを使い、315問を出題しました。データの規模は行数の中央値が952行で、49%は1000行を超えていたそうです。小さなサンプルで試した結果ではない、ということです。
使い方は3ステップ
1. MCPサーバーを登録する
いちばん手軽なのはMCP(AIツールと外部機能をつなぐ共通規格)経由です。
Claude Codeなら、プロジェクトのフォルダで次の1行を実行するだけです。
claude mcp add flint --scope project -- npx -y flint-chart-mcp
自分の環境に入れたくない場合は、公式のホスト版サーバー(https://flint.data-formulator.ai/mcp)に接続する方法もあります。GitHub CopilotやClaudeから使えます。
2. 日本語で頼む
あとは普通に指示するだけです。「このCSVから、月別・ゲーム別の新規ユーザー数をヒートマップにして」と伝えます。
AIが10行ほどのFlint仕様を書き、画像が返ってきます。対話しながら「色を落ち着いた感じに」「上位10件だけに絞って」と直していけます。
テーマ機能も面白いところです。The EconomistやMcKinseyといった媒体風の見た目を、ひとつの設定でライブラリ全体に適用できます。
3. 出力先を選ぶ
同じ仕様から5つの出力先を選べます。Vega-Lite、Apache ECharts、Chart.js、Plotly、そしてExcelです。
Plotlyでは38種類のチャート、Excelでは18種類のネイティブテンプレートに対応しています。「意図は1回書けば、使うライブラリに合わせて吐き分けられる」のが強みです。
Vega-Lite・ECharts・matplotlibと何が違う?
既存ツールとの関係を整理します。
- Vega-Lite: 人間が細かく指定するための高機能な言語。Flintはこれを置き換えず、ここに変換する
- Apache ECharts / Chart.js: Webでよく使われる描画ライブラリ。Flintの出力先のひとつ
- matplotlib / ggplot2: PythonとRの定番。AIも書き慣れているが、見た目の調整はコード量が増えがち
- Flint: 描画はしない。意味だけ書かせて、整った設定を機械的に導き出す層
賛否は分かれている
Hacker Newsの議論では、厳しい意見も並びました。
「Vega-Liteとの違いが説明されていない」「JSONは機械に優しいが、LLMには必ずしも優しくない」「高レベルな抽象化は柔軟性を失う」といった指摘です。「AIはすでにmatplotlibを上手に書ける。層を1枚増やす必要があるのか」という声もありました。
一方で、決定論的なコンパイラを挟むことで人間とAIの協働がやりやすくなる、という設計思想は評価されています。人間が10行のFlint仕様を直接読んで直せる点は、100行のJSONにはない利点です。
まだできないこと
解説記事によれば、3Dチャートやネットワーク図は対象外とされています。項目数が極端に多いデータや、凝ったレイアウトも苦手です。
また本体はTypeScript/JavaScript向けで、Python版はプレビュー段階です。データ分析の現場はPythonが中心なので、ここは今後の課題でしょう。バージョンもまだ0.5系で、研究段階の位置づけです。
日本のユーザーと企業にとって何が変わるか
身近な場面で考えてみましょう。
ある中小企業の経理担当者は、月末に売上データをExcelでグラフにしています。項目が増えるたびに軸ラベルが重なり、手作業で角度を直すのが恒例でした。FlintはExcelテンプレートにも対応しているため、AIに頼んで整った形で受け取る道が開けます。
地方自治体のオープンデータ担当者はどうでしょう。人口推移や予算配分を住民向けに公開したいが、見やすいグラフを作る余裕がない。意味を伝えるだけで媒体品質の見た目になる仕組みは、こうした少人数の現場でこそ効きます。
社内ダッシュボードを作るフロントエンド開発者にも関係します。EChartsで作ったものをChart.jsに移す話が出た瞬間、書き直しが発生していました。Flintを挟んでおけば、出力先を切り替えるだけで済みます。
日本語の解説もすでに複数出ています。gihyo.jpやCodeZineがニュースとして扱い、QiitaではPower BIやMicrosoft Fabricと組み合わせた検証記事やObsidianプラグイン化の実験まで登場しました。
UIは英語ですが、AIエージェント経由で使う分には日本語で指示して問題ありません。意味を伝えるのはAIの役目だからです。
よくある質問(FAQ)
Q. 無料で使えますか?
A. はい。MITライセンスのオープンソースで、商用利用も可能です。npmから誰でも導入できます。
Q. プログラミングができなくても使えますか?
A. MCPサーバーをClaudeなどに登録すれば、あとは日本語で頼むだけです。ただし登録作業自体はコマンド操作が必要なので、まったくの初心者には少しハードルがあります。
Q. Vega-LiteやEChartsを今から学ぶ意味はなくなりますか?
A. なくなりません。Flintは最終的にそれらの設定に変換されるため、細かく調整したいときは元の知識が役立ちます。
Q. どんなグラフに向いていますか?
A. 棒グラフ、折れ線、ヒートマップ、散布図、箱ひげ図といった定番の統計グラフです。論文の評価でも棒グラフが18.7%と最多でした。3Dやネットワーク図は対象外です。
Q. Pythonでも使えますか?
A. 現時点ではプレビュー段階です。本格的に使うならTypeScript/JavaScript環境か、MCP経由がおすすめです。
まとめ
- FlintはMicrosoft Researchが公開した、AIエージェント向けの可視化中間言語
- 100行超のJSONが約10行に。論文では85%の記述量削減を報告
- Vega-Lite・ECharts・Chart.js・Plotly・Excelの5つに同じ仕様から出力できる
- MCPサーバー経由なら、ClaudeやGitHub Copilotから日本語で指示するだけ
- MITライセンスで無料。ただしバージョンは0.5系、Python版はプレビュー段階
- 「既存ライブラリで十分では」という批判もあり、評価はこれから固まる
まずは npx -y flint-chart-mcp を手元のAIエージェントに登録し、手持ちのCSVで1枚グラフを作らせてみてください。

