Decline handoff
chap.handoff.declineRefuse a proposed handoff so tasks stay with the proposer, record why, and prevent later acceptance or rejection of that proposal.
Instructions
Decline a proposed handoff. The tasks stay with the proposer and nothing is reassigned, which is the difference from chap.handoff.accept. Declining resolves the proposal for good: a later accept or decline on the same handoff answers -32051, and trying again means a fresh proposal. The reason is recorded so the proposer can route the work elsewhere.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"workspace": "<workspace>",
"from": "<from>",
"handoff_id": "<handoff_id>"
},
"name": "chap.handoff.decline"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| from | Yes | Participant URI, e.g. 'human:alice@example.org' or 'agent:bot@local'. | |
| reason | No | Why the handover is refused. Recorded so the proposer can route it elsewhere. | |
| workspace | Yes | Workspace identifier, e.g. 'wsp_techcorp_support'. | |
| handoff_id | Yes | Identifier returned by chap.handoff.propose. A handoff already accepted or declined is refused with -32051. | |
| suggested_target | No | Who should take it instead, if the decliner knows. |