Решение капчи для
агентов на MCP
У агента, встретившего проверку, нет в наборе инструментов ничего, что могло бы на неё ответить, поэтому он зависает или галлюцинирует обходной путь. Дайте ему сервис решения капчи как инструмент, и блокировка станет ещё одним вызовом.
# Claude Code
claude mcp add captchano -e CAPTCHANO_API_KEY=cn-YOUR_API_KEY -- npx -y captchano-mcp
# Claude Desktop / Cursor / VS Code (mcpServers config)
{
"mcpServers": {
"captchano": {
"command": "npx",
"args": ["-y", "captchano-mcp"],
"env": {
"CAPTCHANO_API_KEY": "cn-YOUR_API_KEY",
"CAPTCHANO_MAX_SPEND_USD": "1"
}
}
}
}
# Tools: solve_captcha · get_task · get_balance · list_captcha_types
# Source (MIT): https://github.com/DishantSinghDev2/captchano-mcpПочему это нужно именно агентам
Парсер, наткнувшийся на проверку, падает с ошибкой, и вы его чините. Агент проваливается молча: он рассуждает о заблокированной странице, придумывает правдоподобный следующий шаг и сообщает о прогрессе, которого не было. Такой сбой хуже, потому что он незаметен. Типизированный инструмент решения превращает неоднозначный тупик в детерминированный результат, по которому агент может ветвиться.
Что возвращает инструмент
- Токен или cookie — в зависимости от типа проверки. Системы с оценкой сессии возвращают cookie и набор заголовков, с которыми она была получена.
- Использованный user agent, чтобы агент мог воспроизвести его при отправке.
- Стоимость решения, чтобы агент, работающий в рамках бюджета, мог её учитывать, а не тратить вслепую.
Как ограничить цикл
Задайте агенту бюджет решений на запуск. Каждый ответ сообщает свою стоимость, поэтому супервизор может прервать цикл, когда расходы превысят порог, а не узнать об этом из счёта. При цене $0.00598 за решение типичный запуск агента стоит несколько центов или меньше, но бесконечный цикл повторов — всё равно бесконечный цикл повторов.
Оставьте вызов инструмента блокирующим
Примеры вызывают ?wait=60, поэтому инструмент возвращает готовый токен за один шаг. Для агентов это важнее, чем для скриптов: инструмент, который возвращает «ещё решается», заставляет модель рассуждать об опросе, а с этим она справляется плохо. Если нужен больший предел, увеличьте wait до 120 секунд. Форматы запросов для всех типов проверок — в справочнике API.
Как решение встраивается в MCP
captchano-mcp — наш MCP-сервер с открытым исходным кодом: он предоставляет решение капчи в виде инструментов, которые может вызвать любой MCP-клиент, поэтому агент проходит капчу одним вызовом инструмента и получает токен.
- 01Добавьте сервер
Claude Code: claude mcp add captchano -e CAPTCHANO_API_KEY=cn-… -- npx -y captchano-mcp. Другие клиенты используют ту же команду npx в своей конфигурации MCP.
- 02Задайте бюджет
При желании задайте CAPTCHANO_MAX_SPEND_USD, чтобы сервер отказывал в новых решениях, когда сессия потратит эту сумму.
- 03Пусть модель вызывает его
Когда агент видит проверку, он вызывает solve_captcha с type, sitekey и URL; list_captcha_types сообщает, какие поля нужны для каждого типа.
- 04Используйте токен
Агент передаёт токен своему браузерному инструменту для подстановки и отправки. Для долгих решений возвращается id задачи, который проверяется через get_task.
Как передать токен на страницу
Клиент получает токен как результат инструмента и передаёт его тому браузерному инструменту, который заполняет страницу.
Где интеграции обычно ломаются
Храните API-ключ в переменных окружения сервера, а не в аргументах инструмента, чтобы модель никогда его не видела.
Оставьте wait=60, чтобы инструмент возвращал готовый токен, а не просил модель выполнять опрос.
Частые вопросы о капче в MCP
Есть ли официальный MCP-пакет CaptchaNo?
Да. captchano-mcp — наш сервер с открытым исходным кодом (MIT) в npm и в официальном MCP Registry. Запускайте его командой npx -y captchano-mcp с ключом в CAPTCHANO_API_KEY; ключ остаётся на вашем компьютере и никогда не передаётся как аргумент инструмента.
С какими MCP-клиентами он работает?
С любым клиентом, поддерживающим MCP-инструменты через stdio или HTTP, поскольку сервер предоставляет только стандартный инструмент.
Как агент находит sitekey?
Через свой браузерный инструмент: он читает атрибут data-sitekey или URL страницы проверки и передаёт его инструменту решения.
Можно ли ограничить расходы агента?
Да. Каждый результат содержит стоимость, поэтому сервер может вести накопительный итог и отказывать в новых решениях после превышения бюджета.
Полезные руководства
Готовы начать?
Начните с бесплатного 3-дневного пробного периода, а по мере роста трафика платите за каждое успешное решение. Для пробного периода карта не нужна.