Agentic Mermaid
io.github.adewale/agentic-mermaidVersion 0.5.6Render, verify, describe, and safely edit Mermaid diagrams through MCP.
Status
Responds685 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 14:44 UTC
- Latency
- 685 ms
- Remotes responding
- 1 of 1
- Sign-in
- No sign-in
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 22:14 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://agentic-mermaid.dev/mcpResponds685 msNo sign-in
Claude Code
claude mcp add --transport http agentic-mermaid https://agentic-mermaid.dev/mcpClaude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: agentic-mermaid
Remote MCP server URL: https://agentic-mermaid.dev/mcpCursor
{
"mcpServers": {
"agentic-mermaid": {
"url": "https://agentic-mermaid.dev/mcp"
}
}
}VS Code
code --add-mcp '{"name":"agentic-mermaid","type":"http","url":"https://agentic-mermaid.dev/mcp"}'Streamable HTTP
npm: agentic-mermaid 0.5.6Package only
npm (npx)
claude mcp add agentic-mermaid -- npx -y agentic-mermaid@0.5.6Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
9 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
buildAuthor a new Mermaid diagram from blank by folding a list of structured ops
over an empty diagram of `family`. The declarative counterpart to hand-writing
source. Returns the same envelope as `mutate`:
{ ok, family, source, verify } or { ok:false, family, opIndex, error }.
Call `describe_sdk` for the family before authoring unfamiliar ops. | No | Yes | Yes | No |
describeDescribe a Mermaid diagram. format=text returns { ok, text } with
one or two summary sentences; format=json returns { ok, tree } with the AX tree;
format=facts returns { ok, facts } with deterministic semantic fact lines for
machine checking (for example edge A -> B : label, member Duck +quack()). | No | Yes | Yes | No |
describe_sdkReturn version-matched mutation operations for one diagram family, or use capability=resolved-scene for painted geometry, runtime limits and typed errors.
Use detail=signatures for the compact op menu or detail=fields (default) for exact
field types, required flags, enum values, defaults, and constraints. Call this
before build, mutate, or execute when the family schema is not already known. | No | Yes | Yes | No |
executeRun JavaScript in an isolated sandbox; return a value.
No promises, async/await, dynamic import, or type annotations.
SVG/ASCII/layout enforce
security:'strict', embedFontImport:false.
SDK:
type DiagramKind='flowchart'|'state'|'sequence'|'timeline'|'class'|'er'|'journey'|'architecture'|'xychart'|'pie'|'quadrant'|'gantt'|'mindmap'|'gitgraph'|'radar'|'sankey'|'c4'|'packet'|'kanban'|'requirement'|'treemap'|'ishikawa'|'block'|'eventmodeling'|'zenuml'
type MutationOp={kind:string;[field:string]:unknown}
type Result<T,E={code:string;message:string}>={ok:true;value:T}|{ok:false;error:E}
type ExternalFamilyId=`family:${string}`;interface SourceLocation{readonly line:number;readonly col:number;}interface SourceMap{readonly nodes:ReadonlyMap<string,SourceLocation>;readonly edges:ReadonlyMap<string,SourceLocation>;readonly groups:ReadonlyMap<string,SourceLocation>;readonly labels:ReadonlyMap<string,SourceLocation>;readonly spans?:SourceMapSpans;}interface SourceMapSpans{readonly preserved:PreservedSourceSpans;readonly nodes:ReadonlyMap<string,SourceSpan>;readonly edges:ReadonlyMap<string,SourceSpan>;readonly groups:ReadonlyMap<string,SourceSpan>;readonly labels:ReadonlyMap<string,SourceSpan>;readonly metadata?:ReadonlyMap<string,ReadonlyMap<string,{readonly key:SourceSpan;readonly value:SourceSpan;}>>;}interface PreservedSourceSpans{readonly source:SourceSpan;readonly wrapper?:SourceSpan;readonly frontmatter?:SourceSpan;readonly initDirectives?:readonly SourceSpan[];readonly accessibilityDirectives?:readonly SourceSpan[];readonly header:SourceSpan;readonly body:SourceSpan;}interface SourceSpan{readonly start:SourceSpanPoint;readonly end:SourceSpanPoint;}interface SourceSpanPoint{readonly offset:number;readonly line:number;readonly col:number;}interface SourcePreservationReceipt{readonly version:1;readonly classification:'unsupported'|'inventory-only'|'unknown';readonly source:string;readonly header:string;readonly upstreamFamilyId?:string;readonly mermaidVersion:string;readon | No | Yes | No | No |
mutateApply a list of structured edit ops to an existing Mermaid `source` and
return the edited diagram. This is the declarative counterpart to `execute`:
plain JSON in, plain JSON out, no sandbox. Prefer it for straightforward edits;
reserve `execute` for logic the ops don't express.
Returns { ok, family, source, verify:{ ok, warnings } } on success, or
{ ok:false, family, opIndex, error } — where `error` names the offending field
and lists the valid ones — when an op is malformed or cannot apply. Ops apply in
order and are all-or-nothing: the first failing op stops the batch (its position
is `opIndex`) and the input is left untouched.
Each op is { "kind": <op>, …fields }. Call `describe_sdk` for the detected
family before authoring unfamiliar ops; it returns compact signatures or exact
field types, enum values, defaults, and constraints.
Set mode to source-preserving for supported edits to opaque Class or Flowchart
source. Exact edited bytes and portability warnings are retained; unsupported
operations still fail atomically. This mode does not promise portable export. | No | Yes | Yes | No |
render_asciiRender a Mermaid source string to text. Returns { ok, text }.
useAscii true → plain ASCII (+,-,|); false/absent → Unicode box drawing (┌,─,│).
targetWidth sets a hard terminal display-cell bound; impossible bounds return a typed error. | No | Yes | Yes | No |
render_pngRasterize a Mermaid source string to PNG. Returns { ok, png_base64 }.
Hosted rendering uses resvg-wasm with bundled fonts; bytes may differ from the
local napi renderer, so hosted PNG is a convenience surface, not part of the
byte-determinism contract. For file/URL artifacts use the local stdio server. | No | Yes | Yes | No |
render_svgRender a Mermaid source string to themeable SVG. Returns { ok, svg }.
Layout is deterministic: identical input produces identical geometry. The hosted
boundary forces security:'strict' and embedFontImport:false. | No | Yes | Yes | No |
verifyParse and verify source, structure, and renderability. This runs the graphical pipeline. Returns
{ ok, family, summary, warnings, layout: { bounds, nodes, edges } } for valid
diagrams and { ok: false, errors } for parse failures. `family` is the detected
diagram family and `summary` a one-line description — check them: ok:true only
means the diagram is structurally valid, not that it is the kind you intended.
Warnings use the layout-rubric codes. | No | Yes | Yes | No |
Details
- Registry status
- Active
- Published
- Nov 2, 2026
- Updated
- Nov 2, 2026
- Categories (suggested)
- Design and mediaSuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
- GDPR
- Not declared