# IPGeolocation.io — how to use (mcp.ai)

Connect your IPGeolocation.io account and use 13 tools for developer tools straight from your AI agent. Connect with your own API key. IPGeolocation.io provides IP geolocation, threat intelligence, ASN, abuse contact, timezone, User-Agent, and astronomy data.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_ipgeolocation?ms=1787295720000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `ipgeolocation_bulk_lookup_ip_geolocation`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/ipgeolocation`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/ipgeolocation/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/ipgeolocation/bulk/lookup/ip/geolocation` — Return geolocation results for 1-50 explicit IP addresses or domains in one paid request, preserving input order and per-item errors. Credits apply per valid item and optional enrichment.
  - body: { fields?: string[], language?: string, enrichments?: string[], exclude_fields?: string[], ips_or_domains: string[] }
- `POST https://api.mcp.ai/api/ipgeolocation/bulk/lookup/ip/security` — Return threat intelligence for 1-50 IPv4 or IPv6 addresses in one paid request, preserving order and per-item errors. Costs 2 credits per valid item.
  - body: { ips: string[], fields?: string[], exclude_fields?: string[] }
- `POST https://api.mcp.ai/api/ipgeolocation/bulk/parse/user/agents` — Parse 1-50 custom User-Agent strings in one paid request and return one ordered parser result per input. Costs 1 credit per string.
  - body: { user_agents: string[] }
- `POST https://api.mcp.ai/api/ipgeolocation/convert/timezone` — Convert a supplied or current wall-clock time between two explicit timezone, place, coordinate, airport-code, or UN/LOCODE selectors of the same family. Costs 1 credit on success.
  - body: { time?: string, source_value?: string, selector_type: string, source_latitude?: number, source_longitude?: number, destination_value?: string, destination_latitude?: number, destination_longitude?: number }
- `POST https://api.mcp.ai/api/ipgeolocation/get/execution/egress/ip` — Return the public IP observed for the Composio execution environment. This is not the end user's device or browser IP.
- `POST https://api.mcp.ai/api/ipgeolocation/lookup/asn` — Return detailed autonomous-system metadata for one explicit IP address or ASN number, with optional topology, routes, and WHOIS data. Requires paid ASN access and costs 1 credit on success.
  - body: { fields?: string[], include?: string[], lookup_type: string, lookup_value: string, exclude_fields?: string[] }
- `POST https://api.mcp.ai/api/ipgeolocation/lookup/astronomy` — Return Sun, Moon, twilight, golden-hour, and positional data for one explicit location and date. Costs 1 credit on success.
  - body: { date?: string, language?: string, latitude?: number, longitude?: number, time_zone?: string, selector_type: string, selector_value?: string, elevation_meters?: number }
- `POST https://api.mcp.ai/api/ipgeolocation/lookup/astronomy/time/series` — Return daily Sun, Moon, twilight, and golden-hour events for one explicit location over an inclusive range of at most 90 days. Costs 1 credit per request, not per day.
  - body: { end_date: string, language?: string, latitude?: number, longitude?: number, time_zone?: string, start_date: string, selector_type: string, selector_value?: string, elevation_meters?: number }
- `POST https://api.mcp.ai/api/ipgeolocation/lookup/ip/abuse/contact` — Return registry abuse contact details for one explicit IPv4 or IPv6 address, including organization, address, emails, and phone numbers. Requires paid Abuse access and costs 1 credit on success.
  - body: { ip: string, fields?: string[], exclude_fields?: string[] }
- `POST https://api.mcp.ai/api/ipgeolocation/lookup/ip/geolocation` — Return location, timezone, currency, ASN, and optional paid enrichments for one explicit IPv4 address, IPv6 address, or domain. Costs 1 credit on success, plus 2 for Security and 1 for Abuse enrichmen
  - body: { fields?: string[], language?: string, enrichments?: string[], ip_or_domain: string, exclude_fields?: string[] }
- `POST https://api.mcp.ai/api/ipgeolocation/lookup/ip/security` — Return threat score and Tor, proxy, VPN, relay, bot, spam, attacker, and cloud-provider signals for one explicit IPv4 or IPv6 address. Requires paid Security access and costs 2 credits on success.
  - body: { ip: string, fields?: string[], exclude_fields?: string[] }
- `POST https://api.mcp.ai/api/ipgeolocation/lookup/timezone` — Return current date, time, UTC offsets, and DST details for one explicit timezone, place, coordinate pair, IP, airport code, or UN/LOCODE. Costs 1 credit on success.
  - body: { language?: string, latitude?: number, longitude?: number, selector_type: string, selector_value?: string }
- `POST https://api.mcp.ai/api/ipgeolocation/parse/user/agent` — Parse one explicit User-Agent string using the operation available on the free plan. Returns browser/client, device, engine, and operating-system details and consumes 1 credit on success.
  - body: { user_agent: string }

## Example prompts
- "What can I do in IPGeolocation.io?"
- "Show me a summary of my IPGeolocation.io account"

## More
- Page: https://mcp.ai/ipgeolocation
- Agent spec (llms.txt): https://mcp.ai/ipgeolocation/llms.txt
- Postman collection: https://mcp.ai/ipgeolocation/postman.json
