Skip to main content
Glama

ip_lookup

Geolocate an IP address to get country, city, ISP, and detect VPN, Tor, or datacenter usage for fraud detection and access control.

Instructions

Geolocate an IP address and detect VPN, Tor, and datacenter usage.

Returns geolocation data (country, city, coordinates, timezone, ISP) plus
threat intelligence signals: whether the IP is a known VPN exit node, Tor
relay, or datacenter/hosting provider. Includes a composite threat score.

Use for fraud detection, access control, personalising content by region,
or investigating suspicious traffic in server logs.

Args:
    ip: IPv4 or IPv6 address to look up (e.g. '8.8.8.8', '2001:4860:4860::8888').

Returns:
    ip: The queried IP.
    country, country_code: Full country name and ISO-3166 code.
    region, city: Geographic subdivision and city name.
    latitude, longitude: Approximate coordinates (city-level precision).
    timezone: IANA timezone (e.g. 'America/New_York').
    isp: Internet Service Provider name.
    is_vpn (bool): Known VPN exit node.
    is_tor (bool): Tor exit relay.
    is_datacenter (bool): Hosted in a cloud/datacenter AS.
    threat_score: 0.0–1.0 composite risk score.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ipYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It explains the output fields (geolocation, threat signals, composite score) and coordinate precision (city-level). It does not discuss authentication, rate limits, or potential side effects, but as a read-only lookup, these are less critical.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured as a Google-style docstring with a concise summary, bulleted return fields, and usage scenarios. Every sentence adds value, no fluff, and critical information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description is complete: it enumerates all return fields with descriptions, notes coordinate precision, and explains the threat score range. No critical gaps for its complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description compensates fully by specifying the parameter format ('IPv4 or IPv6 address') and providing concrete examples ('8.8.8.8', '2001:4860:4860::8888'). This adds significant meaning beyond the bare schema type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Geolocate an IP address and detect VPN, Tor, and datacenter usage.' It specifies both geolocation and threat detection, distinguishing itself from siblings like dns_lookup and whois_lookup by focusing on IP intelligence and composite threat score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lists concrete use cases: fraud detection, access control, region-based personalization, and investigating suspicious traffic. It implies contexts where this tool is appropriate but does not explicitly state when not to use it or mention alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ForeverTools/kiprio-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server