What it does
Full safety check for URLs your agent is about to share with a user or embed in content. Runs a Playwright headless browser sandbox, checks VirusTotal, and traces the full redirect chain. Returns a binary safe/unsafe verdict, a risk score, and a list of specific threats found. Heavier than LinkRisk — use LinkRisk for quick profiling and LinkSafe when you need the authoritative verdict.
When to use it
- Before sharing a URL in a Telegram or email notification
- Before embedding a link in a generated document
- When a user-provided link needs a definitive safety gate
Request schema
{
"url": "https://link-to-verify.example.com/"
} Response schema
{
"safe": false,
"risk_score": 0.91,
"threats": [
"malware",
"phishing"
],
"final_url": "https://actual-malware-site.example.com/",
"redirect_chain": [
"https://link-to-verify.example.com/",
"https://actual-malware-site.example.com/"
],
"virustotal_positives": 14,
"checked_at": "2026-05-07T09:15:00Z"
} Code example — TypeScript via MCP
Install the MCP server once; all 16 services become tool calls.
// Configure @melis-ai/x402-tools-mcp in your MCP client
// Then call the tool:
const result = await mcpClient.callTool("linksafe", {
"url": "https://link-to-verify.example.com/"
});
console.log(result);
// ["safe","risk_score","threats","final_url","redirect_chain",... → MCP setup guide Code example — Python via direct HTTP
import requests
# x402 payment header must be set by your wallet client
# See x402.org for client libraries
headers = {
"Content-Type": "application/json",
"x-payment": "<signed-x402-payment-header>",
}
resp = requests.post(
"https://linksafe.melis.ai/verify",
json={
"url": "https://link-to-verify.example.com/"
},
headers=headers,
)
print(resp.json()) Code example — curl with internal key bypass
For testing with an issued internal key (skips x402 payment flow):
curl -X POST https://linksafe.melis.ai/verify \
-H "Content-Type: application/json" \
-H "x-internal-key: YOUR_KEY" \
-d '{"url":"https://link-to-verify.example.com/"}' How is this different from alternatives?
LinkSafe vs LinkRisk
LinkRisk is the lightweight version at $0.005. Use it first. Only call LinkSafe when a definitive verdict is needed — e.g. before sharing a link with a user or embedding it in published content.
FAQ
Does it work without an account?
Yes. x402 is account-less. Your agent's wallet signs the payment and retries automatically. No registration, no API key, no subscription.
What happens on failure?
Returns HTTP 422 for malformed URLs. SSRF-hardened: private IPs, metadata endpoints blocked.
What is the rate limit?
None published.
Is this open-source?
The service code is closed-source for security reasons. The MCP wrapper that calls it is open-source and MIT-licensed: github.com/mizukaizen/x402-tools-mcp .
Who built this?
Part of the melis.ai agent infrastructure stack. Running on a dedicated Helsinki VPS since early 2026. Contact sean@melis.ai.