Skip to main content
Glama

diff_flow

Show the structural diff between two versions of a version-controlled flow: which nodes and edges were added, removed, or changed. This is the code review for your phone system — see exactly what a change did before you ship it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoTarget version number (defaults to the current version).
fromYesBase version number.
flowIdYesThe flow id.

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It signals a read-only operation through 'Show' and describes the output semantics (added/removed/changed nodes and edges). While it doesn't cover authentication or rate limits, the non-destructive nature is clear and sufficient for this type of tool.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the core function and followed by a memorable analogy. Every word serves a purpose; no padding or redundancy.

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?

The description explains what the tool returns (structural diff of nodes and edges), when to use it (before shipping), and the parameters are fully documented in the schema. No output schema is present, but the description adequately communicates the return concept for this simple tool.

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?

Schema coverage is 100% and each parameter is already well-described ('Base version number', 'Target version number', 'The flow id'). The tool description adds no extra parameter-level detail beyond the metaphor, aligning with the baseline of 3.

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?

The description clearly states the tool's function: 'Show the structural diff between two versions of a version-controlled flow: which nodes and edges were added, removed, or changed.' This is a specific verb+resource combination that distinguishes it from siblings like import_flow or test_flow.

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

Usage Guidelines3/5

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

The description implies a use case ('see exactly what a change did before you ship it') but does not explicitly compare to alternatives such as test_flow or import_flow. No when-not-to-use guidance is given, making the usage context implied rather than explicit.

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.

TDQS

A4/5.0
Disambiguation4/5

Most tools are clearly distinct by resource (monitors, suites, flows, numbers, recordings), but run_test and test_flow could be confused since both execute tests, though their scopes differ. The descriptions help disambiguate them.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (create_, get_, list_, run_, verify_, etc.), with no camelCase or mixed conventions. Even compound names like get_monitor_health and verify_number_confirm remain predictable.

Tool Count4/5

At 16 tools, the set is slightly above the optimal 3-15 range, but the breadth of the voice-agent testing/monitoring domain justifies each tool's existence. It feels well-scoped rather than bloated.

Completeness2/5

The tool set lacks update/delete operations for most entities (monitors, suites, flows) and omits a get_run tool to retrieve individual live test results, leaving significant gaps that agents cannot work around. This will cause failures in lifecycle management and live-run result retrieval.

Resources