How do I check every link in a document before sending it to a client?
The problem
Sending a client a proposal, report, or presentation with broken links is unprofessional. A dead case study link, a parked partner website, or an expired resource URL undermines your credibility. It signals carelessness at the exact moment you're trying to demonstrate competence.
Manually clicking every link before each deliverable doesn't scale. Links that worked last week can break tomorrow: a domain expires, an SSL certificate lapses, a redirect chain stops resolving. You need a systematic check, not a manual spot-check.
How Unphurl solves it
Before sending any document, paste it into Claude or give it to your OpenClaw agent and ask it to check all the links. Your AI extracts every URL, batch checks them through Unphurl, and reports which ones are dead, parked, or suspicious. No code, no script, just a conversation. You get a clear pass/fail report and can fix problems before your client ever sees them.
Signals that matter for this use case
- – Chain incomplete means the link is dead. Your client clicks and gets an error page.
- – Parked domain means the destination is a placeholder. The content you were referencing is gone.
- – SSL invalid means your client will see a browser security warning when they click.
- – Excessive redirects can indicate the destination has moved or the domain is misconfigured.
- – HTTP only means the site has no encryption. Looks unprofessional in a client-facing document.
- – Bad domain status (pendingDelete, serverHold) means the link is about to die.
- – Expiring soon flags domains nearing expiry, a warning that the link may break shortly after you send the document.
Suggested scoring profile
{
"name": "deliverable-qa",
"weights": {
"chain_incomplete": 35,
"parked": 30,
"ssl_invalid": 20,
"redirects_3": 10,
"http_only": 15,
"domain_status_bad": 15,
"expiring_soon": 10
}
} What a result looks like
You're about to send a 15-page proposal with 22 links. You paste it into Claude and ask it to check every URL.
You replace the dead case study with a current one and swap the broken resource link for an archived version. Two minutes of fixes that save you from looking careless in front of a client.
Cost
Client deliverables typically contain 10 to 50 links, mostly to well-known sites (your own domain, major publications, established tools) that resolve for free. Only unknown or less common domains use pipeline checks. The Starter package ($9 for 100 pipeline checks) covers months of deliverable QA across multiple documents.
Get started
Add the Unphurl MCP server to your Claude configuration. This gives Claude the ability to check URLs directly when you paste a document into your conversation.
{
"mcpServers": {
"unphurl": {
"command": "npx",
"args": ["-y", "@unphurl/mcp-server"],
"env": { "UNPHURL_API_KEY": "uph_your_key_here" }
}
}
} When you have a document ready to send, paste it into Claude and ask: "Check all the links in this document before I send it to the client." Claude extracts every URL, checks them through Unphurl, and gives you a clear report of what's broken, what's suspicious, and what's fine. No code needed, just a conversation.
OpenClaw users: Give your OpenClaw agent the document and ask the same thing. OpenClaw can read files directly and check every link through the Unphurl API.
Pair this with the Unphurl companion skill so your AI proactively checks links whenever you share documents, without you having to ask every time.