What this client asked www.pathwren.workers.dev for, when, and what it got.
Every number below is from this host's own server-side request log, 2026-08-31 22:44:55Z to 2026-09-03 06:12:53Z UTC.
python-httpx/0.28.1
This name is an HTTP client library's default user-agent, not an operator identity: several unrelated programs can send it, and the rows below may be more than one party. 55 request(s) from 13 distinct address(es), 23 distinct path(s), first seen 2026-08-31 22:44:55Z, last seen 2026-09-03 06:12:53Z UTC. 16 separate visit(s), counting a gap of more than 30 minutes as a new one, median 120.7 minutes between them.
| user-agent | requests | addresses | first seen | last seen |
|---|---|---|---|---|
python-httpx/0.28.1 | 55 | 13 | 2026-08-31 22:44:55Z | 2026-09-03 06:12:53Z |
First request to each path, oldest first.
| # | path | at (UTC) | status |
|---|---|---|---|
| 1 | /mcp | 2026-08-31 22:44:55Z | 200 |
| 2 | /a2a | 2026-09-01 02:53:55Z | 200 |
| 3 | /c/mcp-registry-official/mcp/triage | 2026-09-01 08:57:14Z | 200 |
| 4 | /c/mcp-registry-official/mcp/doctor | 2026-09-01 08:57:19Z | 200 |
| 5 | /c/mcp-registry-official/mcp | 2026-09-01 08:58:32Z | 200 |
| 6 | /c/ard/.well-known/mcp.json | 2026-09-01 13:56:28Z | 404 |
| 7 | /robots.txt | 2026-09-01 17:00:17Z | 200 |
| 8 | /.well-known/agenstry-verify | 2026-09-01 17:31:21Z | 200 |
| 9 | /c/mcp-registry-official/mcp/netcheck | 2026-09-01 17:53:20Z | 200 |
| 10 | /c/mcp-registry-official/mcp/robots | 2026-09-01 17:53:20Z | 200 |
| 11 | /c/pypi-verify/ip-ranges/all.json | 2026-09-01 17:59:49Z | 200 |
| 12 | /c/pypi-verify/ip-ranges/ | 2026-09-01 17:59:49Z | 200 |
| 13 | /c/pypi-verify/ | 2026-09-01 17:59:51Z | 200 |
| 14 | /c/pypi-registry/changelog.html | 2026-09-01 18:00:44Z | 200 |
| 15 | /c/pypi-registry/data/agents.json | 2026-09-01 18:00:44Z | 200 |
| 16 | /c/pypi-registry/ | 2026-09-01 18:00:45Z | 200 |
| 17 | /c/mcp-registry-official/mcp-doctor.html | 2026-09-02 06:42:34Z | 200 |
| 18 | /c/mcp-registry-official/mcp-netcheck.html | 2026-09-02 06:45:10Z | 200 |
| 19 | /c/a2a-registry-global/a2a/netcheck/.well-known/agent-card.json | 2026-09-02 08:08:03Z | 200 |
| 20 | /a2a/netcheck | 2026-09-02 08:08:22Z | 200 |
| 21 | /a2a/.well-known/agent.json | 2026-09-02 13:54:11Z | 200 |
| 22 | /c/a2a-registry-global/a2a/discovery/.well-known/agent-card.json | 2026-09-03 02:17:30Z | 200 |
| 23 | /c/mcp-registry-official/icon.png | 2026-09-03 06:12:52Z | 200 |
| path | requests | status codes | first | last |
|---|---|---|---|---|
/c/mcp-registry-official/mcp/netcheck | 6 | 200×6 | 2026-09-01 17:53:20Z | 2026-09-03 00:36:53Z |
/mcp | 6 | 200×5, not recorded×1 | 2026-08-31 22:44:55Z | 2026-09-02 04:51:47Z |
/c/mcp-registry-official/mcp | 5 | 200×4, 202×1 | 2026-09-01 08:58:32Z | 2026-09-02 04:51:47Z |
/c/mcp-registry-official/mcp/doctor | 5 | 200×5 | 2026-09-01 08:57:19Z | 2026-09-02 06:42:33Z |
/a2a | 4 | 200×4 | 2026-09-01 02:53:55Z | 2026-09-02 04:45:37Z |
/c/mcp-registry-official/mcp/robots | 4 | 200×4 | 2026-09-01 17:53:20Z | 2026-09-02 08:59:23Z |
/c/mcp-registry-official/mcp/triage | 4 | 200×4 | 2026-09-01 08:57:14Z | 2026-09-02 04:51:48Z |
/a2a/netcheck | 2 | 200×2 | 2026-09-02 08:08:22Z | 2026-09-03 04:18:11Z |
/c/mcp-registry-official/icon.png | 2 | 200×2 | 2026-09-03 06:12:52Z | 2026-09-03 06:12:53Z |
/c/mcp-registry-official/mcp-netcheck.html | 2 | 200×2 | 2026-09-02 06:45:10Z | 2026-09-03 00:36:53Z |
/c/pypi-registry/data/agents.json | 2 | 200×2 | 2026-09-01 18:00:44Z | 2026-09-01 18:00:47Z |
/c/pypi-verify/ip-ranges/all.json | 2 | 200×2 | 2026-09-01 17:59:49Z | 2026-09-01 17:59:53Z |
/.well-known/agenstry-verify | 1 | 200×1 | 2026-09-01 17:31:21Z | 2026-09-01 17:31:21Z |
/a2a/.well-known/agent.json | 1 | 200×1 | 2026-09-02 13:54:11Z | 2026-09-02 13:54:11Z |
/c/a2a-registry-global/a2a/discovery/.well-known/agent-card.json | 1 | 200×1 | 2026-09-03 02:17:30Z | 2026-09-03 02:17:30Z |
/c/a2a-registry-global/a2a/netcheck/.well-known/agent-card.json | 1 | 200×1 | 2026-09-02 08:08:03Z | 2026-09-02 08:08:03Z |
/c/ard/.well-known/mcp.json | 1 | 404×1 | 2026-09-01 13:56:28Z | 2026-09-01 13:56:28Z |
/c/mcp-registry-official/mcp-doctor.html | 1 | 200×1 | 2026-09-02 06:42:34Z | 2026-09-02 06:42:34Z |
/c/pypi-registry/ | 1 | 200×1 | 2026-09-01 18:00:45Z | 2026-09-01 18:00:45Z |
/c/pypi-registry/changelog.html | 1 | 200×1 | 2026-09-01 18:00:44Z | 2026-09-01 18:00:44Z |
/c/pypi-verify/ | 1 | 200×1 | 2026-09-01 17:59:51Z | 2026-09-01 17:59:51Z |
/c/pypi-verify/ip-ranges/ | 1 | 200×1 | 2026-09-01 17:59:49Z | 2026-09-01 17:59:49Z |
/robots.txt | 1 | 200×1 | 2026-09-01 17:00:17Z | 2026-09-01 17:00:17Z |
| path it asked for | what it got | first asked | since then |
|---|---|---|---|
/c/ard/.well-known/mcp.json | 404×1 | 2026-09-01 13:56:28Z | still absent |
Not observed. This client publishes no address list we could read and no reverse-DNS convention we could test, so the user-agent is the only identity it has here — and a user-agent is a claim, not a proof. Anyone can send this string.
Not observed. We have not seen this client publish a grade, a listing or a record about this host anywhere, and we make no claim that it does or does not.
Not observed. It carries no URL and no contact address in its user-agent, so there is nowhere documented to ask what it is.
curl -s https://www.pathwren.workers.dev/bot/python-httpx.json curl -s https://www.pathwren.workers.dev/data/observed-clients.json # every client, one request
JSON · markdown · all clients seen here · index as JSON · check a crawler yourself, no key
Rows come from a server-side log written before anything is served, so clients that
run no JavaScript are counted exactly like browsers. The window is the whole life of the log,
2026-08-31 22:44:55Z to 2026-09-03 06:12:53Z UTC, and it is stated on every number because a count without a window is
not a fact. Addresses are stored as salted hashes and counted, never printed. Our own checks
send X-Self: 1 and are excluded, together with every request the analyst flagged
as one of our own agents reaching for a URL through a model provider's fetch tool
(the numbers are on the index). Nothing here is a claim about
intent: where this page does not know something it says not observed
.