/** * @fileoverview `ntfy_manage_message` — clears or deletes a previously-sent * notification by `sequence_id`. Append-only: the original message stays in * cache; subscribers receive a `message_clear` or `message_delete` event and * update the notification accordingly. Both operations pass through a * user-confirmation gate: the first call returns an input request and the * clear/delete only fires once the retried call carries an approval. * @module mcp-server/tools/definitions/ntfy-manage-message.tool */ import { z } from '@cyanheads/mcp-ts-core'; import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors'; export declare const ntfyManageMessage: import("@cyanheads/mcp-ts-core").ToolDefinition; sequence_id: z.ZodString; operation: z.ZodEnum<{ clear: "clear"; delete: "delete"; }>; base_url: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ event_id: z.ZodString; topic: z.ZodString; sequence_id: z.ZodString; operation: z.ZodEnum<{ clear: "clear"; delete: "delete"; }>; time: z.ZodString; }, z.core.$strip>, readonly [{ readonly reason: "consent_declined"; readonly code: JsonRpcErrorCode.Forbidden; readonly when: "The user was asked to confirm the clear/delete and declined, cancelled, or answered with a payload that did not parse."; readonly severity: "notice"; readonly recovery: "Check with the user which message they meant, then reissue the call with the corrected `topic` and `sequence_id` — do not retry the same arguments unchanged."; }, { readonly reason: "forbidden_topic"; readonly code: JsonRpcErrorCode.Forbidden; readonly when: "Auth required for the target topic."; readonly recovery: "Try an unprotected topic instead; if this topic must stay protected, ask the operator to configure ntfy auth (`NTFY_AUTH_TOKEN`, or `NTFY_AUTH_USERNAME` + `NTFY_AUTH_PASSWORD`, or per-host entries in `NTFY_SERVERS`) before retrying."; }, { readonly reason: "not_found"; readonly code: JsonRpcErrorCode.NotFound; readonly when: "Stricter ntfy variants returned 404 because the sequence_id was never published to this topic, or the cache window has elapsed; ntfy.sh accepts unknown sequences without error."; readonly recovery: "Confirm the topic and `sequence_id` were correct (call `ntfy_fetch_messages` to inspect what is still cached), or accept that the message has aged out (default cache window is 12h)."; }, { readonly reason: "upstream_unreachable"; readonly code: JsonRpcErrorCode.ServiceUnavailable; readonly when: "DNS, connection, or network failure reaching the ntfy server after retries were exhausted."; readonly retryable: true; readonly recovery: "Verify the configured `NTFY_BASE_URL` (or per-call `base_url`) resolves and is reachable; check network connectivity, then retry."; }], undefined>; //# sourceMappingURL=ntfy-manage-message.tool.d.ts.map