capabilityId and capabilityRevision in application state. Before starting work, render the relevant provider, terms, input, and authority requirements to the user.
Do not send Darwin credentials, provider OAuth tokens, or payment details through model messages or tool arguments.
Recommended tool result contract
Return the smallest complete Darwin response the application needs to route safely: stable identifiers, current status, summary,actionRequired, availableActions, and typed interaction metadata. Do not flatten it into model-authored success prose.
1
Let Claude propose
The model may decide which bounded tool fits the user’s stated intent.
2
Validate in the application
Check schemas, selected revisions, and authorization server-side.
3
Execute through Darwin
Use MCP or the generated SDK from the trusted runtime.
4
Render the real state
Return pauses and terminal results without inventing transitions.