list_webhook_deliveries
The team's outbound webhook delivery log, newest first — what was posted, what the endpoint answered, and where each row is on the retry ladder.
Every event Zuse Bifrost posts to one of the team's endpoints is a delivery: one row per endpoint per event, with the signed envelope that was sent, the target's response status and an excerpt of its body, and the row's position on the retry ladder. This is the application's delivery log over MCP, for seeing why a consumer rejected an event before deciding to retry_webhook_delivery or retry_dead_webhook_deliveries.
The status tabs
pending: queued or waiting for its next attempt; delivered: the target
answered 2xx; failed: the last attempt failed and the ladder has more
tries; dead: the ladder ran out, and only a retry brings it back. all is
the default. Anything else is VALIDATION_FAILED.
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.
Annotations
It reads and never changes anything.
Arguments
statusstringoptionalTab of the delivery log: all, pending, delivered, failed or dead. Defaults to all.
allpendingdeliveredfaileddeadlimitintegeroptionalDeliveries per page (1..100, default 25).
1max100pageintegeroptional1-indexed page number.
1What it returns
{ "data": [ { "id": "34f1d78e-05a2-4b69-8c3d-7e921ab06f45", "endpoint_id": "c62a08f4-1b7d-4e35-9860-a37f5d21e0b9", "event": "project.status_changed", "event_id": "01HXZ3Q8M7Y2K4N6P9R1T3V5W7", "status": "failed", "attempts": 2, "response_status": 500, "response_excerpt": "upstream unavailable", "payload": { "id": "evt_01HXZ3Q8M7Y2K4N6P9R1T3V5W7", "type": "project.status_changed", "created_at": "2026-10-24T16:40:00+00:00", "api_version": "2026-11-01", "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13", "data": { "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13", "key": "CRM", "previous_status": "planning", "status": "in_development" } }, "next_attempt_at": "2026-10-24T16:50:00+00:00", "delivered_at": null, "dead_lettered_at": null, "created_at": "2026-10-24T16:40:00+00:00" } ], "meta": { "page": 1, "limit": 25, "total": 312, "has_more": true }}payload is the envelope exactly as the endpoint received it, so a consumer's bug can be reproduced from the log. response_excerpt is the first few kilobytes of the target's body, not the whole response.
How it fails
VALIDATION_FAILEDstatus is not one of the five tabs, or limit/page is out of range.
AUTHENTICATION_REQUIREDno authenticated user on the request.
TOKEN_MISSING_ABILITYtoken lacks webhook-delivery:view-any.
How is this guide?
Last updated on