Skip to content

data-breach-detector

by beepboop2025 · remote · local (pypi) · no sign-in to list tools · v0.3.2 · published by GitHub user beepboop2025

Read-only breach intel, full history 2007-today: reports THAT an org was breached, never the data.

Changes · 4

7 tools: 4 change things and 3 only read.

Scanned Oct 21, 2026

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

claude mcp add --transport http data-breach-detector https://breach.seiche.info/mcp

Findings

Matches of fixed checks, with the text they matched.

2 info
  • The description mentions "credential".

    Matched text

    description: "...a, and a redaction pass strips anything credential-shaped before it is returned. Use s..."

    What this check looks for
  • The description mentions "credential".

    Matched text

    description: "...arbitrary fetching or crawling, no credential or PII output. Check this first if anot..."

    What this check looks for

Tools

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

7 tools

Changes things 4Claude Code: ask
  • assess_threatClassify a piece of security text you supply — an advisory, alert or forum post — into a threat level, matched categories, financial-target flags, a confidence score and a recommen…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Classify a piece of security text you supply — an advisory, alert or forum post — into a threat level, matched categories, financial-target flags, a confidence score and a recommended action. Pure local analysis: it collects nothing, stores nothing and reaches no network; the text never leaves the server. Use it to triage findings surfaced by breach_news or from your own monitoring.

    Annotations the server declares

    • title: Threat-text triage
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: false
  • breach_statsAggregate the full breach archive into analyst-grade statistics: incidents and accounts exposed per year, per source, per exposed data type, per threat level, or per ransomware act…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Aggregate the full breach archive into analyst-grade statistics: incidents and accounts exposed per year, per source, per exposed data type, per threat level, or per ransomware actor — plus the five largest incidents ever recorded. Use it to answer 'how has breach volume trended since 2015', 'which ransomware groups have the most victims' or 'how often are passwords part of a breach'. Aggregate counts only; no leaked records.

    Annotations the server declares

    • title: Breach archive statistics
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • breach_timelineBuild the incident-by-incident CHRONOLOGY of one organization across every source and all history, with judgment on top: first and latest incident, incidents per year, whether the …No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Build the incident-by-incident CHRONOLOGY of one organization across every source and all history, with judgment on top: first and latest incident, incidents per year, whether the organization is a repeat victim, worst threat level and total accounts ever exposed. Those summary fields cover EVERY incident on record. The timeline list carries a window of them, oldest first within the window, defaulting to the most recent limit incidents and paging backwards with offset, so an organization with a long history shows its current state first rather than only its ancient one. Repeat victimhood is a forward-looking risk signal: organizations named more than once have demonstrably not closed the gap. Metadata only; never the leaked data. For a yes/no presence check use check_exposure.

    Annotations the server declares

    • title: Entity breach timeline
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • check_exposureAnswer whether a domain, company or brand appears in public breach or ransomware DISCLOSURES across ALL history (2007 → today): yes/no with mention count, worst threat level, total…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Answer whether a domain, company or brand appears in public breach or ransomware DISCLOSURES across ALL history (2007 → today): yes/no with mention count, worst threat level, total accounts exposed across matches, the exposed data TYPES, and the matching disclosure metadata — never the exposed records themselves. This is a triage signal built from disclosure feeds, not proof of compromise; confirm through authorized channels before acting. For the incident-by-incident chronology of one entity, use breach_timeline; for a recent-news sweep, use breach_news. mentions, the aggregates and the data types always cover every match; matches carries one page of them, sized by limit and walked with offset.

    Annotations the server declares

    • title: Entity exposure check
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
Only reads 3Claude Code: allow
  • breach_historySearch the FULL historical breach archive — every incident this server knows about, back to 2007: HaveIBeenPwned's verified breach directory, the 2020-2025 ransomwatch leak-site ar…No findings

    Why it is in this group

    • The description's first verb is "search": a word for reading.
    Description, as the server wrote it
    Search the FULL historical breach archive — every incident this server knows about, back to 2007: HaveIBeenPwned's verified breach directory, the 2020-2025 ransomwatch leak-site archive (~16k victims), the RansomLook live tracker and SEC 8-K Item 1.05 filings. Filter by keyword, year range, sector, exposed data type or minimum scale; order by date or size. Returns disclosure metadata only, never breach contents. Use this for questions like 'what were the biggest breaches of 2013' or 'which airlines have ever been hit by ransomware'.

    Annotations the server declares

    • title: Historical breach search
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • breach_newsRead recent breach and ransomware DISCLOSURES from public threat-intel feeds (HaveIBeenPwned, the RansomLook live leak-site tracker and SEC 8-K Item 1.05 filings), newest first.1 finding

    Why it is in this group

    • The description's first verb is "read": a word for reading.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "...a, and a redaction pass strips anything credential-shaped before it is returned. Use s..."

      What this check looks for
    Description, as the server wrote it
    Read recent breach and ransomware DISCLOSURES from public threat-intel feeds (HaveIBeenPwned, the RansomLook live leak-site tracker and SEC 8-K Item 1.05 filings), newest first. Every row is metadata only — entity, date, scale, exposed data TYPES, threat level and source — never the leaked data, and a redaction pass strips anything credential-shaped before it is returned. Use sector to narrow to an industry keyword; for one specific organization use check_exposure; for all-time history use breach_history.

    Annotations the server declares

    • title: Recent breach disclosures
    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • feed_sourcesList the public disclosure feeds this server aggregates, how many disclosures are cached per source, each source's newest item and an honest staleness flag, plus cache ages.1 finding

    Why it is in this group

    • The description's first verb is "list": a word for reading.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "...arbitrary fetching or crawling, no credential or PII output. Check this first if anot..."

      What this check looks for
    Description, as the server wrote it
    List the public disclosure feeds this server aggregates, how many disclosures are cached per source, each source's newest item and an honest staleness flag, plus cache ages. Takes no arguments. Also states the scope plainly: public feeds only — no .onion access, no arbitrary fetching or crawling, no credential or PII output. Check this first if another tool's answer looks thin: a stale live feed is a finding, not background noise.

    Annotations the server declares

    • title: Feed sources & health
    • readOnlyHint: true
    • idempotentHint: true
    • 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 0.3.2. Values in angle brackets are yours to fill in.

claude mcp add --transport http data-breach-detector https://breach.seiche.info/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__data-breach-detector__breach_news",
      "mcp__data-breach-detector__breach_history",
      "mcp__data-breach-detector__feed_sources"
    ],
    "ask": [
      "mcp__data-breach-detector__check_exposure",
      "mcp__data-breach-detector__breach_timeline",
      "mcp__data-breach-detector__breach_stats",
      "mcp__data-breach-detector__assess_threat"
    ],
    "deny": []
  }
}

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 data-breach-detector. Review it before you use it.