Skip to main content
Glama

list_bpmn_process_variables

Read-only

List all process variables referenced in a BPMN diagram, showing read/write access and the elements that use them.

Instructions

List all process variables referenced in a BPMN diagram. Extracts variables from form fields, input/output parameter mappings, condition expressions, script result variables, loop characteristics, call activity variable mappings, and Camunda properties (assignee, candidateGroups, etc.). Returns each variable with its read/write access pattern and the elements that reference it — unless the diagram references a lot of variables, in which case it returns just the names plus a bpmn://diagram/{id}/variables resource_link (pass inline: true to force the full list).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
inlineNoForce the full variable list even for a large diagram that would otherwise be summarized. Default: false.
diagramIdYesThe diagram ID

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
successYes
variableCountYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the readOnly/openWorld annotations, the description discloses a non-obvious behavioral trait: large diagrams return only variable names plus a bpmn://diagram/{id}/variables resource_link, and inline: true forces the full list. It also states the per-variable return shape (read/write access pattern plus referencing elements). This is exactly the kind of conditional behavior an agent cannot infer from annotations or schema.

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?

Three sentences, purpose front-loaded, and the long enumeration of extraction sources is genuinely load-bearing for predicting results. The final sentence is dense but carries the truncation rule and the escape hatch, so it earns its length; only minor trimming is possible.

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?

An output schema exists, yet the description still explains the conditional return behavior and how to defeat the summarization, which is what an agent actually needs to decide on inline. Nothing required to invoke or interpret this tool correctly is missing.

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 coverage is 100%, so the baseline is 3, but the description adds real meaning by explaining the summarization path that inline overrides and by tying it to the resource_link fallback, which the schema text alone does not connect. diagramId still gets no added semantics beyond its schema entry.

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 and resource ('List all process variables referenced in a BPMN diagram') and then enumerates the exact source constructs it scans (form fields, I/O mappings, condition expressions, script results, loop characteristics, call activity mappings, Camunda properties). This is clearly distinguishable from the sibling list_bpmn_elements, which enumerates structural elements rather than variables.

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 when the tool is useful (analyzing variable usage across a diagram) but never states when to prefer it over siblings such as list_bpmn_elements or bpmn_history, nor any exclusions or prerequisites. Usage is left to inference from the purpose statement.

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