hackmyip-mcp
The no-key IP intelligence MCP — paste one URL, no signup.
https://hackmyip.com/mcp
That's the whole setup. No API key. No account. No OAuth dance. No credit card. Point any MCP client at that URL and your agent can immediately look up IPs, geolocate addresses, classify VPN/datacenter traffic, query DNS, run WHOIS, check spam blacklists, audit security headers, scan ports and test email authentication.
It's a thin, stateless wrapper around the free HackMyIP public REST API (docs) running on Cloudflare Workers at the edge. Every tool passes the API's JSON straight back to your agent — nothing is cached, rewritten, or invented.
Install
Claude Code
claude mcp add --transport http hackmyip https://hackmyip.com/mcp
Claude Desktop
Settings → Connectors → Add custom connector, then paste:
https://hackmyip.com/mcp
Or edit claude_desktop_config.json directly
{
"mcpServers": {
"hackmyip": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://hackmyip.com/mcp"]
}
}
}
mcp-remote is only needed on older Desktop builds that lack native remote-MCP support.
Cursor
~/.cursor/mcp.json (global) or .cursor/mcp.json (per project):
{
"mcpServers": {
"hackmyip": {
"url": "https://hackmyip.com/mcp"
}
}
}
Codex CLI
~/.codex/config.toml:
[mcp_servers.hackmyip]
url = "https://hackmyip.com/mcp"
Restart Codex. No codex mcp login step — this server is authless.
VS Code / GitHub Copilot
.vscode/mcp.json:
{
"servers": {
"hackmyip": {
"type": "http",
"url": "https://hackmyip.com/mcp"
}
}
}
Anything else
Any client that speaks MCP Streamable HTTP works. Endpoint:
https://hackmyip.com/mcp (mirror: https://hackmyip-mcp.shitcoinape.workers.dev/mcp).
Both the 2025-06-18 and 2026-07-28 protocol revisions are served.
Tools
| Tool | What it does |
|---|---|
my_ip | Public IP of the machine that opened the MCP connection, with geo, ISP, ASN and hosting/proxy flags |
ip_lookup | Geolocation, ISP, ASN, org and AS name for any IPv4/IPv6 |
bulk_ip_lookup | Up to 50 IPs in one request — use this instead of looping ip_lookup |
vpn_proxy_check | Datacenter / proxy / mobile-carrier classification for an IP (or your own) |
asn_lookup | ASN details by IP, AS number, or organization name |
reverse_dns | PTR hostname for an IP |
dns_lookup | A, AAAA, CNAME, MX, NS, TXT, SOA, SRV, CAA, PTR records |
whois_domain | RDAP registration data: registrar, creation/expiry dates, nameservers, EPP status |
ip_blacklist_check | 12 major spam/abuse DNSBLs with a per-list LISTED / CLEAN / unavailable breakdown |
email_breach_check | Whether an email appears in known breaches (XposedOrNot database) |
email_auth_check | MX / SPF / DMARC posture for a domain with a pass-warn-fail verdict per mechanism |
security_headers_check | Graded (A–F) HTTP security header audit: CSP, HSTS, XFO, Referrer-Policy and more |
port_scan | Real server-side TCP connect scan — open / closed / filtered / blocked per port |
site_status_check | Is a site up or down, with status code and response time |
server_info | Describes this server, its free/no-key nature, and the fair-use limits |
Things worth knowing
my_ipreports the IP the MCP request arrived from. If your client runs on your laptop, that's your real public IP — which is exactly what makes "is my VPN actually working?" answerable. If it runs on a remote host or behind a corporate proxy, you get that egress IP instead. The tool says so in its response.ip_blacklist_checknever fakes a clean result. Lists that refuse public queries come back asunavailable, so readtotal_checkednext tolisted_count.port_scanis a real scan from Cloudflare's network. Only point it at hosts you're authorized to test. Private and reserved ranges are rejected upstream.whois_domaindepends on third-party RDAP registries which occasionally 5xx. A failure there is upstream, not a malformed query — retry.
Fair use
The upstream API allows 60 requests/minute per client IP (20/min for port_scan and
security_headers_check), resetting every 60 seconds. There is no paid tier to upgrade
to and no key that lifts it — it exists so the service stays free for everyone. If you
hit it, tools return the upstream 429 message and you should back off.
Prefer bulk_ip_lookup over a loop of ip_lookup calls.
Privacy
This server stores nothing. It holds no session state, writes no logs of your queries,
and requires no identity. Each tool call is a stateless pass-through to
https://hackmyip.com/api/*.
Run it yourself
git clone https://github.com/0xvibly/hackmyip-mcp
cd hackmyip-mcp
npm install
npm run dev # local dev server at http://localhost:8787/mcp
npm run deploy # deploy to your own Cloudflare account
Built with @modelcontextprotocol/server
and Cloudflare's agents createMcpHandler —
stateless, no Durable Objects, no database.
Links
- Website — https://hackmyip.com
- API docs — https://hackmyip.com/api-docs
- 50+ browser tools (VPN leak tests, fingerprinting, breach checks) — https://hackmyip.com/tools
License
MIT