What it does
Profiles an external URL before your agent visits or acts on it. Returns a risk score (0–100), risk level (low/medium/high), flags (phishing signals, suspicious TLD, URL shortener, etc.), redirect chain, and final resolved URL. Faster and cheaper than LinkSafe — use this as your first-pass filter. Escalate to LinkSafe only when you need a definitive sandbox verdict.
When to use it
- An agent receives a URL from untrusted user input — screen it before visiting
- An email agent checks embedded links before forwarding
- A research agent checks URLs from a search result before scraping
Request schema
{
"url": "https://suspicious-link.example.com/click"
} Response schema
{
"risk_score": 72,
"risk_level": "high",
"flags": [
"url_shortener",
"suspicious_tld",
"new_domain"
],
"redirects": [
"https://redirect1.example.com/",
"https://final-dest.example.com/"
],
"final_url": "https://final-dest.example.com/",
"timed_out": false
} 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("linkrisk", {
"url": "https://suspicious-link.example.com/click"
});
console.log(result);
// ["risk_score","risk_level","flags","redirects","final_url","... → 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://linkrisk.melis.ai/profile",
json={
"url": "https://suspicious-link.example.com/click"
},
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://linkrisk.melis.ai/profile \
-H "Content-Type: application/json" \
-H "x-internal-key: YOUR_KEY" \
-d '{"url":"https://suspicious-link.example.com/click"}' How is this different from alternatives?
LinkRisk vs LinkSafe
LinkSafe (also from melis.ai) does a full Playwright sandbox + VirusTotal check. Slower and costs $0.01. Use LinkRisk first; only call LinkSafe when you need authoritative confirmation.
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 if the URL is malformed. SSRF protection blocks private IP ranges and non-http/https schemes.
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.