NEX CAPTCHA / MCP

让 AI 助手接入验证码服务

通过托管 MCP 连接你的 AI 工具。使用现有 API Key,查阅产品、创建验证码任务并获取结果,无需部署本地服务。

选择接入流程

HTTP_SUBMIT

纯 HTTP 提交

目标业务及验证提交能通过 HTTP 完成,且能保持必要会话条件。有识别 API 不代表整个网站支持纯 HTTP 操作。

获取目标挑战与参数 → 创建并查询对应识别任务 → 随目标请求提交结果 → 检查验证及业务结果。

BROWSER_RESULT

浏览器应用识别结果

浏览器工具能读取当前接入参数,并按目标集成方式使用该产品结果。浏览器执行能力与识别服务能力需要分别判断。

读取当前原生产品参数 → 识别 → 回填规定的 Token 字段或回调,或按契约成组替换或提交匹配的挑战标识与证明或答案 → 正常提交 → 检查目标验证及业务结果。仅替换图片不等于完成接入。

BROWSER_INTERACTION

浏览器图片交互

当前挑战符合所选图片产品,浏览器工具可以取得正确图片,并执行所需点击、旋转或拖动。

取得当前挑战及原始题目 → 识别 → 将答案映射到当前图片 → 执行交互 → 检查换图或下一轮挑战 → 确认目标结果。

识别成功 → 目标验证通过 → 业务完成

失败处理
失败编码下一步
INVALID_INPUTREAD_PRODUCT_SCHEMA

补齐或修正参数;不要原样重试错误参数或切换 GRID。

TRANSPORT_OR_WAFINSPECT_REQUEST_CHAIN

检查 HTTP、网络及 WAF 响应。403 不是识别结果;不确定是否送达时,用相同 requestId 和参数重试。

TASK_EXPIREDRECAPTURE_CHALLENGE

检查当前挑战及有效期,确认仍有需要后再创建新付费任务。

PROVIDER_INPUT_INVALIDREAD_PRODUCT_SCHEMA

上游拒绝参数,检查产品选择、当前参数及题目。

PROVIDER_UNSOLVABLEINSPECT_CHALLENGE

先检查图片质量、题目及挑战是否仍有效,再决定是否付费重试。

PROVIDER_UNAVAILABLERETRY_LATER

服务可用性问题,不要仅因此更换验证码产品。

TASK_FAILEDINSPECT_CHALLENGE

暂无明确公开原因。报告任务 ID 并检查上下文;不能宣称目标拒绝或推断产品不支持。

TARGET_REJECTEDCHECK_BINDING_AND_EXPIRY

由调用方观察,不能从识别状态推断。检查目标响应、挑战关联及有效期。

BROWSER_APPLICATION_UNSUPPORTEDCHANGE_EXECUTION_ENVIRONMENT

浏览器无法使用结果,应报告执行能力限制,不能判定识别产品不可用。

01 / CONNECT

连接 MCP

托管服务

选择客户端,复制配置并替换为你的 API Key。请妥善保存配置,避免公开分享密钥。

服务地址https://app.nexcaptcha.net/mcp

在个人配置中获取 API Key,或登录后自动填入。

已有配置时,只合并 nex-captcha 节点,保留其他服务器和设置。~ 表示用户主目录,Windows 可使用 %USERPROFILE%。

Claude Code

官方配置说明
  1. 在已安装 Claude Code 的终端执行以下命令,将服务器添加到当前用户配置。

    claude mcp add --transport http --scope user nex-captcha 'https://app.nexcaptcha.net/mcp' --header 'Authorization: Bearer YOUR_API_KEY'
  2. 连接检查

    执行 claude mcp list 确认配置,然后在 Claude Code 内输入 /mcp 检查 nex-captcha 的连接和五个工具。

    查询我的 Nex Captcha 余额和支持的产品列表。不要创建任务。

验证连接

仅读取余额,不创建任务,不产生费用。

02 / TOOLS

可用工具

5 TOOLS
list_products免费

查看已启用的产品、单次美元价格及超时时间。一次返回完整列表。

get_product_schema免费

传入 productCode 获取产品的参数模型和示例,创建任务前先查阅。

create_task

传入 productCode、adapter 和唯一 requestId 创建任务。重试时保持相同 requestId 和参数。

get_task免费

按 create_task 返回的平台 id 兜底查询结果;可使用 WebSocket 时,优先接收 task.updated。

get_balance免费

查看账户当前美元余额。1 USD = 1 balance。

仅创建任务按产品单次价格扣费,其他工具免费。任务失败或过期会退款,资产记录中可查阅计费和退款。

03 / REALTIME

WebSocket 结果推送

客户端或 MCP 宿主支持 WebSocket 时优先使用:先建立连接并等待 socket.ready,再创建任务。收到 task.updated 立即处理;仅在无法连接、断线或遗漏消息时使用 REST query.cgi 或 MCP get_task 兜底。

任务 WebSocket 独立于 MCP 的 HTTP 传输。宿主或配套进程能设置 WebSocket 握手请求头时,用同一个 API Key 放入 apiKey 请求头连接。支持 MCP 不代表具备 WebSocket 能力;无法建立连接时,用返回的 id 调用 get_task,并遵守 nextPollAfterSeconds。工具结果中的 resultDelivery 提供优先接入地址和心跳配置。

wss://app.nexcaptcha.net/socket/task.cgi
apiKey: YOUR_API_KEY
socket.ready → create_task → task.updated
task.taskId = create_task id
{"type":"heartbeat"} → {"type":"heartbeat.ack"}

WebSocket 的 API Key 只能放在握手请求头中,不能放入 URL 参数。独立客户端使用 apiKey 请求头;浏览器使用登录 Cookie,只有 API Key 时通过带请求头的 REST 查询获取结果,因为原生 WebSocket 无法设置自定义头。推送只属于当前鉴权用户。

HTTPS 环境使用 WSS。断线后退避重连;连接会回放最近 20 条终态任务,不提供完整事件历史。遗漏的 taskId 用 query.cgi 或 get_task 恢复。凭证缺失、无效、撤销或过期时以 4003 关闭;空闲或不可靠连接以 4500 关闭。

API、MCP 等入口创建的任务,每次状态变更提交成功后都会推送给该鉴权账户。成功时读取 result,失败时读取 failure.code 和 nextAction。每 20 秒发送心跳并确认 heartbeat.ack;超过 35 秒无心跳后,由每 10 秒运行的检查断开连接。断线后退避重连,不要因断线重建收费任务。按 taskId 幂等处理,已收到终态后忽略更旧或回放的消息。

容器按用户 ID 绑定每个实例上的当前单条连接;新连接以 4009 替换旧连接。同账户的多个接入者应由宿主共享订阅,被替换端应停止自动重连。实例最多 256 条连接;收到 1013 时请退避重试。慢客户端积压超过 64 条消息或 256 KiB UTF-8 数据时,以 4500 断开,遗漏的 taskId 请通过查询恢复。单条消息上限为 256 KiB。

API文档 · Python · Java 21

04 / WORKFLOW

从创建到结果

  1. 选择产品并确认参数list_products → get_product_schema
  2. 创建一次任务socket.ready → create_task(productCode, adapter, requestId)
  3. 优先接收推送结果,主动查询仅作兜底task.updated → get_task({"id": "TASK_ID"})

重试创建时复用相同 requestId 和参数。优先通过 WebSocket 获取结果;无法接入或断线时,用 id 调用 get_task 恢复结果,不要再次创建收费任务。主动查询时遵守 nextPollAfterSeconds。

支持 Streamable HTTP,协议版本 2025-03-26、2025-06-18 和 2025-11-25。使用 Authorization: Bearer API_KEY 鉴权。