Skip to content

[Bug]: Composite tools guide: incorrect template paths for elicitation action and content #629

@danbarr

Description

@danbarr

Summary

The composite tools guide documents the following template paths for elicitation step results:

Documented path Description
{{.steps.id.action}} Elicitation action (accept/decline/cancel)
{{.steps.id.content}} Elicitation response content

These paths resolve to <no value> at runtime. The actual working paths are:

Correct path Description
{{.steps.id.output.action}} Elicitation action (accept/decline/cancel)
{{.steps.id.output.content}} Elicitation response content

The action and content are stored inside the step's output map, consistent with how tool step results are accessed (.steps.id.output.field).

Impact

Any composite tool using a condition like {{eq .steps.approval.action "accept"}} silently evaluates to false, causing conditional steps to always be skipped — even when the user accepts the elicitation.

Verified behavior

Tested by adding a debug output field:

  • {{.steps.approval.action}}<no value>
  • {{.steps.approval.output.action}}accept

The same comment in the source code (pkg/vmcp/composer/composer.go lines 87-92) also has the incorrect paths.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdocumentationImprovements or additions to documentation
    No fields configured for Bug 🐞.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions