Skip to content

Advertise structured start_workflow arguments in the MCP schema #57

Description

@rmcdaniel

Status Summary

The Sample App's start_workflow MCP tool accepts ordered PHP workflow arguments, but its published tool schema declares every arguments array item as a string. The sandbox workflow exposed at sample-app:main commit 45f68b9e876a5094c61f2f1f393e8923820e7262 requires its first argument to be an array of {type, args} tool-call objects.

A schema-conforming MCP client therefore cannot construct the documented sandbox request: the advertised schema rejects the structured value that the handler requires. Current sandbox boundary coverage invokes the tool handler with nested arrays directly and does not validate the public tools/list schema against that request.

How to fix

Make the ordered-argument schema truthfully admit the JSON value shapes supported by workflow handlers, including arrays, objects, strings, numbers, booleans, and null where applicable. Keep runtime argument-count boundaries intact. Add protocol-level coverage that obtains the published tool schema, validates a real structured sandbox start request against it, calls start_workflow, and proves the workflow is accepted without bypassing the MCP contract.

Delete when

A conforming MCP client can validate and submit the configured sandbox workflow's structured tool-call argument using the published start_workflow schema, and tests protect both schema truthfulness and runtime argument limits.

Metadata

Metadata

Assignees

No one assigned

    Labels

    authority:githubGitHub is the authoritative lifecycle record for this workbeta:compatibleMay be completed without changing the frozen beta contractkind:defectA public product behavior is incorrectpriority:P2Normal-priority product workrepo:sample-appOwned by the sample application repositorystatus:readyReady for implementation

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions