URL health & TLS check

Is this URL alive, where does it end up, and when does its certificate expire? Returns the status code, the full redirect chain with per-hop timings, the response headers that matter, and the TLS issuer and expiry date. The checks a careful human runs before trusting a link.

POST https://api.bottrunk.com/s/url-health

Add to my agent

Call it

# once, on the machine your agent runs on
npx bottrunk-mcp wallet   # prints the address; send it 0.3 ALGO, then USDC
claude mcp add bottrunk -- npx -y bottrunk-mcp

# then ask your agent for it — the tool is `bottrunk_url_health`

How it behaves

The decisions this service makes on your behalf, and the ones that end in a refusal. A 4xx is never settled, so a refusal costs you nothing.

Size and time Pages over 2 MB are refused with page too large. Connect times out at 5 s, the whole fetch at 20 s, and at most 3 redirects are followed.
Who we look like Requests go out as BotTrunk/0.1 (+https://bottrunk.com/docs). Sites that block unknown agents will block this one.
Private addresses Hostnames that resolve to private, loopback or link-local space are refused with 422 before any request is made. Do not point this at localhost or an intranet.
Method POST only. A GET on the same path returns this page.

Input

url string Public http(s) URL.

Output

ok boolean True when the final status is below 400.
status integer Final HTTP status.
final_url string Where the redirects ended.
chain array Each hop with its status and response time.
response_ms integer Total time across hops.
tls object issuer, expires_at, days_left — for https URLs.