Skip to main content
Glama

export_arch_diagram

Read-only

Exports the 'arch' slice of the current project (kind='arch' blocks + arch-sync/async/db/event/data dependencies) in a universal format. Supported formats: 'mermaid-c4' (Mermaid flowchart, ideal for a GitHub README) and 'plantuml-c4' (PlantUML with C4-Container macros, for a professional rendering). Returns the serialized content + metadata + stats (number of nodes / edges). Does not touch the other slices (org, ERD, ...). Also returns warnings naming WHAT THE FILE DOES NOT CARRY for this project (operational detail — region, capacity, cost, service objective; content blocks; people; progress status) — empty when there is nothing to report. The two formats do not lose the same things: 'plantuml-c4' carries the description of each block, 'mermaid-c4' does not.

Input Schema

NameRequiredDescriptionDefault
formatYesOutput format. 'mermaid-c4' produces a Mermaid flowchart (rendered natively on GitHub/GitLab/Notion). 'plantuml-c4' produces a C4-PlantUML diagram (rendered on any PlantUML server).
expectedProjectIdNoUUID of the project targeted by THIS call. ACTUALLY targets this project instead of the session project. Refused without changing anything if access is not granted.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / expectedProjectId / description
      Previous value: -"UUID du projet visé par CET appel. Cible RÉELLEMENT ce projet au lieu du projet de session. Refusé sans rien modifier si l'accès n'est pas accordé."New value: +"UUID of the project targeted by THIS call. ACTUALLY targets this project instead of the session project. Refused without changing anything if access is not granted."
    • changedInput schema / properties / format / description
      Previous value: -"Format de sortie. 'mermaid-c4' produit un flowchart Mermaid (rendu natif sur GitHub/GitLab/Notion). 'plantuml-c4' produit un diagramme C4-PlantUML (rendu sur tout serveur PlantUML)."New value: +"Output format. 'mermaid-c4' produces a Mermaid flowchart (rendered natively on GitHub/GitLab/Notion). 'plantuml-c4' produces a C4-PlantUML diagram (rendered on any PlantUML server)."
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=true and openWorldHint=false; the description goes well beyond them by disclosing lossiness warnings naming what the file does not carry (region, capacity, cost, service objective, content blocks, people, progress) and by noting that the two formats lose different things (plantuml retains block descriptions, mermaid does not). It also states the return payload (serialized content + metadata + stats), which annotations cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and scope are front-loaded in the first clause, and each sentence carries information (scope, formats, return shape, warnings, format trade-off). It is dense with parentheticals and the closing sentence partially restates the earlier lossiness point, so it is effective but not maximally tight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema present, the description carries the full burden and discharges it: it names the returned artifacts (serialized content, metadata, node/edge stats), the warning channel and what populates it, and the scope boundary versus other slices. An agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3, but the description adds decision-relevant meaning beyond the schema: the trade-off that 'plantuml-c4' carries each block's description while 'mermaid-c4' does not, and staging hints ('rendered natively on GitHub/GitLab/Notion' vs a PlantUML server) that help pick a format. expectedProjectId semantics live in the schema, so this is not fully self-sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Exports) plus the exact resource ('arch' slice of the current project) and enumerates the block/dependency kinds included. It also explicitly scopes itself away from sibling exports ('Does not touch the other slices (org, ERD, ...)'), so an agent can separate it from export_data_model or export_diagram without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives real selection guidance between the two supported formats: 'mermaid-c4' is 'ideal for a GitHub README' and 'plantuml-c4' is 'for a professional rendering'. What is missing is guidance on when to reach for this tool versus other export/validate siblings (export_diagram, validate_arch), so context is clear but exclusions are not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.