Skip to main content
Glama

Server Details

EN Diagram — structural verification for concurrent systems. Pure math, no AI.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Unhealthy
Last Tested
Transport
Streamable HTTP
URL
Repository
dushyant30suthar/endiagram-mcp
GitHub Stars
8
Server Listing
endiagram

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool update
    • Changedrender1 field changed
      • changedInput schema / properties / theme / description
        Previous value: -"Color theme. Named presets (curated, each with light + dark variants; pair with isDark): Blueprint (architectural drafting paper), Swiss (International Typographic — black/white with red accent), Bauhaus (primary-color geometric), Brutalist (high-contrast stark). Seed-derived (auto-generated palettes from themes.json): Nord, Catppuccin, etc. Or pass 'dark'/'light' for the default theme in that mode. Overridden by `color` if provided."New value: +"Color theme. Curated presets (each with light + dark variants; pair with `isDark`): `Editorial` (stone paper + rust focal, adapted from cathrynlavery/diagram-design), `Primer` (GitHub design system — blue accent, data-vis roles), `Carbon` (IBM Carbon — sharp 0px corners, corporate blue). Or seed-derived palettes generated on the fly from `color`. Pass 'dark'/'light' for the default variant. Overridden by `color` if provided."
  2. 5 tool updates
    • Changedcompose2 fields changed
      • changedInput schema / properties / links / description
        Previous value: -"Entity links e.g. 'a.node1=b.node2'"New value: +"Entity identifications, one per line. Format: `a.<entity name>=b.<entity name>` (A's entity is the same as B's entity). `#` starts a comment. Example: `a.user session=b.authenticated session`."
      • changedInput schema / properties / subsystem / description
        Previous value: -"Subsystem name for extract mode"New value: +"Subsystem name to extract. Valid names come from structure's `subsystems` field — call structure on the source first to discover them."
    • Changedequivalent1 field changed
      • changedInput schema / properties / patch / description
        Previous value: -"EN patch for evolve mode"New value: +"EN patch for evolve mode. Three directive types: plain EN statement (`actor do: X needs: Y yields: Z at: W`) adds action X; a line starting with `-` (and not containing `do:`) removes the named action; a new statement with an existing action name replaces the original. Multiple directives allowed, one per line."
    • Changedinvariant1 field changed
      • changedInput schema / properties / rules / description
        Previous value: -"Structural rules to check, one per line"New value: +"Custom structural rules, one per line. Four supported sentence shapes (regex-matched): (1) `no bridge that is also hub` — flags nodes that are both a bridge and a hub. (2) `every path from X to Y passes through at least one of [A, B, C]` — encodes precedence/coverage; use to check `A must happen before Y produces Z` by rewriting as `every path from Z's input to Z passes through [A]`. (3) `no node with centrality above 0.5` — flags over-central nodes (replace 0.5 with any threshold). (4) `removing any single node disconnects at most N others` — connectivity robustness check. Unrecognized rules return satisfied:false with an explanation listing these shapes."
    • Changedrender1 field changed
      • changedInput schema / properties / theme / description
        Previous value: -"Color theme: named preset (Blueprint, Swiss, etc.) or dark/light"New value: +"Color theme. Named presets (curated, each with light + dark variants; pair with isDark): Blueprint (architectural drafting paper), Swiss (International Typographic — black/white with red accent), Bauhaus (primary-color geometric), Brutalist (high-contrast stark). Seed-derived (auto-generated palettes from themes.json): Nord, Catppuccin, etc. Or pass 'dark'/'light' for the default theme in that mode. Overridden by `color` if provided."
    • Changedstructure2 fields changed
      • changedInput schema / properties / detect_findings / description
        Previous value: -"Set to 'true' to detect structural findings"New value: +"Set to 'true' to flag named structural findings. Possible values: unguarded-sink, single-cut-path, multi-cut-path."
      • changedInput schema / properties / node / description
        Previous value: -"Node name for centrality query"New value: +"Node name. When provided, returns per-node centrality (betweenness, closeness, eigenvector) for this specific node instead of the overview."
  3. 1 tool update
    • Changedrender1 field changed
      • changedInput schema / properties / type / description
        Previous value: -"Output format: svg (default) or png. PNG is rasterized server-side via Batik."New value: +"Output format: png (default) or svg. PNG is rasterized server-side via Batik."
  4. 1 tool update
    • Changedrender6 fields changed
      • addedInput schema / properties / direction
        Added value: +{
        +  "description": "Layout direction: LR (left-to-right) or TB (top-to-bottom). Default auto-detects from condensation DAG aspect ratio.",
        +  "type": "string"
        +}
      • addedInput schema / properties / isDark
        Added value: +{
        +  "description": "true or false. Selects the dark or light variant of a named preset. If omitted, defaults to dark unless theme=light.",
        +  "type": "string"
        +}
      • changedInput schema / properties / output / description
        Previous value: -"File path to save the SVG"New value: +"File path to save the rendered image"
      • changedInput schema / properties / structure_layers / description
        Previous value: -"Bitmask for structure overlays. Bits: 1=subsystems, 2=pipelines, 4=cycles, 8=forks, 16=joins, 32=hubs. Default 63 (all on). Pass 0 to hide all."New value: +"Bitmask for structure overlays. Bits: 1=subsystems, 2=pipelines, 4=cycles, 8=forks, 16=joins, 32=hubs, 64=deadlock, 128=overflow. Default 255 (all on). Pass 0 to hide all."
      • changedInput schema / properties / theme / description
        Previous value: -"Color theme: dark or light"New value: +"Color theme: named preset (Blueprint, Swiss, etc.) or dark/light"
      • addedInput schema / properties / type
        Added value: +{
        +  "description": "Output format: svg (default) or png. PNG is rasterized server-side via Batik.",
        +  "type": "string"
        +}
  5. 1 tool update
    • Changedrender1 field changed
      • addedInput schema / properties / color
        Added value: +{
        +  "description": "Seed color hex (#RRGGBB) to generate a custom theme. Overrides theme parameter. One color generates the entire palette.",
        +  "type": "string"
        +}
  6. 6 tool updates
    • Changedcompose2 fields changed
      • changedInput schema / properties / source_a / description
        Previous value: -"EN source code for the first system"New value: +"EN source code or path to .en/.txt file for the first system"
      • changedInput schema / properties / source_b / description
        Previous value: -"EN source code for the second system"New value: +"EN source code or path to .en/.txt file for the second system"
    • Changedequivalent2 fields changed
      • changedInput schema / properties / source_a / description
        Previous value: -"EN source code for the first system"New value: +"EN source code or path to .en/.txt file for the first system"
      • changedInput schema / properties / source_b / description
        Previous value: -"EN source code for the second system"New value: +"EN source code or path to .en/.txt file for the second system"
    • Changedinvariant1 field changed
      • changedInput schema / properties / source / description
        Previous value: -"EN source code describing the system"New value: +"EN source code, or path to .en/.txt file"
    • Changedlive1 field changed
      • changedInput schema / properties / source / description
        Previous value: -"EN source code describing the system"New value: +"EN source code, or path to .en/.txt file"
    • Changedrender2 fields changed
      • changedInput schema / properties / source / description
        Previous value: -"EN source code describing the system"New value: +"EN source code, or path to .en/.txt file"
      • changedInput schema / properties / view / description
        Previous value: -"View mode: flow (default), actors (swimlane by actor), locations (grouped by context), summary (one node per subsystem)"New value: +"Group by: actors (partition by actor) or locations (partition by location). Default auto-detects topology."
    • Changedstructure1 field changed
      • changedInput schema / properties / source / description
        Previous value: -"EN source code describing the system"New value: +"EN source code, or path to .en/.txt file"
  7. 1 tool update
    • Changedrender2 fields changed
      • removedInput schema / properties / show_regions
        Removed value: -{
        -  "description": "Show structural regions like fork, pipeline, join. Default true",
        -  "type": "string"
        -}
      • addedInput schema / properties / structure_layers
        Added value: +{
        +  "description": "Bitmask for structure overlays. Bits: 1=subsystems, 2=pipelines, 4=cycles, 8=forks, 16=joins, 32=hubs. Default 63 (all on). Pass 0 to hide all.",
        +  "type": "string"
        +}
  8. 1 tool update
    • Changedrender1 field changed
      • removedInput schema / properties / show_locations
        Removed value: -{
        -  "description": "Show location zones from at: clauses. Default true",
        -  "type": "string"
        -}
  9. 1 tool update
    • Changedrender2 fields changed
      • addedInput schema / properties / show_locations
        Added value: +{
        +  "description": "Show location zones from at: clauses. Default true",
        +  "type": "string"
        +}
      • addedInput schema / properties / show_regions
        Added value: +{
        +  "description": "Show structural regions like fork, pipeline, join. Default true",
        +  "type": "string"
        +}
  10. 1 tool update
    • Changedrender1 field changed
      • addedInput schema / properties / view
        Added value: +{
        +  "description": "View mode: flow (default), actors (swimlane by actor), locations (grouped by context), summary (one node per subsystem)",
        +  "type": "string"
        +}
  11. 1 tool update
    • Changedrender1 field changed
      • addedInput schema / properties / output
        Added value: +{
        +  "description": "File path to save the SVG",
        +  "type": "string"
        +}
  12. 19 tool updates
    • Removedanalyze
    • Removedbetween
    • Removedcategorize
    • Changedcompose4 fields changed
      • changedInput schema / properties / links / description
        Previous value: -"Entity links e.g. 'a.node1=b.node2, a.node3=b.node4'"New value: +"Entity links e.g. 'a.node1=b.node2'"
      • addedInput schema / properties / source
        Added value: +{
        +  "description": "EN source code for extract mode",
        +  "type": "string"
        +}
      • addedInput schema / properties / subsystem
        Added value: +{
        +  "description": "Subsystem name for extract mode",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "source_a",
        -  "source_b",
        -  "links"
        -]New value: +[]
    • Removedconserve
    • Removeddetail
    • Removeddiff
    • Removeddistance
    • Addedequivalent
    • Removedevolve
    • Removedextract
    • Removedimpact
    • Addedinvariant
    • Addedlive
    • Removedlocality
    • Addedreachable
    • Removedresponsibility
    • Addedstructure
    • Removedtrace
  13. 2 tool updates
    • Addedlocality
    • Addedresponsibility

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    AI-native architecture diagramming for MCP clients (Claude Code, Cursor, Windsurf). The calling agent authors the graph (nodes, groups, edges); Flowgraf validates it, lays it out deterministically with ELK, renders an SVG + Mermaid, and returns a link to a live, editable canvas you can refine by chat, drag, or one-click AI design review. Agent-authored ops — no API key and no LLM cost to the calle
    3
    71
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    The diagram-quality layer for AI agents — an opinionated Excalidraw methodology (isomorphism test, evidence artifacts, multi-zoom, container discipline) plus a render-view-fix loop. Accepts skeleton and Mermaid input, 5 publishable themes, dual Node/Python renderer. Proven on a 77-diagram published book.
    4
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Deterministic AI safety policy engine with Z3 formal verification. Write, verify, simulate, and enforce machine-verifiable safety constraints for AI agents. Completely outside the LLM.
    6
    16
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.5/5.0
Disambiguation5/5

Each tool targets a distinct analysis operation: compose for merging/extracting, equivalent for comparison, invariant for property checking, live for deadlock/boundedness, reachable for reachability, render for visualization, and structure for overall shape. No overlapping purposes.

Naming Consistency5/5

All tool names are single-word verbs in lowercase, following a consistent imperative style (compose, equivalent, invariant, live, reachable, render, structure). No mixing of conventions.

Tool Count5/5

With 7 tools, the server covers the essential analysis operations for system diagrams without being overly large or minimal. Each tool earns its place.

Completeness5/5

The tool surface covers structural analysis (structure), behavioral properties (invariant, live, reachable), comparison (equivalent), composition (compose), and visualization (render). No obvious gaps for the stated analysis purpose.