batch_geolocate
Pack: iplookup · Endpoint: https://gateway.pipeworx.io/iplookup/mcp
Look up locations for up to 100 IP addresses at once. Returns geolocation and ISP data in the same order as input. Use for analyzing multiple IPs efficiently.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
ips | array | yes | Array of IPv4 or IPv6 addresses to look up (maximum 100) |
items | string | no |
Example call
Arguments
{
"ips": [
"8.8.8.8",
"1.1.1.1",
"208.67.222.222"
]
}
curl
curl -X POST https://gateway.pipeworx.io/iplookup/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"batch_geolocate","arguments":{"ips":["8.8.8.8","1.1.1.1","208.67.222.222"]}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('batch_geolocate', {
"ips": [
"8.8.8.8",
"1.1.1.1",
"208.67.222.222"
]
});
Response shape
Always returns: count, results
| Field | Type | Description |
|---|---|---|
count | integer | Number of results returned |
results | array | Array of geolocation results or error objects |
Full JSON Schema
{
"type": "object",
"properties": {
"count": {
"type": "integer",
"description": "Number of results returned"
},
"results": {
"type": "array",
"description": "Array of geolocation results or error objects",
"items": {
"oneOf": [
{
"type": "object",
"properties": {
"ip": {
"type": [
"string",
"null"
],
"description": "The queried IP address"
},
"country": {
"type": [
"string",
"null"
],
"description": "Country name"
},
"country_code": {
"type": [
"string",
"null"
],
"description": "ISO 3166-1 alpha-2 country code"
},
"region": {
"type": [
"string",
"null"
],
"description": "State/region name"
},
"city": {
"type": [
"string",
"null"
],
"description": "City name"
},
"postal_code": {
"type": [
"string",
"null"
],
"description": "ZIP or postal code"
},
"latitude": {
"type": [
"number",
"null"
],
"description": "Latitude coordinate"
},
"longitude": {
"type": [
"number",
"null"
],
"description": "Longitude coordinate"
},
"timezone": {
"type": [
"string",
"null"
],
"description": "IANA timezone identifier"
},
"isp": {
"type": [
"string",
"null"
],
"description": "Internet Service Provider name"
},
"organization": {
"type": [
"string",
"null"
],
"description": "Organization name"
},
"as_number": {
"type": [
"string",
"null"
],
"description": "Autonomous System number and name"
}
},
"required": [
"ip",
"country",
"country_code",
"region",
"city",
"postal_code",
"latitude",
"longitude",
"timezone",
"isp",
"organization",
"as_number"
]
},
{
"type": "object",
"properties": {
"ip": {
"type": [
"string",
"null"
],
"description": "The queried IP address"
},
"error": {
"type": "string",
"description": "Error message from lookup failure"
}
},
"required": [
"ip",
"error"
]
}
]
}
}
},
"required": [
"count",
"results"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"iplookup": {
"url": "https://gateway.pipeworx.io/iplookup/mcp"
}
}
}
See Getting Started for client-specific install steps.