Ip Geolocation Mcp
Server Details
Unlock the power of IP geolocation with our tool! Whether you're a developer needing location data
- Status
- Healthy
- Uptime
- 99.9% over 43 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- varvararatta/botfactory-mcp
- GitHub Stars
- 0
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: health_check for server status, lookup_ip for a single IP, and lookup_batch for multiple IPs. The singular/plural distinction prevents confusion between the two lookup tools.
All tool names use snake_case and follow a noun-based pattern, but health_check is a compound noun rather than a verb_noun action like lookup_batch and lookup_ip. This is a minor deviation from an otherwise consistent naming scheme.
Three tools is a well-scoped set for an IP geolocation MCP server. Each tool serves a necessary function: health check, single lookup, and batch lookup, with no redundancy.
The core IP geolocation workflows are fully covered: single IP lookup and batch lookup up to 5 IPs, plus a health check for operational awareness. The surface is appropriately complete for the stated purpose.
Available Tools
3 toolshealth_checkAInspect
Server health check.
Returns:
dict: Health status of the server.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states it returns a dict of health status, but does not disclose what 'health status' entails (e.g., fields, success conditions). It is minimally adequate for a simple health check.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise with two sentences and no wasted words. The description is front-loaded with the primary action and followed by a clear return format.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, simple health check tool, the description is largely complete. It could optionally list expected return fields, but the lack of output schema and annotations does not create critical gaps given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so schema coverage is 100% trivially. The description adds no extra meaning beyond indicating the return type. Baseline for 0 parameters is 4, and it meets that standard.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Server health check' which is a specific verb (check) on a resource (server health). It distinguishes itself from sibling tools like lookup_batch and lookup_ip, which are lookup operations, not health-related.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It does not mention scenarios or compare with sibling tools, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_batchAInspect
Lookup up to 5 IPs (comma-separated). Returns {results: [...]}.
Params:
ips (str): Comma-separated list of IP addresses.
Returns:
dict: Results of IP lookups or error messages.
| Name | Required | Description | Default |
|---|---|---|---|
| ips | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior. It mentions the return format including results and error messages, but does not cover potential side effects, rate limits, or authentication requirements, which is acceptable for a simple read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the core purpose. The parameter documentation is integrated, but the structure could be cleaner by separating parameter details from the main description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple batch lookup tool with one parameter and no output schema, the description provides adequate context on input and output. However, it lacks examples or notes on error handling and maximum IPs limit enforcement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description compensates by defining the 'ips' parameter as a comma-separated list of IP addresses, adding crucial format and limit context beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool looks up IPs, specifies it handles up to 5 IPs in comma-separated format, and distinguishes itself from the sibling 'lookup_ip' which is likely for single IPs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives usage context by stating the limit and format. However, it does not explicitly contrast with 'lookup_ip' or provide when-not-to-use guidance, but the implication is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_ipAInspect
Geolocate an IPv4/IPv6 address. Returns country, city, ISP, coords.
Params:
ip (str): The IP address to geolocate.
Returns:
dict: Geolocation data or error message.
| Name | Required | Description | Default |
|---|---|---|---|
| ip | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It mentions the return includes country, city, ISP, coords, and an error message, but does not address idempotency, rate limits, authentication, or what happens with invalid IPs. For a read-only lookup, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one sentence for purpose, then structured parameter and return docs. Every sentence adds value, and critical info is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter tool with no output schema, the description adequately covers purpose, parameter, and return. It lacks usage guidelines and error handling details, but given the low complexity, it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must explain parameters. It defines 'ip (str): The IP address to geolocate.' This adds clear meaning beyond the schema's type/name, effectively compensating for the lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool geolocates an IP address, specifying IPv4/IPv6. The verb 'Geolocate' and resource 'IP address' are specific. However, it does not explicitly differentiate from siblings (health_check, lookup_batch), though the functionality is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when geolocation is needed but provides no guidance on when to avoid this tool or use alternatives. No prerequisites or context about batch vs single lookup are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
health_check - First observed
lookup_batch - First observed
lookup_ip
Related MCP Connectors
IP Geolocation: This API provides fast, reliable, and developer-friendly IP geolocation, ASN.
IP geolocation, ASN and network data, plus VPN, proxy and Tor detection. ASN tools need no key.
Keyless IP geolocation, ASN/ISP, timezone and DNS records for any IP or domain, plus your own IP.
Free no-key IP intelligence: geolocation, VPN detection, DNS, WHOIS, blacklists, breach checks
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceGeolocate any IP address with country, city, ISP, ASN, and VPN/proxy/Tor detection, with pay-per-call via x402 micropayments and no signup required.MIT
- AlicenseAqualityDmaintenanceLook up IP address geolocation, network information, detect proxies and VPNs, and find abuse contact details using IPLocate.io640 npm19MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to query IP intelligence tools such as geolocation, VPN/security checks, ASN, timezone, astronomy, user-agent parsing, abuse contacts, and bulk lookups via natural language.13 npmMIT
- AlicenseNot gradedqualityBmaintenanceIP location MCP server - query geolocation info for IP addresses including country, region, city and ISP.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.