Skip to main content

Docs

MCP tool reference

Connect NoCrash to your AI client in one line, then call any of the nine tools. Each one lists its inputs and whether it reads or writes.

Connect in one line

For Claude Code, paste this in your terminal and swap in your key:

claude mcp add --transport http nocrash \
  https://nocrash.io/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"

Get your key under Settings → API keys in NoCrash. It’s shown once — copy it.

Using Claude Desktop, Cursor, or another MCP client? Point it at https://nocrash.io/mcp and send your key as a bearer token in the Authorization header. Verify by listing tools — you’ll see nocrash with nine of them.

How it works

  • Authentication: every call carries your API key as a bearer token. No key, no answer.
  • Read vs. write: most tools only read. A few write — they send a heartbeat, record a failure, or kick off a fresh check. Each tool below is tagged so you (and your agent) know which is which.
  • Refresh limits: nocrash_refresh_watch shares the dashboard’s limit — a 60-second wait between checks and 10 per hour per connection — so an agent loop can’t hammer your tools.

The nine tools

The list below is generated from the live server, so it always matches exactly what your agent sees when it connects.

nocrash_list_watches read-only

List every watched item with its current status (green/yellow/red), optionally filtered by status. Also returns an overall health summary using the same display buckets (needs_help, needs_a_look, fine, waiting) the dashboard and nocrash_get_health show, so totals never contradict across tools. Each watch includes `last_error_message` (most recent error seen, regardless of current status) and `last_error_state` ("current" or "resolved"); both are nil when the watch has never errored.

Inputs

  • status string optional

    Filter by raw status. Omit to see all watches.

    One of: green, yellow, red

nocrash_get_health read-only

Get overall health across every watched item — total count, counts by dashboard bucket (needs_help, needs_a_look, fine, waiting), overall status, last check time, and a plain-language one-liner. Counts use the same display-status precedence as the dashboard, so `needs_help` excludes never-pinged or unreachable items that still carry stale raw-red status.

No inputs — call it with an empty arguments object.

nocrash_get_watch read-only

Get full details for one watched item: schedule, recent activity, error history, and next expected run. `last_error_message` is the most recent error string seen, regardless of current status; use `last_error_state` ("current" or "resolved") to tell whether it's the current problem or already cleared. Both are nil when the watch has never errored.

Inputs

  • watch_id string required

    The watch ID (e.g., mon_a1b2c3d4e5f6)

nocrash_list_events read-only

List event history across your watched items — filter by watch, by event type, or pass `event_id` to fetch a single event in full detail. Event types span the full range NoCrash watches for: routine check-ins, failures, recoveries, missed runs, silent step-level breakage, workflow on/off changes upstream, and browser-side errors from vibe-coded apps (script crashes, unhandled promise rejections, failed network calls, page loads).

Inputs

  • watch_id string optional

    Filter events for a specific watched item (e.g., mon_a1b2c3d4e5f6). Omit for all watches.

  • event_id integer optional

    Get a single event by ID for full details. Overrides other filters.

  • event_type string optional

    Filter by event type. ping = healthy check-in; fail/error = the workflow broke; recovery = it's running again; missed_run = an expected run didn't happen; silent_error = the workflow finished but a step quietly broke; workflow_disabled/workflow_reactivated = the workflow was turned off or back on in the provider; js_error/js_unhandled_rejection = a script crashed in a user's browser; js_fetch_fail = a network call from the browser failed; page_load = someone loaded a page (informational).

    One of: ping, fail, error, recovery, missed_run, workflow_disabled, workflow_reactivated, js_error, js_unhandled_rejection, js_fetch_fail, page_load, silent_error

  • since string optional

    ISO8601 datetime — only return events after this time. Default: last 24 hours.

  • limit integer optional

    Max events to return (1-100, default 50).

nocrash_get_brief read-only

Get the latest daily brief — the most recently generated plain-language summary of what happened overnight across your watched items. Read-only; never triggers fresh AI generation.

Inputs

  • brief_type string optional

    Type of brief. Default: morning.

    One of: morning, evening

  • format string optional

    Response format. Default: plain. Both formats return the same content in V1; structured format will include machine-parseable sections in a future release.

    One of: plain, structured

nocrash_search_errors read-only

Search every error event by keyword. Matches against error messages, failing node names, plain-language error context, and AI-suggested fixes across all your watched items.

Inputs

  • query string required

    Search keyword (e.g., 'Slack', 'timeout', '403')

  • limit integer optional

    Max results (1-50, default 10).

nocrash_send_ping writes

Send a heartbeat for a watched item to confirm the workflow is running. This is a write — it resets the failure count and updates status to green.

Inputs

  • watch_id string required

    The watch ID (e.g., mon_a1b2c3d4e5f6)

  • message string optional

    Optional message (e.g., 'Processed 50 records')

nocrash_report_failure writes

Report that a workflow failed. Records the error and updates the watched item's status. Include as much detail as possible — error message, failing step, and any context an agent or human will need to debug.

Inputs

  • watch_id string required

    The watch ID (e.g., mon_a1b2c3d4e5f6)

  • error_message string required

    What went wrong (e.g., 'Slack API returned 403 Forbidden')

  • failed_node string optional

    Which step/node failed (e.g., 'Send Slack Message')

nocrash_refresh_watch writes

Force a fresh check of a watched item now instead of waiting for the next scheduled poll. Shares the dashboard refresh cooldown — 60-second wait between refreshes and a 10-per-hour ceiling per connection. Push-based watches (JS snippet) update on their own when data arrives and can't be refreshed on demand. Call nocrash_get_watch a few seconds later to see the new status.

Inputs

  • watch_id string required

    The watch ID (e.g., mon_a1b2c3d4e5f6)