Ejecuta el servidor MCP de solvethree en Docker

Por solvethree3 min de lectura

Compila una imagen local a partir de la descarga oficial versionada del SDK y haz que tu host MCP la inicie con Docker. Mantén stdin abierto con -i y omite -t: el servidor se comunica mediante JSON-RPC sobre stdio, no mediante un protocolo de terminal.

En esta página

Compila la imagen local

Guarda esto como Dockerfile. Instala el paquete oficial sobre Node 22, cambia al usuario node sin privilegios de root e inicia solvethree-mcp como punto de entrada del contenedor. Los comandos de compilación y ejecución se incluyen a continuación.

Dockerfile · servidor stdio local
FROM node:22.23.4-alpine
RUN npm install --global https://solvethree.com/downloads/solvethree-sdk-0.1.0.tgz
USER node
ENTRYPOINT ["solvethree-mcp"]

# Build: docker build -t solvethree-mcp-local .
# Forward variables already set in the host; do not add their values to this file.
# Run: docker run --rm -i -e SOLVETHREE_API_KEY -e SOLVETHREE_PROXY solvethree-mcp-local

Antes de ejecutarlo, configura SOLVETHREE_API_KEY con la clave de API de tu espacio de trabajo y SOLVETHREE_PROXY con tu proxy en el entorno que inicia Docker. Cada -e NAME pasa una variable existente; no proporciona un valor. No incluyas credenciales en el Dockerfile ni en la imagen.

La imagen se compila localmente como solvethree-mcp-local; no se necesita una cuenta de Docker Hub. Ejecutarla no crea un endpoint MCP alojado ni añade automatización del navegador.

Haz que tu host MCP inicie Docker

Configura un servidor stdio en tu host MCP. Usa Docker como comando, no solvethree-mcp: el punto de entrada de la imagen inicia el ejecutable dentro del contenedor.

Configuración de inicio del host MCP
Configuración de inicio del host MCP
ConfiguraciónValor
Comandodocker
Argumentos, en ordenrun, --rm, -i, -e, SOLVETHREE_API_KEY, -e, SOLVETHREE_PROXY, solvethree-mcp-local

No añadas -t. El host necesita stdin y stdout del contenedor para JSON-RPC. --rm elimina el contenedor cuando termina.

Ambas variables de entorno deben estar disponibles para el proceso del host MCP. Configurarlas en una terminal no sirve para un host iniciado desde otro lugar, a menos que ese host las herede. Si el host restringe el paso de variables de entorno, permite ambos nombres.

Para una configuración TOML de estilo Codex, usa la tabla mcp_servers.solvethree con el comando y los argumentos anteriores. Incluye ambos nombres de variable en env_vars, establece startup_timeout_sec en 60 y tool_timeout_sec en 100. Consulta la documentación de integración de MCP para conocer el contrato subyacente del servidor.

Solicita una tarea y entrega el resultado

  1. 1.

    Consulta las herramientas disponibles

    Llama a solvethree_capabilities después de conectarte. El servidor ofrece herramientas de resolución y recuperación de tareas; no controla un navegador ni rellena formularios.

  2. 2.

    Prepara el perfil de reCAPTCHA

    Para reCAPTCHA, configura un perfil activo en Perfiles de sitio antes de solicitar una resolución. Haz coincidir el nombre de host, la acción de captura y el tipo de reCAPTCHA; no supongas que un perfil de dominio cubre todas las acciones. Enviar una tarea no crea un perfil. La guía de configuración de perfiles explica este requisito previo.

  3. 3.

    Crea una única tarea lógica

    Llama a solvethree_create_recaptcha con site, action y un requestId; recaptchaType y waitMs son opcionales. Esta herramienta lee su único proxy de SOLVETHREE_PROXY. Cada llamada de creación genera como máximo una tarea. Si la creación agota el tiempo de espera, reutiliza el mismo ID de solicitud sin cambiar los datos de entrada para recuperar la tarea existente en lugar de crear otra.

  4. 4.

    Espera un resultado utilizable

    Si la tarea está en estado pending o solving, recupérala con solvethree_get_task. Solo ready contiene una solución utilizable. En caso de failed, deja de consultar y examina errorCode y error antes de decidir qué cambiar.

  5. 5.

    Envía desde tu aplicación

    Para reCAPTCHA, envía solution.token, no el ID de la tarea. Usa la identidad devuelta en userAgent y secChUa con el proxy que permitió la resolución. Una tarea lista significa que se ha generado una solución, no que el destino haya aceptado la solicitud de tu aplicación.

El host MCP recibe datos privados de la solución. No incluyas esos resultados en registros compartidos; tu aplicación sigue siendo responsable de enviarlos al destino previsto.

Ejecuta tu primera tarea.

Empieza con $5 de crédito en tu espacio de trabajo.

Crear un espacio de trabajo
Ejecuta el servidor MCP de solvethree en Docker · solvethree