# HISTOR and the ScraperWatch MCP tool-change log, 2026-10-31 to 2026-11-01

Generated 2026-11-01T10:54:25Z by `python -m histor.peer_xcheck`, which HISTOR runs after each weekly snapshot. The classification is automatic and has not been reviewed by a person; read a likely miss as a lead.

ScraperWatch (https://scraperwatch.com/mcp-changes/) reads a fixed panel of 2,995 endpoints once a day from 02:50Z and publishes daily diffs. HISTOR reads the same endpoints every 30 minutes to 6 hours and keeps every definition. 2,981 of the panel endpoints are HISTOR targets.

## Their log against HISTOR

For each of their 98 tool-change records, did HISTOR see the old value and then the new one between their two reads, path by path? (Local `$ref` resolved and lists sorted, as their diffs do.)

| Records | Verdict |
|---:|---|
| 64 | same change in HISTOR |
| 16 | HISTOR has no definitions in the window |
| 9 | HISTOR has no definitions before their read |
| 5 | server instructions only (HISTOR does not record them) |
| 4 | not seen as a change in HISTOR |

Field-level items: 738 of 874 seen by HISTOR.

## HISTOR against their panel

HISTOR recorded a change on 292 endpoint-days of the panel; 67 are in their log. For the other 225, HISTOR's definitions at the times of their two reads were compared:

| Endpoint-days | Why their daily diff does not show it |
|---:|---|
| 202 | only members the peer does not hash changed |
| 12 | robots.txt disallows the endpoint |
| 6 | back to the same definitions by the second read |
| 2 | may predate the peer's first read (HISTOR's reads were hours apart) |
| 1 | only dates, version strings, numbers or whitespace changed |
| 1 | HISTOR has no successful read before one of the two peer reads |
| 1 | a change in the fields the peer hashes, this day or the day before (HISTOR's reads were hours apart) |

Members they do not hash that changed: `version` (199), `_meta` (3).

### Likely misses on their side

- https://www.apier.no/api/mcp (2026-11-01): a change in the fields the peer hashes, this day or the day before (HISTOR's reads were hours apart); HISTOR recorded it at 2026-10-31T07:19:46Z, 2026-11-01T01:23:25Z; {"added": [], "removed": [], "changedFields": {"description": 1, "inputSchema": 1}}

## Files

- `results.json` — every record and endpoint-day with its verdict.
- `inputs/` — the two files of theirs that were read: `changes.json.gz` (sha256 41190f42db3c3349…), `panel.txt.gz` (sha256 936b0ae338b11194…).
- `SHA256SUMS`.

## Method and limits

- Their read times: daily runs from 02:50Z of about ten minutes; their first run 2026-10-30 10:49:43–10:59:39Z.
- HISTOR's state at a read is its newest successful read at or before it. Where HISTOR's reads were hours apart around theirs, the order of the change and their read is unknown; such cases are named so.
- robots.txt is read now, not as it was on the day, and matched as RFC 9309 says (longest match, Allow on a tie, `*` and `$`), for their agent's group or `*`.
- HISTOR did not digest tool lists with fractional numbers before 2026-10-31 16:42Z; for those, only the members it keeps beside the digest (title, annotations, `_meta`, …) are compared.
- HISTOR does not record server `instructions`; records that change only those are named so.

License: CC BY 4.0. Code: `histor/peer_xcheck.py` in HISTOR's source.
