McontextualBot — редкий случай, когда у краулера есть собственная официальная страница с прямым признанием цели обхода. Оператор — компания MContextual (mcontextual.net), которая сама пишет на своём сайте: бот сканирует сайты в целях контекстной рекламы. Это не предположение по названию, как в некоторых других статьях этой энциклопедии, а прямое заявление оператора.
1. Что такое McontextualBot на самом деле
MContextual — рекламная компания, чей краулер собирает содержимое сайтов для контекстного таргетинга рекламы: определения темы и характера страницы, чтобы затем рекомендовать рекламодателям подходящие площадки для размещения объявлений. Официальная страница оператора прямо подтверждает это назначение и даёт точную строку User-Agent.
Mozilla/5.0 (compatible; McontextualBot/0.1; +http://mcontextual.net/mcontextual-bot)
Там же оператор указывает практическую деталь для верификации: запросы бота идут с адресов AWS и GCP — то есть с облачной инфраструктуры, а не с выделенного корпоративного диапазона. Это значит, что сверка по ASN сама по себе малоинформативна: и легитимный McontextualBot, и потенциальный спуфер могут в равной степени оказаться в облаке одного из этих провайдеров.
| Параметр | Значение |
| Название | McontextualBot |
| Оператор | MContextual (mcontextual.net) — официально подтверждено самим оператором, не предположение |
| Роль | Сбор содержимого сайтов для контекстного таргетинга рекламы у клиентов-рекламодателей |
| User-Agent / паттерн | Mozilla/5.0 (compatible; McontextualBot/0.1; +http://mcontextual.net/mcontextual-bot) |
| Инфраструктура | По заявлению самого оператора — AWS и GCP, а не выделенный корпоративный диапазон |
| robots.txt | Официально подтверждено оператором: бота можно заблокировать стандартными директивами robots.txt |
| Статистика (независимые данные) | 0% топ-1000 сайтов блокируют McontextualBot; основной трафик идёт из США |
| Более точная категория | Рекламные и AdTech-боты (контекстный таргетинг) — не безликий «прочий сервис» |
| Пометка TrafficVeil | Нежелательный / Прочие краулеры и сервисы — категория, вероятно, требует уточнения (см. раздел 8) |
2. Зачем McontextualBot приходит на сайт
- оценка тематики и содержания страницы для контекстного размещения рекламы — определяет, подходит ли данная страница для показа объявлений конкретных категорий рекламодателей;
- сбор данных не связан с интересами владельца сайта напрямую: результат используется рекламной платформой MContextual и её клиентами, а не возвращается самому сайту;
- поскольку это intelligence gatherer-тип бота, паттерн обхода может быть неравномерным — активнее там, где размещение рекламы актуально для текущих клиентов оператора.
Типичный кейс: бот проверяет публичные страницы сайта без выраженной концентрации на конкретных технических или служебных разделах — интерес представляет содержательная часть страниц, которая может быть оценена для контекстного таргетинга.
3. Нагрузка и риски
Прямой пользы для владельца сайта, как правило, нет — данные уходят в рекламную инфраструктуру MContextual и используется для решений о размещении чужой рекламы, а не возвращаются сайту в виде трафика или дохода. Показательно, что независимая статистика фиксирует 0% блокировки среди топовых сайтов — большинство владельцев либо не замечают этот трафик, либо не считают его достаточно значимым, чтобы реагировать.
Поскольку инфраструктура бота — общедоступные облачные адреса AWS/GCP, а не выделенный диапазон, IP-адрес сам по себе слабый сигнал для верификации: нужно смотреть именно на полную строку UA и характер обхода, а не полагаться на принадлежность IP крупному облачному провайдеру как на признак легитимности или, наоборот, подозрительности.
4. Как найти McontextualBot в логах
# Базовый поиск
grep -i "mcontextualbot" /var/log/nginx/access.log
# Топ URL, которые вычитывает бот
grep -i "mcontextualbot" /var/log/nginx/access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head
# Топ IP за этим UA — не показатель сам по себе из-за облачной инфраструктуры
grep -i "mcontextualbot" /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head
# Суточная активность
grep -i "mcontextualbot" /var/log/nginx/access.log | awk '{print $4}' | cut -d: -f1 | sort | uniq -c
Верификация. Строку UA подделать может любой скрипт. Официального публикуемого списка конкретных IP нет — только общее указание на AWS/GCP, поэтому сверка по принадлежности облаку малоинформативна. Для решения allow/deny смотрите полную строку UA (включая версию и ссылку на mcontextual.net) в связке с характером обхода:
IP="1.2.3.4"
whois -h whois.cymru.com " -v $IP"
dig +short -x "$IP"
5. robots.txt для McontextualBot
# Жёсткий запрет — официально подтверждённый оператором рабочий способ
User-agent: McontextualBot
Disallow: /
# Разрешить всё
User-agent: McontextualBot
Allow: /
# Компромисс: закрыть личный кабинет и служебные разделы, оставить публичку
User-agent: McontextualBot
Disallow: /admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /account/
Disallow: /api/
Allow: /
В отличие от многих других записей энциклопедии, здесь блокировка через robots.txt — не просто пожелание, а официально подтверждённый самим оператором рабочий метод.
6. Блокировка вручную и через TrafficVeil
Nginx:
if ($http_user_agent ~* "mcontextualbot") {
return 403;
}
limit_req_zone $binary_remote_addr zone=mcontextualbot:10m rate=10r/m;
location / {
if ($http_user_agent ~* "mcontextualbot") {
limit_req zone=mcontextualbot burst=20 nodelay;
}
}
Apache (.htaccess):
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} mcontextualbot [NC]
RewriteRule ^ - [F,L]
TrafficVeil:
- найдите mcontextualbot в разделе ботов домена или в /system/bots;
- поскольку robots.txt здесь официально подтверждённо работает, для большинства сайтов без интереса к контекстной рекламной аналитике достаточно простого Disallow без необходимости в жёсткой серверной блокировке;
- если сайт монетизируется через программатик-рекламу и заинтересован в контекстном таргетинге — allow может быть осмысленным решением;
- после изменения сверьте логи: хиты McontextualBot должны уйти в блок, а нужные поисковики остаться.
7. Что делать: короткий алгоритм
- Сайт не монетизируется через программатик-рекламу — Disallow в robots.txt обычно достаточно, оператор подтверждает его соблюдение;
- Сайт зарабатывает на рекламе и заинтересован в контекстном таргетинге — рассмотрите allow как осознанное решение;
- Нагрузка заметна несмотря на Disallow — переходите к серверной блокировке;
- Не блокируйте по маске
User-agent: *, чтобы не задеть Googlebot/YandexBot заодно.
8. Открытый вопрос по категоризации
Стоит рассмотреть перенос McontextualBot из «Прочие краулеры и сервисы» в «Рекламные и AdTech-боты» — рядом с уже размеченными в базе GroovinaAdsbot и BrandVerity. Оператор сам открыто заявляет рекламную цель обхода, и это не требует предположений или косвенных признаков, в отличие от многих других записей в текущей категории.
| Бот / сосед | Кластер | Комментарий |
| ContextualBot | Прочие краулеры и сервисы (см. отдельную статью) | Другая компания (вероятно Mobian) с похожим названием и той же контекстной AdTech-функцией — не путать друг с другом |
| GroovinaAdsbot | Рекламные и AdTech-боты | Похожий профиль ad-verification/targeting краулера |
| BrandVerity | Рекламные и AdTech-боты | нежелательный, тоже brand safety/ad-verification направление |
| AudigentAdBot | Рекламные и AdTech-боты | нежелательный |
9. Стратегия allow/deny для McontextualBot
| Ситуация | Действие |
| Сайт не монетизируется через программатик-рекламу | Disallow в robots.txt — оператор подтверждает соблюдение |
| Сайт зарабатывает на рекламе, заинтересован в контекстном таргетинге | Allow, уточнив у команды монетизации |
| Нагрузка сохраняется вопреки Disallow | Серверная блокировка как следующий шаг |
| Подозрение на spoofing UA | Не полагаться на принадлежность IP AWS/GCP — сверять полную строку UA и характер обхода |