jiscribe
An SVG canvas that people and AI agents draw on together — diagrams, mockups, posters, whole documents. What you draw is a plain object in your code and plain JSON on disk, so the file itself is where you and the agent meet.
Install / Use
claude mcp add gznnk -- npx -y github:gznnk/jiscribeIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AI & Machine LearningSupported Platforms
Our assessment of jiscribe
jiscribe scores 84/100 on our quality scale, 601st of 939 AI & Machine Learning skills we index.
Its MCP Server is 14 KB long, well organised into 12 sections with 6 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.
Maintenance, license and trust
- The repository was last updated today, so jiscribe is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 97/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
jiscribe compared with similar skills
All 4 of these similar skills score higher than jiscribe; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| jiscribe (this skill)by gznnk | 84 | 10 | today | MCP Server |
| claude-memby thedotmack | 100 | 112.1k | today | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 108.5k | 3d ago | CLAUDE.md |
| Understand-Anythingby Egonex-AI | 100 | 90.3k | 9d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 78.8k | today | CLAUDE.md |
Frequently asked questions
- How do I install jiscribe?
- Run
claude mcp add gznnk -- npx -y github:gznnk/jiscribe. The install tabs above show the steps for each supported agent. - Which AI agents does jiscribe 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 jiscribe safe to use?
- It is MIT-licensed and scores 97/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 jiscribe still maintained?
- The repository was last updated today, so jiscribe is actively maintained.
Skill content
View source on GitHub🌐 日本語版: README.ja.md
Jiscribe
Let an agent draw, fix what bothers you by hand, and hand the rest back to the agent. An SVG engine that people and AI agents draw on together. Architecture diagrams, flowcharts, UI mockups, even posters and whole documents.

When the agent picks up again, nothing is regenerated from scratch and nothing
you changed is lost, because what you draw is a plain object in your code
and plain JSON (.jis) on disk — the canvas is one way to edit it, and an
agent's tools are another.
Most of what you need to draw is already in the box. The core carries eight
primitive types (rect / ellipse / text / polyline / polygon / group /
connector / svg), and the richer shape sets — flowchart, UML, ER diagrams,
tables, sticky, markdown, container, annotation, general pictograms, Lucide
icons, AWS architecture — ship as plugins. More sets are on the way.
What you can make
| | |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
<br>UML and class diagrams — packages, interfaces, composition, multiplicities, notes |
<br>Architecture diagrams — AWS icons and boundary groups, from region down to subnet |
|
<br>Infrastructure, drawn to scale — every solid is a native polygon on a 30° lattice |
<br>UI mockups — a trading terminal: candles, order book, tape, at the fidelity a spec needs |
|
<br>Posters and print — a typographic grid is just shapes and text |
<br>Flows and swimlanes — handoffs, decisions, exceptions, and the icon that says what each step touches |
|
<br>ER diagrams — IE notation; a relationship runs from a foreign key to the key it references |
<br>Tables — every cell is a text of its own, with its own fill and type, and rows grow to fit |

Whole documents on one canvas — a postmortem: numbers, timeline, cause, action items
Every image in this gallery is a .jis.png: the exported picture carries the
document that drew it, so it is an image wherever an image is needed and still
a document when you open it in Jiscribe. None of it is a special mode. Each one
is an ordinary document of shapes, text and connectors — the kind an agent can
write and a person can move by hand.
Built for agents, not bolted onto them
- It edits one move at a time; it does not regenerate. 84 tools over
stdio, the same moves you make in the editor: add and connect, align and
distribute, group, restyle, reorder, select. An edit lands on the document
you have, so what you placed by hand stays where you put it, and
undotakes back only the agent's own moves. - When starting from nothing, it writes the file. The format is small and
explicit — eight primitives, named properties, coordinates in the open — so
an agent can write a
.jisdirectly, or generate one from a script when a 200-node graph or an isometric lattice is easier to compute than to place. Both ways are documented: the drawing guide for the tools, the format reference for the file. - It checks before it says it is done.
validate,diagnoseandmeasurerun headless in Node, in the same layout engine the editor uses — schema errors, parser errors, text that overflows its shape — and it can capture the canvas and look. The agent is told what the editor would tell you. - You can both have it open. A local viewer follows the file as the agent
writes it; drag something there and it is written back, so the agent's next
read sees your hand. Writes to one file are serialized, and the agent's
undonever rolls back yours. - The format is written down, not guessed at. A JSON Schema and a generated reference ship with the shapes, and the Claude Code skill is generated from the same manifest — so the shape set an agent is told about is the shape set that exists.
Getting started
With an agent
Register the MCP server with whichever agent you use:
claude mcp add jiscribe -- npx -y jiscribe-mcp # Claude Code
codex mcp add jiscribe -- npx -y jiscribe-mcp # Codex
copilot mcp add jiscribe -- npx -y jiscribe-mcp # GitHub Copilot CLI
Any other client that speaks stdio takes it by hand, under mcpServers —
VSCode calls the same map servers:
{
"mcpServers": {
"jiscribe": { "command": "npx", "args": ["-y", "jiscribe-mcp"] },
},
}
Node 22 or newer is required; nothing else is. The
jiscribe-mcp package carries
the server, the viewer and the fonts its text measurement needs. See
apps/mcp for the tool list and the viewer's behaviour.
In Claude Code, the plugin does that for you and adds a drawing skill generated from the shape set:
/plugin marketplace add gznnk/jiscribe
/plugin install jiscribe
In an editor
Jiscribe for VSCode
opens .jis, .jis.png and .jis.svg as editable canvases next to your
code, with diagnostics in the Problems panel. Pair it with the MCP server and
the agent draws with its own checks — diagnose, measure, capture — while you
watch the file take shape in VSCode.
If you just want to draw something by hand without installing anything, Jiscribe Web opens a canvas in the browser — no account, no upload, files stay on your machine.
Embedding the engine (not on npm yet)
The packages themselves are not on npm yet. @jiscribe/canvas and the rest
are still being settled as an embedding surface, so the public API may move.
The first release will go out as a GitHub Release — watch this repository under
Custom → Releases to hear about it. What the API looks like today:
import { Canvas } from "@jiscribe/canvas";
import type { CanvasDoc } from "@jiscribe/canvas";
const doc: CanvasDoc = { version: 1, root: [] };
export function App() {
return <Canvas doc={doc} />;
}
Shapes beyond the primitives come from plugins, registered per canvas:
import { Canvas } from "@jiscribe/canvas";
import type { CanvasConfig } from "@jiscribe/canvas";
import { flowchartPlugin } from "@jiscribe/plugin-flowchart-shapes";
import { umlPlugin } from "@jiscribe/plugin-uml-shapes";
const config: CanvasConfig = { plugins: [flowchartPlugin, umlPlugin] };
export function App() {
return <Canvas doc={doc} initialConfig={config} />;
}
The document layer is a package of its own, @jiscribe/doc. It parses,
validates, edits and measures a CanvasDoc without pulling in React or any DOM
dependency — that is what the VSCode extension's diagnostics, the CLI and the AI
tooling are all built on. If your product needs the document but not the canvas,
that is the package to take.
How it fits together
| Package | What it is |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| @jiscribe/canvas | The engine: rendering, gestures, commands, state |
| @jiscribe/doc | The headless document layer: the CanvasDoc model, its parser, its editing ops and its .jis.* file I/O |
| @jiscribe/canvas-sdk | Shape-authoring kit for plugin authors, written against the canvas public API |
| @jiscribe/geometry | Geometry types and calculations (rects, ellipses, transforms, intersections) |
| @jiscribe/markdown | Markdown rendering used by the markdown shape |
| @jiscribe/basic-validators | Primitive runtime validators |
| @jiscribe/utility-types | Shared TypeScript utility types |
| @jiscribe/doc-schema | Generated JSON Schema, AI reference and Claude Code skill for the shipped shape set |
| @jiscribe/ai-tools | The canvas tool set an AI can call — declared free of any transport, and applied |
| @jiscribe/ai-tools-sdk | The contract a plugin offers AI tools for its own shapes through; plugins take it from @jiscribe/canvas-sdk/tools |
| @jiscribe/standard-shapes | The shipped shape set, bundled once for every host (doc + presentation entries) |
| @jiscribe/doc-tools | Validate / measure / diagnose over the standard set (Node text measurer included) |
| plugins/* | The shipped shape sets — flowchart, UML, ER, table, container, general, annotation, sticky, markdown, Lucide, AWS |
| apps/canvas-examples | Integration examples (one example = one file) |
| apps/cli | The jiscribe command: validate / diagnose / measure / render / preview |
| apps/mcp | MCP server: the tool set over stdio, with a local canvas viewer |
| apps/desktop | The MCP server as a desktop app (proof of concept): Streamable HTTP, the viewer in its own window |
| apps/claude-plugin | The Claude Code plugin: the MCP server and a generated drawing skill |
| apps/vscode-extension | The Jiscribe VSCode extension |
The plugins/ directory is deliberately treated as external: those packages
may only use the public API of @jiscribe/canvas, @jiscribe/doc and
@jiscribe/canvas-sdk, enforced by ESLint. If the shipped shapes can be written
that way, so can yours.
Development
pnpm install
pnpm dev:examples #
Truncated for display — read the full file on GitHub.
Related Skills
claude-mem
112.1kPersistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Agent-Reach
108.5kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Understand-Anything
90.3kGraphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
headroom
78.8kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
