AgentBIT
← all tools

IP Intelligence

IP intelligence for agents that see client addresses, verify infrastructure or investigate abuse. One call combines: ASN and the network holder's name (who actually operates this address space), the announced BGP prefix, the RIR-registered country of the address block, the registered abuse contact (where to report bad traffic), and reverse DNS via DNS-over-HTTPS. Private and reserved ranges are detected locally and answered instantly without touching the network. Data comes from RIPEstat — the RIPE NCC's official public data API covering all five regional registries — so answers reflect registry records rather than commercial geolocation heuristics; the country is the block's registration location, not a device geolocation, and the output says so honestly. IPv4 and IPv6. Pairs with dns-inspect and domain-intel for a complete infrastructure picture.

$0.01
USDC per call · x402
Endpoint
POST /v1/ip/intel
MCP name
agentbit.ip_intel
Status
active
Latency / uptime (7d)
1141 ms · 100%

Call with x402

1. Send the request. 2. Receive 402 with accepts[]. 3. Sign the payment and retry with the X-PAYMENT header.

curl -X POST https://agentbit.app/v1/ip/intel \
  -H 'Content-Type: application/json' \
  -d '{"ip":"1.1.1.1"}'

Input schema

{
    "type": "object",
    "properties": {
        "ip": {
            "type": "string",
            "description": "IPv4 or IPv6 address"
        }
    },
    "required": [
        "ip"
    ]
}

Output schema

{
    "type": "object",
    "properties": {
        "ip": {
            "type": "string"
        },
        "public": {
            "type": "boolean"
        },
        "version": {
            "type": "integer"
        },
        "asn": {
            "type": [
                "integer",
                "null"
            ]
        },
        "network_holder": {
            "type": [
                "string",
                "null"
            ]
        },
        "prefix": {
            "type": [
                "string",
                "null"
            ]
        },
        "country": {
            "type": [
                "string",
                "null"
            ]
        },
        "reverse_dns": {
            "type": [
                "string",
                "null"
            ]
        },
        "abuse_contacts": {
            "type": "array",
            "items": {
                "type": "string"
            }
        }
    }
}

Code examples

// JavaScript (x402-fetch)
import { wrapFetchWithPayment } from "x402-fetch";
const fetchWithPay = wrapFetchWithPayment(fetch, wallet);
const r = await fetchWithPay("https://agentbit.app/v1/ip/intel", {
  method: "POST",
  headers: {"Content-Type": "application/json"},
  body: JSON.stringify({"ip":"1.1.1.1"})
});
console.log(await r.json());
# Python (x402 client)
from x402.clients.requests import x402_requests
s = x402_requests(account)
r = s.post("https://agentbit.app/v1/ip/intel",
  json={"ip":"1.1.1.1"})
print(r.json())
// PHP
$r = Http::withHeaders(['X-PAYMENT' => $signedPayment])
  ->post('https://agentbit.app/v1/ip/intel',
    array (
  'ip' => '1.1.1.1',
));
$data = $r->json();