在浏览器智能体中使用 CAPTCHA MCP 结果

作者:solvethree阅读需 1 分钟

使用 MCP 获取解决结果,再让浏览器智能体通过应用的实际请求提交。solvethree 不会操控浏览器或填写表单。创建付费任务前,请确认浏览器工具能使用求解器的代理和返回的浏览器身份信息。

本页内容

创建任务前检查浏览器宿主

  1. 1.

    配置本地 MCP 服务器

    按照 MCP 设置说明,通过 npx 启动 solvethree-mcp。它是本地 stdio 服务器,而不是托管端点。通过宿主环境提供 SOLVETHREE_API_KEY 和 SOLVETHREE_PROXY;不要将凭据放入智能体的提示词中。

  2. 2.

    检查可用工具和站点配置

    调用 solvethree_capabilities 查看可用能力。对于 reCAPTCHA Enterprise,工作区必须已经具备适用于目标主机名、采集 action 和 reCAPTCHA 类型的有效配置。向创建工具传入 site 和 action 并不会创建该配置。如果仍需设置,请使用站点配置。

  3. 3.

    确认浏览器能提交匹配的请求

    浏览器必须支持使用同一个固定代理,以及返回的 userAgent 和 secChUa。它还必须保留应用所需的 Cookie、CSRF 字段和会话条件。如果浏览器工具无法配置这些内容,请在支付求解费用之前停止,不要改用不相关的浏览器会话。

对于 reCAPTCHA MCP 工具,其唯一的代理来自 SOLVETHREE_PROXY,而不是工具参数。浏览器提交时也应固定使用该代理。宿主会接收到私密的解决结果数据,因此不要在智能体的常规报告中包含令牌和代理凭据。

给智能体一个边界明确的任务

配置好 MCP 服务器和浏览器后,使用这条指令。提供应用请求中的目标主机名和执行 action。solvethree_create_recaptcha 默认使用 Enterprise v3;其必需参数为 site、action 和 requestId。

面向浏览器智能体的任务专用指令
Use the already-configured solvethree MCP server for one reCAPTCHA Enterprise task.
The target hostname must have an active workspace profile before creation.
1. Keep one requestId for this logical task. Ask before starting another paid task.
2. Call solvethree_create_recaptcha with site, action and that requestId.
   The server reads its target proxy from SOLVETHREE_PROXY.
3. Save the returned id. Call solvethree_get_task for that id while pending/solving,
   stopping at ready, failed or the agreed deadline. Never poll by creating again.
4. If ready, submit solution.token using the application’s actual token parameter.
   Use the returned userAgent/secChUa and the same pinned proxy in the browser.
   Keep the application’s cookies, CSRF fields and session requirements.
5. Read the application response. Report task ID and outcome, not secret solution data.
If the browser tool cannot configure that proxy and identity, stop and explain the
missing capability instead of claiming it submitted an equivalent request.

保存的任务 id 用于 solvethree_get_task,并不是要提交给网站的值。pending 和 solving 表示应在约定的截止时间内继续等待。只有 ready 状态才包含可用的解决结果。状态为 failed 时,读取 errorCode 和 error,然后停止轮询该任务。

提交应用实际需要的结果

不存在通用的自动填充步骤。先确定应用中使用该结果的请求,再使用对应的解决结果字段。对于下方每种结果,都应针对其预定目标使用返回的浏览器身份信息和求解成功时使用的代理。

任务就绪后浏览器智能体必须应用的内容
任务就绪后浏览器智能体必须应用的内容
MCP 创建工具就绪结果浏览器交接
solvethree_create_recaptchasolution.token将令牌放入应用实际使用的令牌参数中。不要提交任务 ID,也不要假定某个特定的表单字段名。
solvethree_create_tmptsolution.token,包含原始 tmpt Cookie 值为预定的目标请求设置 tmpt Cookie。它不是 reCAPTCHA 令牌。Event 任务使用活动 URL;Login 任务使用登录入口 URL。
solvethree_create_kasadasolution.headers将返回的请求头一并应用到预定请求。独立 Kasada 目前支持 www.ticketmaster.com 上的 HTTPS 目标,不支持任意站点。

提交后,检查应用响应。任务状态为 ready 表示已生成解决结果,并不代表目标网站已接受该结果。如果目标网站拒绝它,请先检查发出的请求:确认实际发送了令牌、Cookie 或请求头,以及匹配的代理、身份信息和应用会话。报告任务 ID 和应用处理结果,但不要泄露解决结果。

恢复超时请求,不创建新任务

为每个逻辑任务生成一个 requestId,并将其与原始输入一起保存。它必须包含 1–64 个 ASCII 字母、数字、下划线或连字符。如果在收到 id 之前创建请求超时,请使用相同的 requestId 和未更改的输入重复相同的创建请求,以找回现有任务。如果已有任务 id,请使用 solvethree_get_task。

复用该 ID 时不要更改输入,否则会导致冲突。不要仅因响应丢失或轮询截止时间已过就生成新 ID。这两种情况都不能证明原始任务已失败。

每次 MCP 创建调用最多创建一个任务,但这并不会限制智能体的支出。开始另一个逻辑任务前,必须获得批准。对于已终止的失败任务,先检查 errorCode 和 error,再决定是否有必要修正请求;求解失败会退款。请求错误与状态为 failed 的任务是不同的问题。

运行您的第一个任务。

使用 $5 工作区额度开始体验。

创建工作区
在浏览器智能体中使用 CAPTCHA MCP 结果 · solvethree