Skip to content

Dead Man's Snitch MCP by usefulapi

by usefulapi.io · remote · no sign-in to list tools · v1.3.3 · published by io.usefulapi

Read Dead Man's Snitch monitors and status; create, tag, pause and unpause snitches.

Deletes · 3Changes · 3

8 tools: 3 can delete or cancel things, 3 change things and 2 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http dead-mans-snitch https://dead-mans-snitch.usefulapi.io/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

8 tools

Deletes or cancels 3Claude Code: deny
  • deadmanssnitch_pause_snitchWRITE: pause a snitch, which SILENCES its alerts: a job that stops running goes unnoticed while it is paused.No findings

    Why it is in this group

    • The description's first verb is "write": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: pause a snitch, which SILENCES its alerts: a job that stops running goes unnoticed while it is paused. `until` says when alerting resumes: 'healthy' (default: on the next healthy check-in), 'unpaused' (stays paused until deadmanssnitch_unpause_snitch) or a future ISO 8601 time. A snitch that has never checked in (pending) cannot be paused. POST /v1/snitches/{token}/pause.

    Annotations the server declares

    • title: Pause snitch
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • deadmanssnitch_remove_tagWRITE: remove one tag from a snitch (the snitch itself is untouched).No findings

    Why it is in this group

    • The name "deadmanssnitch_remove_tag" says "remove": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: remove one tag from a snitch (the snitch itself is untouched). Returns the remaining tags. DELETE /v1/snitches/{token}/tags/{tag}.

    Annotations the server declares

    • title: Remove tag
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • deadmanssnitch_update_snitchWRITE: change a snitch.No findings

    Why it is in this group

    • The name "deadmanssnitch_update_snitch" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: change a snitch. Only the fields you pass change. `tags` REPLACES the whole tag list (use deadmanssnitch_add_tags to add) and `alert_email` replaces the alert recipients (an empty list = all team members). Returns the updated snitch with the token masked. PATCH /v1/snitches/{token}.

    Annotations the server declares

    • title: Update snitch
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
Changes things 3Claude Code: ask
  • deadmanssnitch_add_tagsWRITE: add one or more tags to a snitch, keeping the existing ones.No findings

    Why it is in this group

    • The name "deadmanssnitch_add_tags" says "add": a word for a change.
    Description, as the server wrote it
    WRITE: add one or more tags to a snitch, keeping the existing ones. Returns the snitch's full tag list. POST /v1/snitches/{token}/tags.

    Annotations the server declares

    • title: Add tags
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • deadmanssnitch_create_snitchWRITE: create a new snitch (monitor).No findings

    Why it is in this group

    • The name "deadmanssnitch_create_snitch" says "create": a word for a change.
    Description, as the server wrote it
    WRITE: create a new snitch (monitor). Returns it with its check-in URL (https://nosnch.in/<token>), which the job must call on every run; keep it secret. Fails with 402 when the plan's snitch limit is reached. POST /v1/snitches.

    Annotations the server declares

    • title: Create snitch
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • deadmanssnitch_unpause_snitchWRITE: resume alerting for a paused snitch (safe on a snitch that is not paused).No findings

    Why it is in this group

    • The description's first verb is "write": a word for a change.
    Description, as the server wrote it
    WRITE: resume alerting for a paused snitch (safe on a snitch that is not paused). POST /v1/snitches/{token}/unpause.

    Annotations the server declares

    • title: Unpause snitch
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Only reads 2Claude Code: allow
  • deadmanssnitch_get_snitchOne snitch with its full details, including the check-in URL (https://nosnch.in/<token>).No findings

    Why it is in this group

    • The name "deadmanssnitch_get_snitch" says "get": a word for reading.
    Description, as the server wrote it
    One snitch with its full details, including the check-in URL (https://nosnch.in/<token>). The check-in URL is a secret: anyone who has it can check in and so silence the alert; share it only where the job runs. GET /v1/snitches/{token}.

    Annotations the server declares

    • title: Get snitch
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • deadmanssnitch_list_snitchesList the snitches (cron/heartbeat monitors) of the account with status (pending, healthy, failed, errored, paused), interval, alert type, tags and last check-in.No findings

    Why it is in this group

    • The name "deadmanssnitch_list_snitches" says "list": a word for reading.
    Description, as the server wrote it
    List the snitches (cron/heartbeat monitors) of the account with status (pending, healthy, failed, errored, paused), interval, alert type, tags and last check-in. Tokens are masked (the token is also the check-in secret); pass the masked token or the name to the other snitch tools. The API has no paging: all snitches come back. Optionally filter by tags (must have all) or status. GET /v1/snitches.

    Annotations the server declares

    • title: List snitches
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.3.3. Values in angle brackets are yours to fill in.

claude mcp add --transport http dead-mans-snitch https://dead-mans-snitch.usefulapi.io/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__dead-mans-snitch__deadmanssnitch_list_snitches",
      "mcp__dead-mans-snitch__deadmanssnitch_get_snitch"
    ],
    "ask": [
      "mcp__dead-mans-snitch__deadmanssnitch_create_snitch",
      "mcp__dead-mans-snitch__deadmanssnitch_add_tags",
      "mcp__dead-mans-snitch__deadmanssnitch_unpause_snitch"
    ],
    "deny": [
      "mcp__dead-mans-snitch__deadmanssnitch_update_snitch",
      "mcp__dead-mans-snitch__deadmanssnitch_remove_tag",
      "mcp__dead-mans-snitch__deadmanssnitch_pause_snitch"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as dead-mans-snitch. Review it before you use it.