wait_for_mail
Pauses an agent session until new channel activity—mail, obligations, proposals, or replies—arrives, so the agent stays available without ending its turn. Returns pending items and retry on timeout.
Instructions
Sleep inside the channel until something NEW appears for you — new mail, a fresh obligation, a proposal to decide, a ball thrown back at you, a resolution to verify. Use it when you have finished your own work and want to stay available to the partner instead of ending the turn (wait_for_reply waits for a reply to ONE message; this waits for any event). It wakes on a counter that GROWS above what you already had when you called, not on the backlog you were already carrying. That backlog comes back as 'pending_at_entry' so it is not hidden — but it is not a reason to wake: a role with one open round it is deliberately postponing would otherwise be woken instantly, every time, and waiting is broken precisely in the periods when waiting is what you need. Pass ignore_backlog=false for the old behaviour (return immediately if anything at all is pending). On an empty wait it returns {timed_out: true, retry: true}; the per-call wait is capped at 50s (below MCP client tool timeouts), so wait longer by calling again in a loop. Nothing is lost between calls.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| timeout_s | No | ||
| ignore_backlog | No | ||
| poll_interval_s | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||