openflowkit-mcp について
OpenFlowKitは、テキスト記述とビジュアルキャンバスを組み合わせた、開発者やエージェントを使うチーム向けの図表ツールです。コードリポジトリから構成図を作成し、接続の根拠となるコード行を示します。
主な機能
- 01テキストとキャンバスで図を編集
- 0210種類の図表に対応
- 03GitHubリポジトリから構成図を作成
- 04Mermaid、Structurizr DSL、D2を変換
- 05静止画とアニメーション形式で出力
活用シーン
- 01エージェントにライブキャンバスで図を作成・編集させる
- 02図とコードの差異を確認
- 03CIに図のレンダリングと検証を追加
- 04ドキュメント用に構成図を出力
MCP 対応
MCPサーバーは、図の作成、読み取り、編集、スクリーンショット、出力などのキャンバスおよびファイル操作をMCPクライアントに提供します。コードベースの分析や構成のドリフト検出にも対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
29掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| dsl | string | はい | 検証する OpenFlow DSL、Mermaid、Structurizr DSL、または D2 のソース。 |
詳細
OpenFlowKit
描いても、コードで書いても、エージェントに任せても作れるアーキテクチャ図。
無料のオープンソースで、ローカル優先です。GitHub リポジトリを貼り付けると、すべての矢印にコード行の引用が付いた構成図が表示されます。
アプリを開く · ドキュメント · MCP のセットアップ · ディスカッション · 課題
OpenFlowKit を選ぶ理由
1. エージェントがキャンバスにリアルタイムで描画します
Claude Code、Cursor、または任意の MCP クライアントを接続して、図の作成を依頼できます。エージェントはページを読み取り、描画し、スタイルを変更して、作業を確認するためにスクリーンショットを撮ります。その様子をリアルタイムで見ることができます。エージェントによる変更はそれぞれ 1 回の取り消し操作として記録され、自分で行った変更と同じように元に戻せます。エージェントを接続する ↓
2. テキストとキャンバスが同じ図になります
flowchart right
Client [blue] -> "API Gateway" [emerald] : HTTPS
"API Gateway" -> Queue [queue, amber]
Queue -> Worker
Worker -> Store [cylinder, red, bold]
コードパネル(⌥C)を開き、ここに貼り付けて ⌘↵ を押します。キャンバス上で図形をドラッグしたり、テキストを編集したりできます。⌘↵ を押すと、テキストからフレームが再生成され、1 回の取り消し操作として記録されます。Mermaid、Structurizr、D2 を貼り付けると、変換されます。
空のキャンバスでボックスに owner/repo と入力して Map repo を押すか、
app.openflowkit.com/#/map/github/<owner>/<repo>
を開きます(サンプルを試す)。
ブラウザーが GitHub からリポジトリを読み込み、その構成要素を描画します。ボックスをクリックするとその場で開き、各矢印にはコードへのリンク付きで、その根拠となる file:line が表示されます。キーもインストールも不要です。プライベートリポジトリの場合は、ページで読み取り専用の GitHub トークンを追加するか、チェックアウトしたリポジトリをマップします:npx openflowkit map . --html map.html
(プライベートリポジトリ)。
4. アニメーションも含めてエクスポートする
PNG、SVG、PDF、JSON、または README 用の Copy as Mermaid。上のテキストに animate ブロックを追加してステップに名前を付けると、ブラウザーでアニメーション付き SVG、GIF、MP4、または WebM をエクスポートできます。
animate build 6s loop {
step Client
step Client -> "API Gateway" : HTTPS
step Queue, Worker
step Store hold 2s
}
このアニメーションは上の2つのスニペットをアプリでアニメーション付き SVG としてエクスポートしたものです。GitHub では画像と同じように再生されます。
10種類の図を、1つの言語で
どの種類も、短くて柔軟なテキストで記述でき、行ごとのエラーには修正方法が示されます。
以下の図は、それぞれのドキュメントページにある最初の例をopenflowkit CLIでレンダリングしたものです。
言語仕様はバージョン管理され、1つのファイルにまとめられています:src/dsl/grammar.md (ドキュメント)。コードパネル、アシスタント、MCP ツール、CLIは、すべて同じテキストを使用します。
クイックスタート
ブラウザーで使う: app.openflowkit.com。インストールもアカウントも不要です。
ターミナルで使う: npx openflowkit(Node 20.11+)。
ローカルで実行する(Node 22.22+):
git clone https://github.com/openflowkit/openflowkit.git
cd openflowkit
npm install && npm run dev # http://localhost:3000
エージェントを接続する
OpenFlowKit には、エージェントツールが1セットあります。エージェントの実行場所に応じて行を選んでください。
| エージェントの実行場所… | 接続方法 | できること |
|---|---|---|
| お使いのコンピューター:Claude Code、Cursor、VS Code、Claude Desktop、Windsurf | 下記の MCP サーバー | すべて:開いているキャンバスに描画する(変更ごとに1回の取り消し操作)、リポジトリ内の .openflow.json ファイルを編集する、コードベースをマッピングする、スクリーンショットを撮る |
| チャットアプリ内:claude.ai、Claude Desktop、ChatGPT | カスタムコネクターを追加:https://mcp.openflowkit.com/mcp、サインインなしを選択 | チャット内にカードとして図を描画し、Open in OpenFlowKitを表示します。開いているキャンバスには表示されません |
| ブラウザー内(実験的) | インストール不要です。WebMCP に対応したエージェントのあるブラウザーで図を開きます | 開いている図を読み取り、編集します |
Claude Code の場合は、次の1行を実行します。
claude mcp add -s user openflowkit -- npx -y openflowkit mcp
Codex の場合:codex mcp add openflowkit -- npx -y openflowkit mcp。
Claude Desktop、Windsurf、その他の MCP クライアントの場合:
{
"mcpServers": {
"openflowkit": { "command": "npx", "args": ["-y", "openflowkit", "mcp"] }
}
}
エージェントを再起動し、アプリでエージェントを接続をクリックするか、
app.openflowkit.com/#/connectを開きます。このパネルには各クライアントの手順があり、
ペアリングトークン付きの同じ設定をコピーできます。アプリを開いていない場合、同じツールでリポジトリ内の .openflow.json ファイルを編集します。
すべてのクライアントの詳しい手順と問題の解決方法については、エージェントを接続するをご覧ください。
プラグイン:Claude Code と Codex(サーバーとスキルをまとめてインストール)
# Claude Code
claude plugin marketplace add openflowkit/openflowkit
claude plugin install openflowkit@openflowkit
# Codex: add the marketplace, then install OpenFlowKit from the Plugins Directory
codex plugin marketplace add openflowkit/openflowkit
スキル(skills/openflowkit/SKILL.md)は、図が役立つ場面、図の書き方、コードの隣に保存する方法をエージェントに伝えます。ウェブを読み取るエージェントは、https://app.openflowkit.com/llms.txt から同じテキストを取得できます。
MCP サーバーを使うと、キャンバス上でもファイル上でも、エージェントが各種操作を行えます。
| 操作 | ツール |
|---|---|
| テキストまたは Mermaid から図を作成し、変更する | create_diagram、update_diagram、add_shape |
| すべてのページ、図の背後にあるテキスト、選択した項目を読み取る | get_document、get_diagram、list_pages |
| 既存の項目のスタイルを変更して移動する | style、move、delete |
| エージェント自身の結果を確認する | screenshot は、モデルが確認できる実際の画像を返します |
| ファイルを渡す | export:SVG、PNG、PDF、JSON、アニメーション SVG |
| リポジトリを読み取る | discover_architecture、drift_report、explain_element |
次のように依頼できます。
- 「このリポジトリのアーキテクチャを図にして。」
- 「選択したボックスを赤にして、API の前にキャッシュを追加して。」
- 「README にある Mermaid を編集可能な図に変換して。」
- 「architecture.ofk とコードを比較して、ずれがあれば教えて。」
キャンバスの編集内容は安全に保持されます。何かを移動、スタイル変更、名前変更した後、エージェントがテキストから再生成する場合、get_diagram はそれぞれの編集内容を保持するテキストを渡し、update_diagram は破棄が必要だった項目を報告します。エージェントによる変更はすべて 1 回の取り消し操作となり、Connect パネルには直近の変更が Undo ボタンとともに表示されます。
29 個すべてのツール
エディター操作は 16 種類あり、ファイルにも使用できます:create_diagram、update_diagram、
get_diagram、list_diagrams、get_syntax、search_icons、find_icons_for、move、style、
delete、add_shape、export、screenshot、fit_view、get_document、list_pages。
ファイルとリポジトリ向けのツールは 13 種類です:openflow_create、openflow_open、openflow_save、whoami、
server_info、validate_openflow_dsl、list_diagram_node_types、list_starter_templates、
get_starter_template、analyze_codebase、discover_architecture、drift_report、
explain_element。
引数と例:MCP サーバーのドキュメント。操作マニフェストは
src/agent/manifest.ts です。Node 20.11 以降が必要です。
独自のキーを使う場合: ⌘J でアシスタントが開きます。Claude、OpenAI、Gemini、 Groq、Mistral、Cerebras、NVIDIA、OpenRouter、Ollama、または OpenAI 互換のエンドポイント(LM Studio…)を選び、 キーを貼り付けます。キーはこのブラウザー内に保存され、返信は適用するか却下する提案として届きます。
既存の図を取り込む
コードパネルに貼り付けると変換され、変換できなかった項目は正直に一覧表示されます。Mermaid をキャンバスに直接貼り付けると、その場に図が描画されます。
| 形式 | 変換される内容 |
|---|---|
| Mermaid | flowchart / graph、sequenceDiagram、stateDiagram、erDiagram、classDiagram、mindmap、architecture、gitGraph |
| Structurizr DSL | モデル、ビュー、スタイルを、ビューごとに 1 ページの C4 ワークスペースとして変換 |
| D2 | 図形、接続、コンテナー |
図を外部に出す場合、Copy as Mermaid を使うと、README や Wiki 用のフローチャートまたはシーケンス図が Mermaid テキストとして出力されます。Mermaid · Structurizr からの移行
リポジトリと CI での利用
openflowkit CLI は、アプリと同じエンジンを使って、任意のターミナルや CI ジョブから実行できます。
npx openflowkit render diagram.ofk -o diagram.svg # Mermaid, D2, Structurizr or DSL → SVG
npx openflowkit validate diagram.ofk --strict # exit 1 on an error
npx openflowkit convert flow.mmd -o flow.openflow.json
npx openflowkit discover . --out architecture.ofk # draft a C4 model of this repo
npx openflowkit drift . # exit 1 when the code moved on
architecture.ofk をコードの隣にコミットし、CI で drift を実行して整合性を保ちます。PR diagrams
Action は、図の変更内容をプルリクエストにコメントします。ノードとコネクターの数、テキストの差分、.ofk モデルのずれが表示されます。
CLI · GitHub Action
エクスポートと共有
| 形式 | 備考 |
|---|---|
| PNG | 1×または2×。ライト、ダーク、印刷用テーマに対応。背景の透過も選択できます |
| SVG, PDF | アイコンとInterフォントを埋め込んだベクター形式 |
| JSON | すべてのページを含むドキュメント全体。どのブラウザーでも開けます |
| アニメーションSVG、GIF、MP4、WebM | animateブロックまたはコネクターの順序から、ブラウザー上で生成します |
| Mermaidとしてコピー | フローチャートとシーケンス図 |
| 共有リンク | ブラウザー内で暗号化された閲覧専用リンク、または編集可能なコピー。コードはリンク内に含まれ、アップロードされません |
キーボード
すべての操作にキーが割り当てられており、アプリ内で?を押すと一覧が表示されます。
まず使うキー
| キー | 操作 |
|---|---|
| V R O T A | 選択、長方形、楕円、テキスト、コネクター |
| ⌥C · ⌘↵ | コードパネル · テキストから生成 |
| ⌘J | AI アシスタント |
| M | キャンバスとマップを切り替え |
| ⌘F | キャンバス内を検索 |
| ⇧1 · ⇧2 | 全体を画面に収める · 選択範囲を拡大表示 |
| ⌘G · ⌘D | グループ化 · 複製 |
| Enter | 選択した図形のラベルを編集 |
WindowsおよびLinuxでは、⌘と⌥の代わりにCtrlとAltを使います。
仕組み
この図もOpenFlowKitのテキストです:how-it-works.ofk。パルスプリセットを使ってアニメーションSVGとしてエクスポートされています。
あなたとエージェントはキャンバスに直接描くこともできます。テキストによる編集も手作業による編集も、すべて同じドキュメントに対するコマンドです。
キャンバス上のどのフレームも正規テキストとして書き出され、テストではformat(format(x)) == format(x)が成り立ちます。言語とドキュメントのコードはReact、Pixi、DOMに依存しないプレーンなTypeScriptです。そのため、同じコンパイラーをブラウザー、MCP サーバー、CLIで実行できます。全体の解説は**ARCHITECTURE.md**をご覧ください。
リポジトリの構成
| パス | 内容 |
|---|---|
src/dsl/ | 言語:文法、パーサー、図の種類、コンパイルとシリアライズ、リポジトリの検出 |
src/opencanvas/ | エディター:ドキュメントモデルとコマンド、Pixiレンダラー、エクスポーター、React UI |
src/agent/ | エージェントが呼び出す操作、ブリッジプロトコル、操作マニフェスト |
mcp-server/ | 公開済みのMCP サーバーとopenflowkit CLI |
cli/ | npm上のopenflowkit:CLIの短縮名 |
plugin/, skills/ | Claude CodeとCodexのプラグイン、およびエージェントスキル |
action/ | PR図用のGitHub Action |
worker/ | 共有リンク用Worker(暗号文のみを保存) |
stats/ | 非公開の利用状況ダッシュボード用Worker |
docs-site/ | ドキュメントサイト |
セルフホスト
docker build -t openflowkit . && docker run --rm -p 3045:3045 openflowkit # http://localhost:3045
画像はnginxの背後で動作する静的ビルドで、ホスト版アプリと同じヘッダーを使用しています。コンテンツセキュリティポリシー、独自ネットワーク上のAIプロバイダー、共有リンクについては、 セルフホスティングをご覧ください。
プライバシー
図はブラウザー内に保存されます。外部に送信されるのは、ご自身で選択した場合のみです。ご自身のキーを使う AI はそのプロバイダーに接続し、共有リンクでは暗号化されたコピーがアップロードされ、リポジトリマップでは GitHub からデータを読み取ります。 アカウントは不要です。OpenFlowKit の改善に役立てるため、基本的な利用状況の統計情報を収集しています。設定から無効にできます。 ホームの すべての図をダウンロード ですべてを一度にバックアップし、インポート するとどのブラウザーでも復元できます。
よくある質問
無料ですか? はい。MIT ライセンスで、無料で利用およびセルフホストできます。チーム向けの Pro プランを予定しており、アプリ内でウェイトリストに登録できます。
オフラインで使えますか? ページを開いた後は、描画、コードパネル、エクスポートをページ内で実行できます。AI、共有リンク、リポジトリマップにはネットワーク接続が必要です。インターネットに一切接続せずに使う場合は、セルフホストしてください。
対応ブラウザーは? WebGL に対応した最新のデスクトップブラウザーです。自動テストは Chromium で実行されます。
チームで一緒に編集できますか? リアルタイムではできません。閲覧専用リンクはスナップショットで、編集可能なリンクでは各ユーザーに個別のコピーが渡されます。また、.openflow.json と .ofk ファイルは git で問題なく管理できます。
詳細:FAQ。
コントリビュート
Issue、アイデア、PR を歓迎します。セットアップとチェックについてはCONTRIBUTING.mdを、コードの構成についてはARCHITECTURE.mdをご覧ください。質問はDiscussionsへどうぞ。各バージョンでの変更点:CHANGELOG.md。
セキュリティ上の問題は、SECURITY.mdの説明に従って非公開で報告してください。MIT ライセンスです。詳細はLICENSEをご覧ください。
OpenFlowKit が図の作成に役立ったら、GitHub で ⭐ を付けてください。
ほかの人に見つけてもらうきっかけになります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。









