Устранение проблем MCP-сервера, который не запускается или не решает задачу

Автор: solvethree4 мин на чтение

Начните с solvethree_capabilities: для него не нужен API-ключ. Если он отвечает, сервер запущен и подключение MCP работает. Прекратите менять параметры запуска и вместо этого проверьте учётные данные, прокси и входные данные задачи.

На этой странице

Запустите программу запуска вне хоста

Выполните поставляемую программу запуска в терминале на машине, где работает ваш MCP-хост. Для воспроизведения в контролируемых условиях используйте Node.js 22 и входящий в его комплект npx; убедитесь, что не запускается более старая, отдельно установленная программа запуска.

Проверка локального средства запуска MCP
node --version
npx --yes --package=https://solvethree.com/downloads/solvethree-sdk-0.1.0.tgz solvethree-mcp
# The process waits for JSON-RPC on stdin. Silence is not a failed startup.
# Use the MCP host to initialize and list tools. Press Ctrl-C to stop this check.
# Never paste an API key or proxy password into troubleshooting logs.

Процесс, который остаётся открытым и ничего не выводит, не обязательно завис. Это локальный stdio-сервер: он ожидает сообщения MCP JSON-RPC на stdin. Используйте MCP-хост, чтобы инициализировать подключение и получить список инструментов; отдельный запуск исполняемого файла не выполняет это согласование.

Если процесс завершается, сначала прочитайте ошибку запуска. Ошибка о том, что исполняемый файл не найден, указывает на проблему установки или PATH; ошибка скачивания пакета возникает до решения задач. Ни то ни другое не свидетельствует о неверном API-ключе, прокси или профиле сайта.

Если в терминале всё работает, а в хосте — нет

Зарегистрируйте solvethree как локальный stdio-сервер, а не как удалённую конечную точку HTTP. Хост должен запускать npx с аргументами из примера запуска. Размещённой на сервере конечной точки MCP нет.

Хост не может найти npx.

Сравните PATH хоста с PATH вашего терминала. Настольное приложение может не наследовать настройки вашей оболочки.

Попробуйте: Сделайте каталог с npx доступным хосту или укажите абсолютный путь к тому же исполняемому файлу, который работал локально.

Хост запускает другую версию Node.js или npx.

Проверьте, какие исполняемые файлы находит хост, а не только какие версии использует ваш терминал.

Попробуйте: Укажите хосту проверенную установку. После изменения окружения перезапустите хост.

При инициализации сообщается о некорректном JSON или неожиданном выводе.

Проверьте, не выводятся ли в stdout приветствия оболочки, сообщения обёртки или отладочные данные.

Попробуйте: Используйте stdout только для MCP JSON-RPC. Направляйте диагностический вывод в stderr, где хост сможет собирать его, не принимая за трафик протокола.

Хост прекращает ожидание во время запуска.

Изучите журнал запуска и определите, идёт ли медленный запуск или процесс уже завершился.

Попробуйте: Для конфигурации в стиле Codex используйте документированное значение startup_timeout_sec — 60. Более длительное ожидание не исправит отсутствие исполняемого файла или явную ошибку запуска.

Хост сообщает, что инструмент solvethree не зарегистрирован.

Убедитесь, что сервер инициализирован, и проверьте инструменты, возвращённые при обнаружении.

Попробуйте: Исправьте регистрацию сервера или подключитесь заново и повторите обнаружение инструментов. Отсутствие инструмента — не ошибка аутентификации API и не сбой решения.

Сервер предоставляет solvethree_capabilities, solvethree_create_recaptcha, solvethree_create_kasada, solvethree_create_tmpt и solvethree_get_task. Если обнаружение проходит успешно, но хост не может вызвать один из этих инструментов по имени, устраните это несоответствие перед отправкой запросов на создание задач.

Если инструменты работают, но задачи не создаются

  1. 1.

    Проверьте окружение процесса хоста

    Передайте SOLVETHREE_API_KEY и SOLVETHREE_PROXY через окружение хоста. Экспорт переменной в отдельном терминале не означает, что хост сможет её прочитать. В конфигурации в стиле Codex список env_vars должен включать оба имени; этот список передачи переменных не задаёт их значения. Проверьте наличие переменных, не выводя ключ или учётные данные прокси.

  2. 2.

    Проверьте прокси там, откуда инструмент его читает

    solvethree_create_recaptcha читает единственный прокси из SOLVETHREE_PROXY. Не пытайтесь исправить отсутствие значения в окружении, добавляя аргумент proxy этому инструменту. URL прокси должен использовать HTTP или HTTPS и не содержать пути, строки запроса или фрагмента.

  3. 3.

    Проверьте профиль сайта для reCAPTCHA

    Рабочему пространству, определяемому API-ключом, нужен активный профиль для запрошенного сайта и типа reCAPTCHA. Проверьте также действие захвата: один общий профиль имени хоста не обязательно подходит для всех действий. Передача site и action в задаче не создаёт профиль. Чтобы решить проблему, откройте страницу «Профили сайтов» в консоли или руководство по настройке профиля.

  4. 4.

    Проверьте входные данные инструмента

    Для solvethree_create_recaptcha передайте site в виде имени хоста, а также action и requestId. Параметр recaptchaType необязателен и по умолчанию равен enterprise-v3. Не подставляйте URL страницы вместо site и не добавляйте в этот инструмент другие типы задач API.

Получение списка возможностей не проверяет аутентификацию или доступ к прокси. Ошибка аутентификации или проверки запроса после успешного вызова capabilities относится к запросу на решение, а не к средству запуска. Обрабатывайте неуспешные HTTP-ответы, прежде чем считать ответ данными успешно созданной задачи.

Отличайте сбой задачи от тайм-аута вызова

Что означает результат задачи
Что означает результат задачи
РезультатСледующее действие
pending или solvingЗадача ещё не завершена. Получите её через solvethree_get_task, а не создавайте новую взамен.
failedПрочитайте errorCode и error, затем прекратите опрос этой задачи. Например, site-unreachable — это ошибка задачи. За неудачные решения средства возвращаются; не считайте, что любой сбой означает нехватку средств.
готовоРешение доступно. MCP-сервер не управляет браузером и не заполняет формы, а готовность решения не означает, что целевой сайт что-либо принял.

Тайм-аут хоста — не статус задачи. Конфигурация в стиле Codex использует tool_timeout_sec со значением 100, но потеря ответа всё равно не доказывает, что создать задачу не удалось. Каждый инструмент создания требует requestId и создаёт не более одной задачи.

Если вы получили ID задачи, запросите эту задачу. В противном случае повторите тот же запрос создания с тем же requestId, чтобы получить существующую задачу. Не генерируйте новый requestId только потому, что время ожидания вызова истекло. Повторное использование ID с изменёнными входными данными задачи вызывает конфликт.

Когда задача будет готова, отправьте её решение с возвращёнными идентификационными данными браузера и прокси, с которым решение было получено. Если после этого сайт отклонит запрос, исследуйте эту отправку, а не запуск MCP. Сохраняйте конфиденциальность данных решения: хост MCP получает их.

Запустите первую задачу.

Начните с $5 на балансе рабочего пространства.

Создать рабочее пространство
Устранение проблем MCP-сервера, который не запускается или не решает задачу · solvethree