DESTRUCTIVE

delete_decision

Deletes a decision after the person confirms; rejecting or deprecating keeps it on the record instead.

Delete a decision by decision_id. Its reference is never reused and a decision that superseded it loses the link. The removal goes through the same action the Decisions page runs and decision.deleted goes out. The tool is destructive: a Heimdall turn pauses for the person's confirmation and an MCP client asks before sending. Prefer moving a decision to rejected or deprecated with update_decision, so the record keeps why the team chose otherwise. A staff token with decision:delete on the project is needed.

Requires ability

The token behind the MCP session must hold it, or the call is refused with TOKEN_MISSING_ABILITY.

Runs the same action as

The REST endpoint and this tool share one action, so validation, permissions and events are identical.

Fires one event

Delivered to every endpoint subscribed to it once the change is made.

Annotations

Destructive

A client that honours annotations asks a person before running it.

Arguments

decision_id*string

UUID of the decision to delete.

What it returns

{  "data": {    "decision_id": "d0e1f2a3-b4c5-4d6e-8f7a-8b9c0d1e2f3a",    "deleted": true  }}

How it fails

RESOURCE_NOT_FOUND

unknown decision_id, or a decision outside the token's scope or the person's visibility.

FORBIDDEN

the token is a client guest's, or the holder's role on the project does not carry decision:delete.

TOKEN_MISSING_ABILITY

token lacks decision:delete.

How is this guide?

Last updated on