Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Generate 18 diagram types from structured JSON natively. Built for LLMs and agents.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"glyphic": {
"command": "npx",
"args": [
"-y",
"@glyphicjs/mcp-server"
]
}
}
}ターミナルでこれを実行します
claude mcp add glyphic -- npx -y @glyphicjs/mcp-serverプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"glyphic": {
"command": "npx",
"args": [
"-y",
"@glyphicjs/mcp-server"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"glyphic": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@glyphicjs/mcp-server"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント MS-Teja で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(1.0.2)がレジストリに届いたのは5 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Master CSS
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Inspect Master CSS classes, generated CSS, and project stylesheets from your AI client.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Glyphic A diagram is data, not a drawing. Your model describes the diagram as typed JSON; Glyphic renders it — deterministic SVG & PNG across 18 types, validated before it draws, with no DSL and no headless browser. Diagram infrastructure for LLMs and agents that you own and build on.
Live playground · Quick Start · Examples Gallery · Documentation · 18 Diagram Types
Glyphic gives an LLM structured data in and hands you a finished diagram out. Use it three ways.
It runs over stdio via npx, no install:
# Claude Code
claude mcp add glyphic -- npx -y @glyphicjs/mcp-server
For Cursor, Claude Desktop, VS Code, Windsurf, and Antigravity, add it to your client's MCP config:
{
"mcpServers": { "glyphic": { "command": "npx", "args": ["-y", "@glyphicjs/mcp-server"] } } }
Then just ask: *"Draw an ERD for a blog with users, posts, and comments."* The model emits the JSON, calls the tool, and the rendered diagram appears inline. See the MCP setup guide.
npm install @glyphicjs/core @glyphicjs/schema
import { processDiagram } from "@glyphicjs/core";
import { writeFileSync } from "node:fs";
const result = await processDiagram({ type: "architecture", title: "Web App", nodes: [ { id: "web", label: "Web App", shape: "rounded", icon: "fab-react" }, { id: "api", label: "API", shape: "hexagon", icon: "fas-bolt" }, { id: "db", label: "PostgreSQL", shape: "database", icon: "fas-database" } ], edges: [ { source: "web", target: "api", label: "REST" }, { source: "api", target: "db", label: "SQL" } ] });
writeFileSync("diagram.png", result.png); // Buffer (high-res PNG) writeFileSync("diagram.svg", result.svg); // string (scalable SVG) console.log(result.reactFlow); // interactive React Flow JSON
See the Core API reference.
Need it behind your own endpoint? Glyphic can be self-hosted as an HTTP service that wraps the exact same engine — same schema in, same SVG/PNG/React Flow out — so your product or platform can generate diagrams without shipping the library to every client.
Glyphic is infrastructure for generating diagrams from structured data. You give it a strict, semantic JSON document — arrays of nodes and edges, or entities, or commits — and it returns a polished diagram as:
role="img" + ).@resvg/resvg-js).It supports 18 diagram types (architecture, sequence, ERD, UML class, state machines, flowcharts, Gantt, timelines, Sankey, Git trees, mindmaps, pie, quadrant, user journeys, Kanban, C4, treemaps, and a freeform canvas) behind a single validated schema.
Yes — a modern LLM can draw a clean six-box flowchart as raw SVG. Go ask one; for a single throwaway diagram, that's the right tool. This isn't a bet that models "can't draw."
The problem is that a drawn SVG is a dead picture. It comes out different every generation, it falls apart exactly where real diagrams live — many nodes and later edits — and to change one box you regenerate the whole thing and it drifts. Glyphic treats the diagram as data: your model describes what it *means* as typed JSON, and a real engine renders it. Three reasons that holds up no matter how good the model gets:
-->|label|).elkjs, d3-hierarchy/d3-sankey) and SVG is rasterized to PNG by Rust (@resvg/resvg-js) — no DOM, no headless browser, no Chromium. It runs in a CI job, a Lambda, an agent loop, or a Docker container as a normal Node dependency. This stays true regardless of model capability.And because a real engine owns the layout, the diagram scales and stays editable: it nests clusters and routes edges around obstacles where hand-placed SVG turns into diagonal lines cutting through boxes, its output is byte-identical (versionable, snapshot-testable), and the JSON stays a source of truth you can diff and re-render — not a house of cards of absolute coordinates.
The same 44-node spec. Top: a current frontier model asked for raw SVG — the boxes are fine, but the edges cut diagonally through shapes and the result can't be edited without regenerating it. Bottom: Glyphic renders the identical JSON — nested tiers, edges routed around obstacles, still an editable source of truth.
Method: both produced by the same model (Claude Opus 4.8) from one brief — the top by asking it to hand-write SVG in a single pass; the bottom by asking it to emit Glyphic's typed JSON, then rendering with @glyphicjs/core (ELK layout + resvg, no browser). Same author, same content — only the draw-vs-describe boundary differs.
| Feature | Glyphic | Claude Artifacts | Mermaid | D2 |
|---|---|---|---|---|
| Input format | Typed JSON (Zod schema) | Natural language → SVG | Text DSL | Text DSL |
| Renders without a browser | ✅ Rust (resvg) | N/A (cloud-only) | ❌ Puppeteer/Chromium | ✅ Go binary |
| Model-agnostic | ✅ Any JSON-capable LLM | ❌ Claude only | ✅ | ✅ |
| Schema validation | ✅ Zod + fixable errors | ❌ | ❌ Parse-or-crash | ❌ |
| Native MCP server | ✅ @glyphicjs/mcp-server | N/A (built-in to Claude) | ❌ | ❌ |
| React Flow output | ✅ Interactive nodes/edges | ❌ | ❌ | ❌ |
| Deterministic output | ✅ Byte-identical | ❌ | ⚠️ Mostly | ✅ |
| License | FSL → Apache-2.0 | Proprietary | MIT | MPL-2.0 |
See the full comparison + benchmarks.
"theme": "dark", plus light / pastel / mono) or a full custom palette. Theming guide."style": "compact" (default), clean, minimal, or hand-drawn sketch. Styles guide."aspectRatio"), by padding — never cropping."theme": { "fontFamily": "Outfit" }) or your own .ttf."icon": "fas-database", "icon": "fab-aws") or your own SVG via customIcons.elkjs + d3 compute nesting (VPCs/clusters), crow's-foot/UML markers, and edge routing *around* obstacles — staying clean at the node counts where hand-placed SVG tangles into diagonals through boxes.role="img" and a .18 first-class types — explore them in the [Examples Gallery](./docs/examples/README.md) and the [Diagram Types reference](./docs/diagram-types.md).
| Architecture (nested VPCs/clusters) | C4 context | Flowchart |
| Sequence | State machine | ERD (crow's-foot) |
| UML Class | Mindmap | Gantt |
| Timeline | User Journey | Kanban |
| Pie | Quadrant | Sankey |
| Git graph | Treemap | Canvas (freeform SVG) |
A pnpm + Turborepo monorepo of three open-source libraries.
| Package | What it is |
|---|---|
@glyphicjs/schema | The pure Zod validation layer — the LLM-facing contract. Validate model output before rendering. |
@glyphicjs/core | The engine: layout adapters, scene graph, SVG rendering, and rasterization. |
@glyphicjs/mcp-server | Official Model Context Protocol server — exposes Glyphic as a native tool to Claude Desktop / Cursor. |
Adding a new diagram type is one entry in packages/core/src/registry.ts plus a schema and a layout adapter — see CONTRIBUTING.
冒頭だけを表示しています。続きはリポジトリで読めます