Skip to main content
Glama

Revisar sintaxis Graphviz DOT

dot-check
Read-onlyIdempotent

Revisa de forma básica un texto DOT de Graphviz sin renderizarlo: encabezado ([strict] graph|digraph [id] {), llaves/corchetes y comillas balanceados, -> solo en digraph y -- solo en graph, y atributos clave=valor. Cuenta nodos y aristas. Cuándo: hay que leer, construir o revisar con exactitud una URL, una cabecera HTTP, un token, una versión, un rango de IP, un documento HTML o Markdown o un archivo para agentes. No para: revisar de forma básica un diagrama Mermaid sin renderizarlo (mermaid-check). Efectos secundarios: ninguno (solo lectura, sin red, sin estado guardado). Determinista: la misma entrada da la misma salida. Límites: entrada JSON de hasta 64 KB, 1 s por llamada, resultado de hasta 1 MB.

EN: Sanity-checks Graphviz DOT text without rendering: header ([strict] graph|digraph [id] {), balanced braces/brackets and quotes, -> only in digraphs and -- only in graphs, and attribute lists of key=value. Counts nodes and edges. Not a full parser. [EN completo / full EN: inputSchema.description]

Input Schema

NameRequiredDescriptionDefault
textYesDOT source (string; required).

Output Schema

NameRequiredDescriptionDefault
edgesNo
nodesNo
validNo
issuesNo
directedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / text / examples
      Added value: +[
      +  "digraph pedido {\n  rankdir=LR;\n  crear -> pagar -> enviar [label=\"ok\", color=green];\n  pagar -> cancelar;\n}"
      +]
  2. Changed1 schema field changed
    • addedInput schema / description
      Added value: +"EN: Sanity-checks Graphviz DOT text without rendering: header ([strict] graph|digraph [id] {), balanced braces/brackets and quotes, -> only in digraphs and -- only in graphs, and attribute lists of key=value. Counts nodes and edges. Not a full parser. When: a URL, HTTP header, token, version string, IP range, HTML or Markdown document or agent-readiness file has to be parsed, built or checked exactly. Not for: sanity-checking Mermaid diagram text without rendering it (mermaid-check). Side effects: none (read-only, no network access, no stored state). Deterministic: the same input gives the same output. Limits: JSON input up to 64 KB, 1 s per call, result up to 1 MB."
  3. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already cover readOnly/openWorld/idempotent/destructive, yet the description still earns credit by adding operational limits absent from the annotations: 64 KB JSON input, 1 s per call, 1 MB result, and the scope caveat "Not a full parser". The side-effects and determinism sentences largely restate the annotations, but the limits and the partial-parser caveat are genuine added context.

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

Conciseness3/5

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

The check list is dense and front-loaded, and the ES/EN split is sensible. But the "Cuándo" clause is wasted — worse, wrong — length, and the EN block near-verbatim duplicates the inputSchema description, so part of the text does not earn its place at the call site.

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

Completeness3/5

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

Annotations plus an output schema mean safety and return shape need no prose coverage, and the check list makes the contract clear. The definition is still missing an accurate statement of when to reach for it (the 'when' sentence points at URLs/HTTP headers instead), and the 64 KB vs 256 KB mismatch leaves the input-size boundary ambiguous.

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

Parameters3/5

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

There is a single required parameter with 100% schema description coverage and a worked example, so the schema already does the work and baseline 3 applies. The description adds what is inspected in the text but nothing about the parameter itself, and the stated "64 KB" input cap conflicts with the schema's `maxLength: 262144` (256 KB), which could mislead on truncation behavior.

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+resource ("Revisa ... un texto DOT de Graphviz sin renderizarlo") and enumerates exactly what it checks: header form, balanced braces/brackets/quotes, `->` only in digraphs, `--` only in graphs, key=value attributes, plus node/edge counts. It explicitly names the sibling it is not ("No para: ... Mermaid ... (mermaid-check)"), so an agent can separate dot-check from mermaid-check without opening either schema.

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

Usage Guidelines2/5

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

The exclusion clause is precise and routes to the right sibling (mermaid-check). However the "Cuándo" sentence is off-topic boilerplate carried over from another tool ("una URL, una cabecera HTTP, un token, ... un documento HTML o Markdown") and does not describe a DOT-checking scenario at all, which actively misleads selection. Correct exclusion plus an actively wrong 'when' clause leaves the agent to infer the real usage from the purpose sentence alone.

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.

Resources