Tool boundary
- Make Search available as a read-only tool.
- Keep each Action operation separate so approvals and other writes remain visible.
- Store capability revisions,
actionId, andrequestIdin application state. - Return Darwin’s structured nonterminal state to the agent without rewriting it as success.
https://mcp.darwin.so/mcp for MCP or install @darwinso/sdk for direct server integration.
Recommended tool shape
Return structured Darwin responses to the application layer. Let the UI own sensitive interactions and exact approvals instead of asking the model to simulate them.