SkillAgentSearch skills...

Glyphic

Glyphic is an open source diagram engine that lets AI agents generate production-quality diagrams from structured JSON, without SVG, Mermaid, or a browser.

Install / Use

claude mcp add MS-Teja -- npx -y github:MS-Teja/Glyphic

If the server publishes to npm under a different name, use that package instead โ€” check the repo README.

About this skill
๐Ÿ”Œ

MCP Server

Model Context Protocol server

Quality Score

84/100

Supported Platforms

Claude Code
Claude Desktop

Tags

Our assessment of Glyphic

Glyphic scores 84/100 on our quality scale, 2836th of 4,616 Development & Engineering skills we index.

Its MCP Server is 12 KB long, well organised into 16 sections with 4 code examples: a thorough specification that gives an agent plenty to work with.

It has 10 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
30/30
Structure
20/20
Description
15/15
Adoption
4/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated 12 days ago, so Glyphic is actively maintained.
  • Our last check on 2026-10-21 found the source still online.
  • No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
  • Its trust signals score 85/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit โ€” read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.

AI review by kimi-k2.7-code on 2026-09-24. Automated pattern scan on 2026-09-24. It catches known dangerous patterns, not every risk โ€” read a skill before letting an agent act on it.

Glyphic compared with similar skills

All 4 of these similar skills score higher than Glyphic; compare them before choosing.

SkillScoreStarsUpdatedFormat
Glyphic (this skill)by MS-Teja841012d agoMCP Server
Agent-Reachby Panniantong100105.0k2d agoCLAUDE.md
taste-skillby Leonxlnx100103.8ktodayCLAUDE.md
headroomby headroomlabs-ai10078.1ktodayCLAUDE.md
ai-job-searchby ai-job-search-dev10066.9ktodayCLAUDE.md

Frequently asked questions

How do I install Glyphic?
Run claude mcp add MS-Teja -- npx -y github:MS-Teja/Glyphic. The install tabs above show the steps for each supported agent.
Which AI agents does Glyphic work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is Glyphic safe to use?
Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It declares no license and scores 85/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is Glyphic still maintained?
The repository was last updated 12 days ago, so Glyphic is actively maintained.
<div align="center"> <h1>Glyphic</h1> <p><b>A diagram is data, not a drawing.</b></p> <p>Your model describes the diagram as typed JSON; Glyphic renders it โ€” deterministic SVG &amp; 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.</p> </div> <p align="center"> <a href="https://www.npmjs.com/package/@glyphicjs/core"><img src="https://img.shields.io/npm/v/@glyphicjs/core?label=%40glyphicjs%2Fcore&color=e2502f" alt="npm version" /></a> <a href="https://www.npmjs.com/package/@glyphicjs/mcp-server"><img src="https://img.shields.io/npm/v/@glyphicjs/mcp-server?label=mcp-server&color=e2502f" alt="mcp-server npm version" /></a> <a href="https://www.npmjs.com/package/@glyphicjs/core"><img src="https://img.shields.io/npm/dm/@glyphicjs/core?label=downloads&color=222" alt="npm downloads" /></a> <img src="https://img.shields.io/badge/license-FSL%20%2F%20MIT-222" alt="License: FSL / MIT" /> <a href="https://github.com/sponsors/MS-Teja"><img src="https://img.shields.io/badge/sponsor-%E2%9D%A4-e2502f?logo=githubsponsors" alt="Sponsor" /></a> </p> <p align="center"> <a href="https://glyphic.web.app/generate">Live playground</a> ยท <a href="#quick-start">Quick Start</a> ยท <a href="./docs/examples/README.md">Examples Gallery</a> ยท <a href="./docs/README.md">Documentation</a> ยท <a href="#supported-diagrams">18 Diagram Types</a> </p> <p align="center"> <img src="./docs/examples/00_sketch_architecture.png" alt="Sketch architecture diagram" width="480" /> <img src="./docs/examples/00_freeform_canvas.png" alt="Freeform canvas dashboard" width="360" /> </p>

Quick Start

Glyphic gives an LLM structured data in and hands you a finished diagram out. Use it three ways.

1. MCP server โ€” add to your AI agent in 30 seconds

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.

2. Library

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.

3. Self-hosted HTTP API

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.

Who it's for

  • Agent & LLM-app builders โ€” expose diagram generation as a single tool call and let the model describe it, not draw it.
  • Platform teams โ€” embed diagram generation directly in your product behind one validated schema.
  • CI & docs pipelines โ€” deterministic, byte-identical, versionable output with no Chromium to install or babysit.
  • React developers โ€” get interactive React Flow JSON out of the box, not just static images.

What

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:

  • SVG โ€” pure, scalable vector markup (accessible: role="img" + <title>).
  • PNG โ€” high-resolution raster, rendered natively via Rust (@resvg/resvg-js).
  • React Flow JSON โ€” nodes/edges mapped for an interactive React Flow canvas.

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.

Why

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:

  1. A machine-authoring contract, not a DSL. The input is a strict Zod schema. Malformed model output comes back as a precise, fixable error before anything renders โ€” so generate โ†’ validate โ†’ fix โ†’ render loops are trivial. DSLs like Mermaid parse-or-crash on a single typo (-->|label|).
  2. Deployable as infrastructure. Layout is computed by real graph engines (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.
  3. Cheap and intact at scale. Hand-drawing a large diagram means emitting thousands of coordinate tokens โ€” slow, costly, and liable to blow the model's output limit and truncate into a broken render. Your model emits compact semantic JSON instead; the heavy geometry is generated deterministically.

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.

<p align="center"> <img src="./docs/examples/00_raw_svg_vs_glyphic.png" alt="The same 44-node architecture: a frontier model's one-shot raw SVG (edges tangled diagonally through boxes) above Glyphic's rendering of the identical JSON (nested tiers, routed edges)" width="760" /> <br/> <sub><b>The same 44-node spec.</b> 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.</sub> <br/> <sub><i>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 <code>@glyphicjs/core</code> (ELK layout + resvg, no browser). Same author, same content โ€” only the draw-vs-describe boundary differs.</i></sub> </p>

How it compares

| 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.

Features

  • ๐Ÿงฉ 18 diagram types behind one validated schema โ€” see them all.
  • ๐ŸŽจ Theming โ€” built-in presets ("theme": "dark", plus light / pastel / mono) or a full custom palette. Theming guide.
  • ๐Ÿ–Œ๏ธ Styles โ€” visual personality presets: "style": "compact" (default), clean, minimal, or hand-drawn sketch. Styles guide.
  • ๐Ÿ“บ Aspect-ratio framing โ€” auto-fits diagrams to clean 16:9 / 9:16 frames (or set "aspectRatio"), by padding โ€” never cropping.
  • ๐Ÿ”ค Fonts โ€” any Google Font ("theme": { "fontFamily": "Outfit" }) or your own .ttf.
  • ๐Ÿ–ผ๏ธ Native icons โ€” drop in any FontAwesome icon ("icon": "fas-database", "icon": "fab-aws") or your own SVG via customIcons.
  • ๐Ÿ“ Real layout โ€” 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.
  • โšก Native PNG โ€” Rust rasterization, no headless browser.
  • โ™ฟ Accessible output โ€” every SVG ships with role="img" and a <title>.
  • ๐Ÿ”’ Safe by construction โ€” strict input validation, SVG output escaping/sanitization, and size limits to resist malicious input.
  • ๐Ÿงช Multiple outputs โ€” SVG, high-res PNG, and React Flow JSON from one call.

Supported Diagrams

18 first-class types โ€” explore them in the Examples Gallery and the Diagram Types reference.

| | | | |---|---|---| | 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) |

Monorepo architecture

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.

Documentation

Blog

Truncated for display โ€” read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars10
CategoryDevelopment
Updated12d ago
Forks0

Languages

TypeScript

Trust signals

85/100

From repository metadata: license, adoption, age and documentation. Not a code audit โ€” see the Safety scan above for what the skill file itself contains.

1 medium1 info
Glyphic โ€” MCP Server: Install & Safety Check | SkillAgent