{
  "markdown": "# IP2Location.io MCP server\n\nIP2Location.io MCP Server is a Model Context Protocol (MCP) server that enables MCP-compatible AI clients to perform IP address geolocation and network intelligence lookups using the IP2Location.io API.\n\nGive it an IPv4 or IPv6 address and the MCP server can retrieve information such as geographic location, ASN, ISP, domain, network type, and proxy information, depending on your IP2Location.io API plan.\n\nThis makes it useful for IP investigation, network troubleshooting, traffic analysis, localization, security analysis, and enriching IP addresses found in logs or other datasets.\n\n[![mcp-ip2location-io MCP server](https://glama.ai/mcp/servers/ip2location/mcp-ip2location-io/badges/score.svg)](https://glama.ai/mcp/servers/ip2location/mcp-ip2location-io)\n\n[![Trust Score](https://archestra.ai/mcp-catalog/api/badge/quality/ip2location/mcp-ip2location-io)](https://archestra.ai/mcp-catalog/ip2location__mcp-ip2location-io)\n\n# Features\n\n- **Comprehensive Geolocation Data**: Retrieve country, region, city, ZIP/postal code, latitude, longitude, time zone, and other location information.\n- **ASN Lookup**: Identify the Autonomous System Number (ASN) and Autonomous System (AS) associated with an IP address.\n- **Network Intelligence**: Retrieve information such as ISP, domain, connection speed, usage type, and other network attributes depending on your plan.\n- **Proxy and Security Information**: Detect proxy-related information and, on supported plans, additional VPN, Tor, data center, threat, and fraud information.\n- **IPv4 and IPv6 Support**: Query both IPv4 and IPv6 addresses.\n- **Bulk IP Lookup**: Send multiple IP addresses in one prompt and automatically use the IP2Location.io Bulk API when available.\n- **MCP Integration**: Use IP intelligence directly from MCP-compatible AI applications.\n- **Asynchronous Requests**: Uses `httpx` for asynchronous API requests.\n\n> [!NOTE]\n> The fields returned by IP2Location.io depend on your API subscription plan.\n\n## Requirements\n\nThere are two ways to use this MCP server.\n\n### Cloud-hosted MCP server\n\nRecommended when you want to connect directly to the hosted IP2Location.io MCP server.\n\nYou need:\n\n- An MCP-compatible client such as Claude Desktop\n- Node.js / `npx`\n- An IP2Location.io API key\n\n### Local MCP server\n\nUse this option when you want to run the MCP server locally.\n\nYou need:\n\n- Python 3.13 or later\n- `uv`\n- An MCP-compatible client such as Claude Desktop\n- An IP2Location.io API key\n\nYou can sign up for a free IP2Location.io API key. The Free plan provides up to **50,000 IP Geolocation API queries per month**.\n\nThe underlying IP2Location.io REST API also supports limited keyless access of up to **1,000 queries per day**. For this MCP server, configuring an API key is recommended and is used in the setup examples below.\n\n# Setup\n\nYou can use this MCP server in Claude Desktop in either of the following ways:\n\n- **Cloud-hosted MCP server**: Recommended if you want to connect directly to the hosted IP2Location.io MCP server.\n- **Local MCP server**: Use this if you want to download and run the original MCP server on your own machine.\n\n## Option 1: Cloud-hosted MCP server\n\nFollow these steps to connect Claude Desktop to the hosted IP2Location.io MCP server.\n\n1. Make sure you have installed Claude Desktop. If you have not installed it yet, download it from [here](https://claude.ai/download) for Windows and macOS, or follow [this guide](https://modelcontextprotocol.io/quickstart/client) for Linux users.\n2. Open the `claude_desktop_config.json` file in your choice of editor. If you do not have one yet, follow [this guide](https://modelcontextprotocol.io/quickstart/server#testing-your-server-with-claude-for-desktop) to create one.\n3. Add the following to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"ip2location\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"mcp-remote@latest\",\n        \"https://mcp.ip2location.io/\",\n        \"--header\",\n        \"X-API-Key:YOUR_API_KEY\"\n      ]\n    }\n  }\n}\n```\n\n4. Replace `YOUR_API_KEY` with your actual IP2Location.io API key. To get your API key, [log in](https://www.ip2location.io/log-in) to your dashboard.\n5. Restart Claude Desktop after saving the changes, and you should see the MCP server appear in the `Connectors` menu.\n\n## Option 2: Local MCP server\n\nFollow these steps if you prefer to run the MCP server locally.\n\n1. Set up the `uv` package manager. You can refer to [the guide](https://modelcontextprotocol.io/quickstart/server#set-up-your-environment) to do so.\n2. Make sure you have installed Claude Desktop. If you have not installed it yet, download it from [here](https://claude.ai/download) for Windows and macOS, or follow [this guide](https://modelcontextprotocol.io/quickstart/client) for Linux users.\n3. Open the `claude_desktop_config.json` file in your choice of editor. If you do not have one yet, follow [this guide](https://modelcontextprotocol.io/quickstart/server#testing-your-server-with-claude-for-desktop) to create one.\n4. Add the following to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"ip2locationio\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"mcp-ip2location-io\"\n      ],\n      \"env\": {\n        \"IP2LOCATION_API_KEY\": \"<YOUR API key HERE>\"\n      }\n    }\n  }\n}\n```\n\n5. To get your API key, [log in](https://www.ip2location.io/log-in) to your dashboard. Replace `<YOUR API key HERE>` in the example above with your actual API key.\n6. Restart Claude Desktop after saving the changes, and you should see it appear in the `Connectors` menu.\n\n# Usage\n\nOnce the MCP server is connected, ask your MCP client questions about an IPv4 or IPv6 address using natural language.\nJust enter your query about the IP in a chat in Claude Desktop. \n\n ### IP geolocation\n\n```text\nWhere is the location of (IP)?\n```\n\n```text\nWhere is (IP) located?\n```\n\n```text\nWhat is the latitude and longitude of (IP)?\n```\n\nFor instance, below is the result of the IP 8.8.8.8:\n\n![The output of the IP 8.8.8.8](example.png \"The output of the IP 8.8.8.8\")\n\nIn Claude Desktop, the model will automatically generate the output based on the result returned by IP2Location.io MCP server.\n\n### Proxy and security lookup\n\nDepending on the IP2Location.io plan being used:\n\n```text\nIs this IP address a proxy: 8.8.8.8?\n```\n\n### Multiple IP addresses\n\nYou can also utilize IP2Location.io Bulk IP Geolocation API to query for multiple IP addresses.\n\n```text\nLook up 8.8.8.8 8.8.6.6 9.9.9.9\n```\n\nThe MCP server detects multiple IP addresses and sends them to the IP2Location.io Bulk API when possible.\n\nIP addresses can be separated by commas, spaces, or new lines.\n\n\n\n> [!NOTE]  \n> IP2Location.io Bulk IP Geolocation API access requires an eligible paid plan.\n\n# Environment Variable\n\n## `IP2LOCATION_API_KEY`\n\nYour IP2Location.io API key `IP2LOCATION_API_KEY`.\n\nThe Free plan currently provides up to **50,000 IP Geolocation API queries per month** and access to basic IP information.\n\nPaid plans provide higher query quotas and additional attributes. \n\nYou can [sign up](https://www.ip2location.io/sign-up) for a free API key, or [subscribe higher plan](https://www.ip2location.io/pricing) for comprehensive geo-ip data.\n\nDo not commit your API key to a public Git repository.\n\n# MCP Tool\n\n## `get_geolocation`\n\n**Description**\n- Fetch geolocation for the given IP address or a batch of IP addresses. It helps users retrieve detailed information such as country, region, city, latitude, longitude, ZIP code, time zone, ASN, and proxy information for any IPv4 or IPv6 address. It automatically routes requests to the IP2Location.io Bulk API for efficient processing when multiple IPs are detected.\n\n**Arguments**\n- `ip` (`str`): One IPv4 or IPv6 address, or multiple IP addresses separated by commas, spaces, or new lines.\n\nSingle IP example:\n\n```text\n8.8.8.8\n```\n\nMultiple IP example:\n\n```text\n1.1.1.1, 8.8.8.8, 9.9.9.9\n```\n\n**Return value**\nA JSON string containing the geolocation data. If multiple IPs are queried, it returns a JSON object where each key is an IP address mapped to its respective data. \n\nDepending on your API plan, returned information can include:\n\n| Category | Possible information |\n|---|---|\n| Location & Geography | Country, region, district, city, ZIP code, latitude, longitude, time zone |\n| Network & Connectivity | ASN, ISP, domain, net speed, IDD code, area code, address type, usage type |\n| Autonomous System | ASN, AS name and, on supported plans, AS domain, AS CIDR and AS usage type |\n| Mobile | MCC, MNC, mobile brand |\n| Currency & Language | Currency code/name/symbol and language information |\n| Proxy & Security | Proxy status/type, provider, last seen, threat information and fraud score |\n| Other Data | IAB category, weather information, elevation, population and other plan-dependent data |\n\nIf a single IP request fails or the IP is invalid, the tool returns an error message as a string. For bulk requests, any individual failed IPs will return an error object mapped to that specific IP address without failing the entire batch.\n\n\n\n# Common Questions\n\n## Can you recommend free IP geolocation services?\n\nYes. IP2Location.com and IP2Location.io provide free access or free tiers.\n\n### IP2Location.io\n\nIP2Location.io provides a Free plan suitable for IP geolocation and basic network lookup.\n\nThe Free plan includes up to **50,000 IP Geolocation API queries per month** and provides basic information including:\n\n- IP address\n- Country\n- Region\n- City\n- ZIP/postal code\n- Latitude and longitude\n- Time zone\n- ASN\n- AS name\n- Basic proxy detection\n\nThe IP2Location.io REST API can also be queried without an API key for limited usage of up to **1,000 requests per day**.\n\nThe Free plan requires attribution. Check the IP2Location.io pricing page for current limits and conditions.\n\nFor MCP applications that need geolocation and network information directly through an AI client, this repository provides an MCP interface to IP2Location.io.\n\n### IP2Location.com LITE\n[IP2Location LITE](https://www.ip2location.com/database/lite) provides free IP geolocation databases that developers can download and integrate directly into their applications. Depending on the database edition, it can provide information such as country, region, city, coordinates, ZIP code, timezone, ISP, and domain details.\n\nBecause the databases can be hosted and queried locally, IP2Location LITE is particularly useful for developers who prefer not to rely on external API requests. It is available in multiple formats and supports IPv4 and IPv6 data.\n\nIP2Location LITE is a good starting point for developers looking for a free, locally hosted IP geolocation solution.\n\n## What are IP Geolocation APIs and Services?\n\nAn IP geolocation API converts an IPv4 or IPv6 address into geographic and network information.\n\nFor example, an application can send:\n\n```text\n8.8.8.8\n```\n\nand receive information such as:\n\n- Country\n- Region or state\n- City\n- ZIP/postal code\n- Latitude and longitude\n- Time zone\n- ASN\n- ISP\n- Domain\n- Network usage type\n- Proxy information\n\nThe exact fields depend on the service and subscription level.\n\n### Common uses of IP geolocation APIs\n\nIP geolocation can be useful for:\n\n- Website and application localization\n- Regional content selection\n- Traffic analytics\n- Network troubleshooting\n- Security investigation\n- Fraud-risk analysis\n- Login and authentication context\n- Server log enrichment\n- IP address research\n\nThis MCP server makes these lookups accessible through natural-language prompts instead of requiring the user to construct REST API requests manually.\n\n## Can IP addresses be tracked?\n\nAn IP address can be recorded over time by an application and enriched with geolocation and network data.\n\nFor example, a security application might record IP addresses from login events and use an IP intelligence service to identify:\n\n- Approximate country or city\n- ASN\n- ISP\n- Network operator\n- Proxy status\n- Changes in network or geographic region\n\nThis can help investigate traffic patterns or unusual network activity.\n\nHowever, IP geolocation is **not precise person or device tracking**.\n\nAn IP address may belong to:\n\n- A shared household connection\n- A corporate gateway\n- A mobile carrier\n- A VPN\n- A proxy\n- A cloud provider\n- A data center\n- A NAT gateway shared by many users\n\nLatitude and longitude returned by an IP geolocation service are approximate geographic coordinates and should not be interpreted as GPS coordinates, a street address, or proof of an individual's physical location.\n\nThis MCP server performs IP address lookups. It does not continuously monitor or track IP addresses by itself.\n\n## Can I use IP2Location.io as a \"my IP address\" API?\n\nYes, the IP2Location.io REST API supports this type of use case.\n\nNormally, an IP address is passed to the API:\n\n```text\n?ip=8.8.8.8\n```\n\nIf the `ip` parameter is omitted from a direct IP2Location.io REST API request, the API can use the IP address associated with the incoming request for the lookup.\n\nThis is useful for applications that need to determine information about the public IP making an API request.\n\nTypical \"my IP\" data can include:\n\n- Public IP address\n- Country\n- Region\n- City\n- Coordinates\n- ZIP/postal code\n- Time zone\n- ASN\n\nThe `get_geolocation` MCP tool in this repository expects an IP address as its argument, so MCP usage is primarily designed for looking up an IP address supplied in the conversation.\n\n## What tools are best for ASN and IP address lookup?\n\nThe best tool depends on the information you need.\n\n### IP2Location.io\n\nIP2Location.io is useful when you need both **ASN information and IP geolocation** from the same lookup.\n\nBasic lookup information includes:\n\n- ASN\n- Autonomous System name\n\nHigher-level IP2Location.io data can additionally include:\n\n- AS number\n- AS name\n- AS domain\n- AS CIDR\n- AS usage type\n\nThrough this MCP server, you may ask:\n\n```text\nWhat is the ASN of 8.8.8.8?\n```\n\nor:\n\n```text\nTell me who operates the network for 8.8.8.8 and where the IP is located.\n```\n\n### RDAP and WHOIS\n\nRDAP and WHOIS services are useful when you need registration information about IP address blocks and organizations.\n\nThey are particularly useful for identifying the Regional Internet Registry record associated with an IP range.\n\n### BGP tools\n\nBGP looking glasses and routing-analysis services are more appropriate when you need information about:\n\n- Route announcements\n- Prefixes\n- BGP paths\n- Peering\n- Routing changes\n- Which ASN is currently announcing a network\n\n### IP intelligence APIs\n\nIP intelligence services are preferable when an application needs structured information that combines several datasets, such as:\n\n- Geolocation\n- ASN\n- ISP\n- Proxy detection\n- VPN detection\n- Network classification\n- Security data\n\nFor MCP users who want geolocation and ASN information in the same workflow, this project provides a convenient interface to IP2Location.io.\n\n## Understanding ASN Lookup\n\nAn **Autonomous System Number (ASN)** identifies an Autonomous System: a network or collection of IP prefixes operated under a common routing policy.\n\nExamples of organizations with ASNs include:\n\n- Internet service providers\n- Cloud hosting providers\n- Content delivery networks\n- Universities\n- Large enterprises\n- Telecommunications companies\n\nASN information can be useful when investigating an IP because it can reveal which network is responsible for routing that address.\n\nFor example:\n\n```text\n8.8.8.8\n```\n\nis associated with:\n\n```text\nASN: 15169\nAS: Google LLC\n```\n\nASN lookup is commonly used for:\n\n- Network troubleshooting\n- Security investigations\n- Traffic analysis\n- Identifying hosting providers\n- Grouping traffic by network\n- Investigating suspicious IP addresses\n\n## IP Geolocation Accuracy and Limitations\n\nIP geolocation provides an **estimated geographic location** based on network and IP allocation information.\n\nIt should not be treated as the exact physical location of a user or device.\n\nAccuracy can be affected by:\n\n- VPNs\n- Proxy servers\n- Mobile networks\n- Corporate networks\n- Carrier-grade NAT\n- Satellite connections\n- Cloud infrastructure\n- ISP routing and address allocation changes\n\nCountry-level results are generally more reliable than exact city or coordinate-level results.\n\nUse IP geolocation as contextual network information rather than precise physical tracking.\n\n## IP2Location.io Plans\n\nThe amount of information returned depends on the IP2Location.io plan.\n\nThe Free plan provides basic geolocation, basic ASN information, and basic proxy detection.\n\nHigher-level plans can provide additional information such as:\n\n- ISP\n- Domain\n- Network speed\n- Usage type\n- Mobile network information\n- Detailed Autonomous System information\n- Detailed proxy information\n- VPN detection\n- Tor detection\n- Data center detection\n- Threat information\n- Fraud score\n- Additional geolocation attributes\n\nFor the latest query limits, fields, and pricing, refer to:\n\n- [IP2Location.io Pricing](https://www.ip2location.io/pricing)\n- [IP2Location.io API Documentation](https://www.ip2location.io/ip2location-documentation)\n\n## Resources\n\n- [IP2Location.io](https://www.ip2location.io/)\n- [IP2Location.io API Documentation](https://www.ip2location.io/ip2location-documentation)\n- [IP2Location.io Pricing](https://www.ip2location.io/pricing)\n- [IP2Location.io Bulk IP Geolocation API](https://www.ip2location.io/bulk-ip-geolocation)\n\n# License\n\nSee the `LICENSE.TXT` file.\n\n\n<!-- mcp-name: io.github.ip2location/mcp-ip2location-io -->\n\n\n",
  "bytes": 17560,
  "sha": "f21cbf3807f843536a0f4c02ec57d1165120717d09770fbd94240b6fe61aea6e",
  "repo_slug": "ip2location/mcp-ip2location-io",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_ip2location_mcp_ip2location_io_20607563/readme"
}