Skip to main content
Glama

traverse_decision_tree

Walk a decision tree with your inputs to get a recommendation for module selection, migration path, or org strategy. Filter by phase and area.

Instructions

Walk a decision tree given user inputs to produce a recommendation.

Args: tree_name: Name of the decision tree (e.g. 'module-selection', 'migration-path', 'org-strategy') inputs: JSON string of input parameters for the tree phase: Value chain phase filter (default 'all') area: Area filter (default 'all')

Input Schema

NameRequiredDescriptionDefault
areaNoall
phaseNoall
inputsYes
tree_nameYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.1

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description has to carry the full behavioral burden. It conveys that the tool is a computation returning a recommendation (no side effects implied) and that tree selection steers the outcome, but says nothing about whether tree_name must match a known tree, what happens with invalid inputs, or how filters interact with the traversal.

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?

The purpose sentence is front-loaded and short, followed by a compact per-argument list with no filler. The Args block mostly mirrors the schema, which is mild redundancy but conventional and brief.

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?

An output schema exists, so return shape needn't be explained. Still missing for a call that hinges on a free-form JSON payload: the expected input key structure, valid tree names, and valid phase/area values — all of which the agent would otherwise have to guess.

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 description coverage is 0%, so the Args block is the only source of parameter meaning and it does name all four params with examples and defaults. However, the most consequential parameter, `inputs` as a free-form JSON string, is left with undefined required keys, and no valid values for phase/area are given.

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

Purpose4/5

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

States a concrete verb and resource: 'walk a decision tree given user inputs to produce a recommendation.' An agent knows exactly what the tool does and that the output is a recommendation, though the description never distinguishes this from tree-like siblings such as get_agent_workflow or get_taxonomy.

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?

Usage is only implied by the example tree names ('module-selection', 'migration-path', 'org-strategy'), which hint at planning and selection scenarios. There is no explicit when-to-use/when-not guidance and no statement of how this relates to siblings like plan_multi_country_rollout or assess_migration_readiness.

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