About exitprobe
exitprobe is an MCP server and CLI for checking an IP exit's network profile and access to common AI services. It returns ipforai.cc's JSON profile for the current exit or a specified IPv4 or IPv6 address.
Key features
- 01Profile the machine's exit IP
- 02Look up an IPv4 or IPv6 address
- 03Report ASN and network type
- 04Return risk and environment scores
- 05Check AI service reachability
Use cases
- 01Preflight a connection before routing traffic
- 02Assess a candidate exit IP
- 03Check whether AI services are reachable from an exit
MCP support
It exposes tools to MCP clients for profiling the current exit IP or looking up a specified address through ipforai.cc.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
2Saved tool list · updated 1w ago
This tool takes no parameters.
Details
From the project READMEexitprobe
An exit IP can look perfectly ordinary and still be useless for AI services: it may sit in a datacenter range, arrive through a proxy, or carry a risk profile that providers quietly refuse. exitprobe asks ipforai.cc to profile an exit address before you find that out the hard way.
The profile it returns covers the location, the ASN, the network type (residential, ISP, datacenter, proxy or Tor), the access and routing type, a risk level, an environment score, and whether common AI services are reachable from that exit, along with a link to the full report. exitprobe adds nothing of its own to that answer: a successful call hands the upstream JSON back verbatim, exactly as ipforai.cc produced it.
The two tools:
check_my_ip— profile the exit this machine actually uses, for both its IPv4 and IPv6 addresses where present. Handy as a pre-flight check before routing work through a new connection.lookup_ip— profile any IPv4 or IPv6 address you name, so you can vet a candidate exit before anything depends on it.
A note on the lookup wire
check_my_ip is served from ipforai.cc's documented /json
endpoint. For lookup_ip, the upstream documentation pins
that the server calls ipforai.cc's /json and exit echo
endpoints but does not pin the per-address lookup path, so
this rebuild uses GET /json?ip=<ip> — a documented
reconstruction, not a verified upstream contract. Because
the profile JSON is returned verbatim either way, any field
naming in the result is the upstream's own.
CLI
npx @reneturcios/exitprobe check_my_ip
npx @reneturcios/exitprobe lookup_ip '{"ip":"1.2.3.4"}'
npx @reneturcios/exitprobe --version
check_my_ip takes no argument; lookup_ip takes one JSON
argument string. Output is the tool's result text (the
upstream JSON profile). Exit codes: 0 on success, 1 on
a runtime error (including a validation or upstream
failure), 2 on a usage error.
Failures are reported plainly: a non-2xx upstream response
is ipforai error: HTTP <status>, an unreachable upstream
is ipforai unreachable, and a missing or empty ip
argument is ip must be a non-empty string — checked
before any request is made.
MCP server
npx -y @reneturcios/exitprobe mcp
MCP client config:
{
"mcpServers": {
"exitprobe": {
"command": "npx",
"args": ["-y", "@reneturcios/exitprobe", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/exitprobe
docker run --rm ghcr.io/cloudcorprecords/exitprobe lookup_ip '{"ip":"1.2.3.4"}'
Development
npm install
npm run build # tsc -> dist/
npm test # tsx --test test/*.test.ts (fake fetch only, no network)
npm run dev # run the CLI from source
License
MIT — Copyright (c) 2026 Rene Turcios
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.