IP2Location.io

официальный

Интеграция с API IP2Location.io для получения геолокационной информации по IP-адресу.

Что можно делать с IP2Location Io MCP?

  • Геолокация IP — Узнайте, где находится адрес IPv4 или IPv6, включая страну, регион, город, почтовый индекс, координаты и часовой пояс.
  • Данные об ASN и сети — Узнайте ASN, название AS, интернет-провайдера, домен и характеристики сети, связанные с IP-адресом.
  • Проверка прокси и безопасности — Узнайте, является ли IP-адрес прокси, а на поддерживаемых тарифах получите данные о VPN, Tor, дата-центрах, угрозах и мошенничестве.
  • Массовый поиск IP — Укажите несколько IP-адресов через запятую, пробел или с новой строки и получите результаты через Bulk API, если он доступен.
  • Запросы на естественном языке — Задавайте вопросы, например: «Какой ASN у адреса 8.8.8.8?», и позвольте инструменту get_geolocation вернуть данные.

Документация

MCP-сервер IP2Location.io

MCP-сервер IP2Location.io — это сервер Model Context Protocol (MCP), который позволяет совместимым с MCP ИИ-клиентам выполнять геолокационные запросы и получать сведения о сети по IP-адресам с помощью API IP2Location.io.

Укажите адрес IPv4 или IPv6, и MCP-сервер сможет получить такие сведения, как географическое местоположение, ASN, интернет-провайдер, домен, тип сети и информация о прокси — в зависимости от вашего тарифного плана IP2Location.io.

Это делает сервер полезным для расследования инцидентов, связанных с IP-адресами, устранения неполадок в сети, анализа трафика, локализации, анализа безопасности и обогащения IP-адресов, найденных в журналах или других наборах данных.

mcp-ip2location-io MCP server

Trust Score

IP2Location IO MCP on mcprush

Возможности

  • Подробные данные геолокации: Получение сведений о стране, регионе, городе, почтовом индексе, широте, долготе, часовом поясе и других данных о местоположении.
  • Поиск ASN: Определение номера автономной системы (ASN) и автономной системы (AS), связанных с IP-адресом.
  • Сведения о сети: Получение таких данных, как интернет-провайдер, домен, скорость соединения, тип использования и другие сетевые атрибуты — в зависимости от вашего тарифного плана.
  • Сведения о прокси и безопасности: Обнаружение информации, связанной с прокси, а на поддерживаемых тарифных планах — дополнительные сведения о VPN, Tor, центрах обработки данных, угрозах и мошенничестве.
  • Поддержка IPv4 и IPv6: Запросы для адресов IPv4 и IPv6.
  • Массовый поиск IP-адресов: Передача нескольких IP-адресов в одном запросе с автоматическим использованием Bulk API IP2Location.io, если он доступен.
  • Интеграция с MCP: Использование сведений об IP-адресах непосредственно из ИИ-приложений, совместимых с MCP.
  • Асинхронные запросы: Использует httpx для асинхронных запросов к API.

[!NOTE] Набор полей, возвращаемых IP2Location.io, зависит от вашего тарифного плана API.

Требования

Есть два способа использовать этот MCP-сервер.

Размещённый в облаке MCP-сервер

Рекомендуется, если вы хотите подключаться напрямую к размещённому MCP-серверу IP2Location.io.

Подключиться можно одним из двух способов:

  • Прямое подключение по HTTP: Ваш MCP-клиент поддерживает удалённые MCP-серверы (с потоковой передачей по HTTP). Дополнительное программное обеспечение не требуется.
  • Через npx: Ваш MCP-клиент поддерживает только локальные серверы (stdio). Для подключения к размещённому серверу используется пакет mcp-remote.

Вам понадобятся:

  • MCP-совместимый клиент, например Claude Desktop
  • Ключ API IP2Location.io
  • Node.js / npx (только для способа подключения npx)

Локальный MCP-сервер

Выберите этот вариант, если хотите запускать MCP-сервер локально.

Вам понадобятся:

  • Python 3.13 или более поздней версии
  • uv
  • MCP-совместимый клиент, например Claude Desktop
  • Ключ API IP2Location.io

Вы можете зарегистрироваться и получить бесплатный ключ API IP2Location.io. Бесплатный тарифный план предоставляет до 50 000 запросов к API геолокации IP-адресов в месяц.

Базовый REST API IP2Location.io также поддерживает ограниченный доступ без ключа — до 1 000 запросов в день. Для этого MCP-сервера рекомендуется настроить ключ API; он используется в приведённых ниже примерах настройки.

Настройка

Использовать этот MCP-сервер в Claude Desktop можно одним из следующих способов:

  • Размещённый в облаке MCP-сервер: Рекомендуется, если вы хотите подключаться напрямую к размещённому MCP-серверу IP2Location.io.
  • Локальный MCP-сервер: Выберите этот вариант, если хотите скачать исходный MCP-сервер и запустить его на своём компьютере.

Вариант 1: Размещённый в облаке MCP-сервер

Выполните следующие действия, чтобы подключить Claude Desktop к размещённому MCP-серверу IP2Location.io.

  1. Убедитесь, что Claude Desktop установлен. Если вы ещё не установили его, скачайте приложение здесь для Windows и macOS или воспользуйтесь этим руководством для Linux.
  2. Откройте файл claude_desktop_config.json в любом удобном редакторе. Если у вас ещё нет такого файла, воспользуйтесь этим руководством, чтобы создать его.
  3. Добавьте одну из приведённых ниже конфигураций в зависимости от выбранного способа подключения.

Способ A: Прямое подключение по HTTP

Используйте этот способ, если ваш MCP-клиент поддерживает удалённые серверы по HTTP. Node.js или npx не требуются.

{
  "mcpServers": {
    "ip2location": {
      "type": "http",
      "url": "https://mcp.ip2location.io/",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Если ваш клиент настраивается из командной строки, например Claude Code, добавьте сервер с помощью команды:

claude mcp add --transport http ip2location https://mcp.ip2location.io/ --header "X-API-Key: YOUR_API_KEY"

Способ B: Подключение через npx

Используйте этот способ, если ваш MCP-клиент поддерживает только локальные серверы (stdio). Пакет mcp-remote запускается локально и перенаправляет запросы на размещённый сервер.

{
  "mcpServers": {
    "ip2location": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote@latest",
        "https://mcp.ip2location.io/",
        "--header",
        "X-API-Key:YOUR_API_KEY"
      ]
    }
  }
}
  1. Замените YOUR_API_KEY своим ключом API IP2Location.io. Чтобы получить ключ API, войдите в панель управления.
  2. Сохраните изменения и перезапустите Claude Desktop. MCP-сервер должен появиться в меню Connectors.

Вариант 2: Локальный MCP-сервер

Выполните следующие действия, если предпочитаете запускать MCP-сервер локально.

  1. Установите менеджер пакетов uv. Инструкции приведены в руководстве.
  2. Убедитесь, что Claude Desktop установлен. Если вы ещё не установили его, скачайте приложение здесь для Windows и macOS или воспользуйтесь этим руководством для Linux.
  3. Откройте файл claude_desktop_config.json в любом удобном редакторе. Если у вас ещё нет такого файла, воспользуйтесь этим руководством, чтобы создать его.
  4. Добавьте следующий фрагмент в файл claude_desktop_config.json:
{
  "mcpServers": {
    "ip2locationio": {
      "command": "uvx",
      "args": [
        "mcp-ip2location-io"
      ],
      "env": {
        "IP2LOCATION_API_KEY": "<YOUR API key HERE>"
      }
    }
  }
}
  1. Чтобы получить ключ API, войдите в панель управления. Замените <YOUR API key HERE> в примере выше своим ключом API.
  2. Сохраните изменения и перезапустите Claude Desktop. MCP-сервер должен появиться в меню Connectors.

Интеграция с фреймворками

MCP-сервер также можно использовать с агентскими фреймворками Python. Примеры ниже подключаются к размещённому серверу по HTTP. Чтобы использовать локальный сервер, подключитесь с помощью команды stdio uvx и аргумента mcp-ip2location-io, а также передайте IP2LOCATION_API_KEY как переменную среды.

В каждом примере ключ API считывается из переменной среды IP2LOCATION_API_KEY, поэтому он не попадает в исходный код.

LangChain

LangChain поддерживает MCP в пространстве имён langchain.mcp; для этого требуется LangChain версии 1.4 или более поздней.

pip install "langchain[mcp]" langchain-anthropic
import asyncio
import os

from fastmcp.client.transports import StreamableHttpTransport
from langchain.agents import create_agent
from langchain.mcp import MCPAdapter

async def main():
    transport = StreamableHttpTransport(
        "https://mcp.ip2location.io/",
        headers={"X-API-Key": os.environ["IP2LOCATION_API_KEY"]},
    )

    async with MCPAdapter(transport) as adapter:
        tools = await adapter.list_tools()

        agent = create_agent("anthropic:claude-sonnet-5", tools)
        result = await agent.ainvoke({"messages": "Where is 8.8.8.8 located?"})
        print(result["messages"][-1].content)

if __name__ == "__main__":
    asyncio.run(main())

MCPAdapter принимает URL сервера напрямую, но здесь передаётся объект StreamableHttpTransport, чтобы задать заголовок X-API-Key.

LlamaIndex

pip install llama-index-tools-mcp llama-index-llms-openai
import asyncio
import os

from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.openai import OpenAI
from llama_index.tools.mcp import BasicMCPClient, McpToolSpec

async def main():
    client = BasicMCPClient(
        "https://mcp.ip2location.io/",
        headers={"X-API-Key": os.environ["IP2LOCATION_API_KEY"]},
    )

    tools = await McpToolSpec(client=client).to_tool_list_async()

    agent = FunctionAgent(
        tools=tools,
        llm=OpenAI(model="gpt-5-mini"),
        system_prompt="You are a helpful assistant that looks up IP addresses.",
    )

    response = await agent.run("Where is 8.8.8.8 located?")
    print(response)

if __name__ == "__main__":
    asyncio.run(main())

CrewAI

CrewAI считывает MCP-серверы из поля mcps агента. Для этого вместе с CrewAI необходимо установить пакет mcp.

pip install crewai mcp
import os

from crewai import Agent, Crew, Process, Task
from crewai.mcp import MCPServerHTTP

ip_agent = Agent(
    role="IP Intelligence Analyst",
    goal="Look up geolocation and network information for an IP address.",
    backstory="An analyst who checks IP addresses against IP2Location.io.",
    mcps=[
        MCPServerHTTP(
            url="https://mcp.ip2location.io/",
            headers={"X-API-Key": os.environ["IP2LOCATION_API_KEY"]},
        )
    ],
)

task = Task(
    description="Find the geolocation of 8.8.8.8 and summarize the result.",
    expected_output="A short summary of the IP address location and network data.",
    agent=ip_agent,
)

crew = Crew(agents=[ip_agent], tasks=[task], process=Process.sequential)
print(crew.kickoff())

В версиях CrewAI, не поддерживающих поле mcps, установите crewai-tools[mcp] и оберните сервер с помощью MCPServerAdapter из crewai_tools.

Использование

После подключения MCP-сервера задавайте MCP-клиенту вопросы об адресах IPv4 или IPv6 на естественном языке. Просто введите запрос об IP-адресе в чате Claude Desktop.

Геолокация IP-адреса

Where is the location of (IP)?
Where is (IP) located?
What is the latitude and longitude of (IP)?

Например, ниже приведён результат для IP-адреса 8.8.8.8:

The output of the IP 8.8.8.8

В Claude Desktop модель автоматически сформирует ответ на основе результата, возвращённого MCP-сервером IP2Location.io.

Поиск сведений о прокси и безопасности

В зависимости от используемого тарифного плана IP2Location.io:

Is this IP address a proxy: 8.8.8.8?

Несколько IP-адресов

Вы также можете использовать Bulk API геолокации IP-адресов IP2Location.io для запросов по нескольким IP-адресам.

Look up 8.8.8.8 8.8.6.6 9.9.9.9

MCP-сервер обнаруживает несколько IP-адресов и, если возможно, отправляет их в Bulk API IP2Location.io.

IP-адреса можно разделять запятыми, пробелами или переводами строк.

[!NOTE]
Для доступа к Bulk API геолокации IP-адресов IP2Location.io требуется подходящий платный тарифный план.

Переменная среды

IP2LOCATION_API_KEY

Ваш ключ API IP2Location.io IP2LOCATION_API_KEY.

Бесплатный тарифный план предоставляет до 50 000 запросов к API геолокации IP-адресов в месяц и доступ к базовым сведениям об IP-адресах.

Платные тарифные планы предусматривают более высокие лимиты запросов и дополнительные атрибуты.

Вы можете зарегистрироваться, чтобы получить бесплатный ключ API, или перейти на более высокий тарифный план, чтобы получить подробные геоданные об IP-адресах.

Не добавляйте ключ API в общедоступный репозиторий Git.

Инструмент MCP

get_geolocation

Описание

  • Получение геолокационных данных для указанного IP-адреса или группы IP-адресов. Инструмент помогает получать подробные сведения, такие как страна, регион, город, широта, долгота, почтовый индекс, часовой пояс, ASN и информация о прокси для любого адреса IPv4 или IPv6. Если обнаружено несколько IP-адресов, запросы автоматически направляются в Bulk API IP2Location.io для эффективной обработки.

Аргументы

  • ip (str): Один адрес IPv4 или IPv6 либо несколько IP-адресов, разделённых запятыми, пробелами или переводами строк.

Пример для одного IP-адреса:

8.8.8.8

Пример для нескольких IP-адресов:

1.1.1.1, 8.8.8.8, 9.9.9.9

Возвращаемое значение Строка JSON с данными геолокации. Если запрошено несколько IP-адресов, возвращается объект JSON, в котором каждому IP-адресу соответствует его набор данных.

В зависимости от тарифного плана API возвращаемые сведения могут включать:

КатегорияВозможные сведения
Местоположение и географияСтрана, регион, район, город, почтовый индекс, широта, долгота, часовой пояс
Сеть и подключениеASN, интернет-провайдер, домен, скорость сети, код IDD, код региона, тип адреса, тип использования
Автономная системаASN, название AS, а на поддерживаемых тарифных планах — домен AS, CIDR AS и тип использования AS
Мобильная связьMCC, MNC, бренд мобильного устройства
Валюта и языкКод, название и символ валюты, сведения о языке
Прокси и безопасностьСтатус и тип прокси, поставщик, время последнего обнаружения, сведения об угрозах и оценка риска мошенничества
Другие данныеКатегория IAB, сведения о погоде, высота над уровнем моря, численность населения и другие данные, зависящие от тарифного плана

Если запрос для одного IP-адреса завершается ошибкой или IP-адрес недействителен, инструмент возвращает сообщение об ошибке в виде строки. При массовых запросах для каждого IP-адреса, обработка которого завершилась ошибкой, возвращается объект ошибки, связанный с этим адресом; при этом весь пакет запросов продолжает обрабатываться.

Часто задаваемые вопросы

Можете ли вы порекомендовать бесплатные сервисы геолокации IP-адресов?

Да. IP2Location.com и IP2Location.io предоставляют бесплатный доступ или бесплатные тарифные планы.

IP2Location.io

IP2Location.io предлагает бесплатный тарифный план для геолокации IP-адресов и базового поиска сведений о сети.

Бесплатный тарифный план включает до 50 000 запросов к API геолокации IP-адресов в месяц и предоставляет основные сведения, в том числе:

  • IP-адрес
  • Страна
  • Регион
  • Город
  • Почтовый индекс
  • Широта и долгота
  • Часовой пояс
  • ASN
  • Название AS
  • Базовое обнаружение прокси

REST API IP2Location.io также можно использовать без ключа API, но с ограничением до 1 000 запросов в день.

Для бесплатного тарифного плана требуется указание авторства. Актуальные ограничения и условия см. на странице тарифных планов IP2Location.io.

Для MCP-приложений, которым нужны геолокационные и сетевые сведения непосредственно через ИИ-клиент, этот репозиторий предоставляет интерфейс MCP для IP2Location.io.

IP2Location.com LITE

IP2Location LITE предоставляет бесплатные базы данных геолокации IP-адресов, которые разработчики могут скачать и напрямую интегрировать в свои приложения. В зависимости от редакции базы данных могут содержать такие сведения, как страна, регион, город, координаты, почтовый индекс, часовой пояс, интернет-провайдер и домен.

Поскольку базы данных можно размещать и запрашивать локально, IP2Location LITE особенно полезен разработчикам, которые предпочитают не зависеть от внешних запросов к API. Доступны базы данных в нескольких форматах с поддержкой IPv4 и IPv6.

IP2Location LITE — хорошая отправная точка для разработчиков, которым нужно бесплатное локальное решение для геолокации IP-адресов.

Что такое API и сервисы геолокации IP-адресов?

API геолокации IP-адресов преобразует адрес IPv4 или IPv6 в географические и сетевые сведения.

Например, приложение может отправить:

8.8.8.8

и получить такие сведения, как:

  • Страна
  • Регион или штат
  • Город
  • Почтовый индекс
  • Широта и долгота
  • Часовой пояс
  • ASN
  • Интернет-провайдер
  • Домен
  • Тип использования сети
  • Сведения о прокси

Точный набор полей зависит от сервиса и уровня подписки.

Распространённые способы использования API геолокации IP-адресов

Геолокация по IP может быть полезна для:

  • Локализации веб-сайтов и приложений
  • Выбора регионального контента
  • Аналитики трафика
  • Диагностики сетевых проблем
  • Расследования инцидентов безопасности
  • Анализа риска мошенничества
  • Контекста входа и аутентификации
  • Обогащения журналов сервера
  • Исследования IP-адресов

Этот MCP-сервер позволяет выполнять такие запросы с помощью подсказок на естественном языке, вместо того чтобы вручную составлять REST API-запросы.

Можно ли отслеживать IP-адреса?

Приложение может записывать IP-адреса с течением времени и дополнять их данными о геолокации и сети.

Например, приложение для обеспечения безопасности может записывать IP-адреса из событий входа и использовать сервис анализа IP-адресов, чтобы определить:

  • Примерную страну или город
  • ASN
  • Интернет-провайдера
  • Оператора сети
  • Наличие прокси
  • Изменения сети или географического региона

Это может помочь в расследовании закономерностей трафика или необычной сетевой активности.

Однако геолокация по IP не позволяет точно отслеживать человека или устройство.

IP-адрес может принадлежать:

  • Общему домашнему подключению
  • Корпоративному шлюзу
  • Мобильному оператору
  • VPN
  • Прокси
  • Облачному провайдеру
  • Центру обработки данных
  • Шлюзу NAT, общему для многих пользователей

Широта и долгота, возвращаемые сервисом геолокации по IP, — это приблизительные географические координаты. Их не следует считать координатами GPS, адресом улицы или доказательством физического местоположения человека.

Этот MCP-сервер выполняет поиск по IP-адресам. Сам по себе он не осуществляет непрерывный мониторинг или отслеживание IP-адресов.

Можно ли использовать IP2Location.io как API для определения «моего IP-адреса»?

Да, REST API IP2Location.io поддерживает такой сценарий использования.

Обычно в API передаётся IP-адрес:

?ip=8.8.8.8

Если параметр ip не указан в прямом запросе к REST API IP2Location.io, API может использовать для поиска IP-адрес, связанный с входящим запросом.

Это полезно приложениям, которым нужно определить сведения о публичном IP-адресе, с которого отправлен API-запрос.

Типичные данные для сценария «мой IP» могут включать:

  • Публичный IP-адрес
  • Страну
  • Регион
  • Город
  • Координаты
  • Почтовый индекс
  • Часовой пояс
  • ASN

Инструмент MCP get_geolocation в этом репозитории принимает IP-адрес в качестве аргумента, поэтому использование MCP в первую очередь предназначено для поиска IP-адреса, указанного в диалоге.

Какие инструменты лучше всего подходят для поиска ASN и IP-адресов?

Выбор инструмента зависит от нужных вам сведений.

IP2Location.io

IP2Location.io полезен, если вам нужны сведения об ASN и геолокация IP в рамках одного запроса.

Основные сведения о запросе включают:

  • ASN
  • Название автономной системы

Планы IP2Location.io более высокого уровня могут дополнительно предоставлять:

  • Номер AS
  • Название AS
  • Домен AS
  • CIDR AS
  • Тип использования AS

С помощью этого MCP-сервера можно запросить:

What is the ASN of 8.8.8.8?

или:

Tell me who operates the network for 8.8.8.8 and where the IP is located.

RDAP и WHOIS

Сервисы RDAP и WHOIS полезны, если вам нужны регистрационные сведения о блоках IP-адресов и организациях.

Они особенно полезны для определения записи Регионального интернет-регистра, связанной с диапазоном IP-адресов.

Инструменты BGP

BGP looking glass и сервисы анализа маршрутизации лучше подходят, если вам нужны сведения о:

  • Анонсах маршрутов
  • Префиксах
  • Путях BGP
  • Пиринге
  • Изменениях маршрутизации
  • ASN, который в данный момент анонсирует сеть

API анализа IP-адресов

Сервисы анализа IP-адресов предпочтительны, если приложению нужны структурированные сведения, объединяющие несколько наборов данных, например:

  • Геолокация
  • ASN
  • Интернет-провайдер
  • Обнаружение прокси
  • Обнаружение VPN
  • Классификация сети
  • Данные безопасности

Для пользователей MCP, которым нужны сведения о геолокации и ASN в рамках одного рабочего процесса, этот проект предоставляет удобный интерфейс к IP2Location.io.

Понимание поиска ASN

Номер автономной системы (ASN) идентифицирует автономную систему — сеть или набор IP-префиксов, управляемых в соответствии с единой политикой маршрутизации.

Примеры организаций, у которых есть ASN:

  • Интернет-провайдеры
  • Провайдеры облачного хостинга
  • Сети доставки контента
  • Университеты
  • Крупные предприятия
  • Телекоммуникационные компании

Сведения об ASN могут быть полезны при расследовании IP-адреса, поскольку позволяют определить сеть, отвечающую за маршрутизацию этого адреса.

Например:

8.8.8.8

связан с:

ASN: 15169
AS: Google LLC

Поиск ASN часто используется для:

  • Диагностики сетевых проблем
  • Расследования инцидентов безопасности
  • Анализа трафика
  • Определения провайдеров хостинга
  • Группировки трафика по сетям
  • Исследования подозрительных IP-адресов

Точность и ограничения геолокации по IP

Геолокация по IP предоставляет примерное географическое местоположение, определённое на основе сведений о сети и распределении IP-адресов.

Её не следует считать точным физическим местоположением пользователя или устройства.

На точность могут влиять:

  • VPN
  • Прокси-серверы
  • Мобильные сети
  • Корпоративные сети
  • NAT операторского уровня
  • Спутниковые подключения
  • Облачная инфраструктура
  • Изменения маршрутизации и распределения адресов интернет-провайдерами

Результаты на уровне страны обычно надёжнее, чем результаты на уровне конкретного города или координат.

Используйте геолокацию по IP как контекстную информацию о сети, а не для точного отслеживания физического местоположения.

Тарифные планы IP2Location.io

Объём возвращаемых сведений зависит от тарифного плана IP2Location.io.

Бесплатный план предоставляет базовую геолокацию, основные сведения об ASN и базовое обнаружение прокси.

Планы более высокого уровня могут предоставлять дополнительные сведения, например:

  • Интернет-провайдер
  • Домен
  • Скорость сети
  • Тип использования
  • Сведения о мобильной сети
  • Подробные сведения об автономной системе
  • Подробные сведения о прокси
  • Обнаружение VPN
  • Обнаружение Tor
  • Обнаружение центра обработки данных
  • Сведения об угрозах
  • Оценка риска мошенничества
  • Дополнительные атрибуты геолокации

Актуальные сведения об ограничениях запросов, полях и ценах см. в документации:

Ресурсы

Лицензия

См. файл LICENSE.TXT.