# io.github.CapMonsterCloud/capmonster-mcp-captcha-solver (npm · capmonster-mcp)

CapMonster Cloud MCP server — AI captcha solver for reCAPTCHA, Turnstile & DataDome for AI agents.

- Trust score: 68/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-20

## Components

- npm · `capmonster-mcp`: 68/100 (this document), [markdown](https://verifymcp.io/servers/capmonstercloud-capmonster-mcp-captcha-solver/capmonster-mcp.md), [page](https://verifymcp.io/servers/capmonstercloud-capmonster-mcp-captcha-solver/capmonster-mcp)

## Channel facts

- Registry: `npm`
- Package: `capmonster-mcp`
- Version: `0.1.10`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-20.

- **Supply Chain Security**: 98/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - 31 of 96 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 1 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 78/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1859 tokens (~232/item across 8 items; 8 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 67/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 0% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 8 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### How do I install the io.github.CapMonsterCloud/capmonster-mcp-captcha-solver server?

io.github.CapMonsterCloud/capmonster-mcp-captcha-solver runs locally as an npm package, launched with npx -y capmonster-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add capmonstercloud-capmonster-mcp-captcha-solver -- npx -y capmonster-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "capmonstercloud-capmonster-mcp-captcha-solver": {
      "command": "npx",
      "args": [
        "-y",
        "capmonster-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "capmonstercloud-capmonster-mcp-captcha-solver": {
      "command": "npx",
      "args": [
        "-y",
        "capmonster-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add capmonstercloud-capmonster-mcp-captcha-solver -- npx -y capmonster-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "capmonstercloud-capmonster-mcp-captcha-solver": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "capmonster-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add capmonstercloud-capmonster-mcp-captcha-solver --command npx --arg -y --arg capmonster-mcp
```

### Hermes

```yaml
mcp_servers:
  capmonstercloud-capmonster-mcp-captcha-solver:
    command: "npx"
    args: ["-y", "capmonster-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "capmonstercloud-capmonster-mcp-captcha-solver": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "capmonster-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add capmonstercloud-capmonster-mcp-captcha-solver -t stdio -c npx -a -y capmonster-mcp
```

### Other

```json
{
  "mcpServers": {
    "capmonstercloud-capmonster-mcp-captcha-solver": {
      "command": "npx",
      "args": [
        "-y",
        "capmonster-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-18 (score 68)

First indexed and scored.

## MCP tools (8)

### `get_actual_user_agent` (~241 tokens)

Get actual User-Agent

Fetch a current, real-world (Windows) User-Agent string from CapMonster's
UA service.

Use ONE User-Agent as a single fingerprint thread across the whole solve —
they must all match or the solved token is likely to be rejected:

  1\. set it as the patchright browser context's UA (browser-launch flag /
     device emulation), so the page is loaded with it;
  2\. pass the SAME string as the `userAgent` field of any CapMonster task
     that accepts one (reCAPTCHA, Turnstile/Cloudflare, FunCaptcha, AWS WAF,
     DataDome, Imperva, Yidun, TenDI, …);
  3\. when the solution comes back with its own `userAgent` (or
     `headers["User-Agent"]`), the token is bound to THAT value — reuse it
     for the injection and any follow-up requests instead of your original.

CapMonster requires a current Windows-OS UA; a stale/invalid one fails with
ERROR_WRONG_USERAGENT, so re-fetch here rather than reusing an old one.

### `create_task` (~272 tokens)

Create captcha task

Submit a captcha task; returns taskId. Poll with get_task_result.

task must include 'type' and all required fields. Always look up
required params at https://docs.capmonster.cloud/docs/captchas/ —
do not rely on training data.

For a task holding one or more large base64 blobs (ComplexImageTask with
several images, htmlPageBase64 for Cloudflare cf_clearance/wait_room, or
any other opaque field/combined payload too big to type safely) pass
\`task_file` instead of `task`: the path to a JSON file, on this machine's
filesystem, containing the exact task object. Write that file with a
script or a browser-side save (never by hand-typing a long base64 literal
into this tool call's own arguments — a single dropped/unclosed quote in
a multi-KB string silently merges what should be separate array elements
into one, which is why this exists: a 9-image ComplexImageTask sent
inline this way became "Image count: 1, but the task supports: 9" even
though the array had 9 entries when written). Provide exactly one of
\`task` or `task_file`.

Input parameters:

- `task` (object)
- `task_file` (string)

### `get_task_result` (~313 tokens)

Get task result (single poll)

Fetch a task result ONCE (a single poll).

Prefer `get_task_result_wait`, which polls for you. Use this only if you
want to drive the poll loop yourself.

Returns a dict:
  \- while solving:  {"status": "processing", ...} — retry after 2-3 s.
    Poll no faster than once per 2 s (max 120 polls per task), and fetch
    the result promptly: the task is stored for only ~5 min before it
    expires with ERROR_NO_SUCH_CAPCHA_ID.
  \- when ready:     {"status": "ready", "solution": {...}, "cost": ..., ...}

The `solution` object is CapMonster's raw solution, returned verbatim — its
shape differs per captcha type. Extract fields by the shape documented for
that type (get_docs), e.g. `gRecaptchaResponse`/`token` for
reCAPTCHA/Turnstile, nested `domains[host].cookies.*` for DataDome/Imperva,
\`data.randstr` + `data.ticket` for TenDI, etc.

IMPORTANT: several types return a `userAgent` (or `headers["User-Agent"]`)
inside the solution — the solved token is bound to it, so reuse that exact
UA in the browser / subsequent requests when injecting (Cloudflare
Challenge, FunCaptcha, AWS WAF, Binance, TenDI, Basilisk).

Input parameters:

- `task_id` (number, required)

### `get_task_result_wait` (~307 tokens)

Get task result (poll to completion)

Poll a task to completion and return its solution (the usual way to
collect a result after create_task).

Blocks, polling /getTaskResult every `poll_interval_seconds` until the task
is ready or `timeout_seconds` elapses. This respects CapMonster's limits for
you — the interval is clamped to a minimum of 2 s (the API rejects faster
polling with ERROR_TOO_MUCH_REQUESTS) and the number of polls is capped at
120 per task.

Returns the same ready dict as get_task_result:
  {"status": "ready", "solution": {...}, "cost": ..., ...}
The `solution` is CapMonster's raw solution, verbatim — its shape differs
per captcha type (see get_task_result / get_docs).

IMPORTANT: several types return a `userAgent` (or `headers["User-Agent"]`)
inside the solution — the token is bound to it, so reuse that exact UA when
injecting (Cloudflare Challenge, FunCaptcha, AWS WAF, Binance, TenDI,
Basilisk).

Raises an error on solve error (e.g. ERROR_RECAPTCHA_TIMEOUT — often a slow
proxy) or if the task is still processing when `timeout_seconds` is reached
(increase the timeout, or check the proxy/params and re-create the task).

Input parameters:

- `poll_interval_seconds` (number)
- `task_id` (number, required)
- `timeout_seconds` (number)

### `get_balance` (~14 tokens)

Get CapMonster balance

Get CapMonster account balance.

### `get_supported_tasks` (~25 tokens)

List supported captcha task types

List captcha task types supported by CapMonster, sourced from the OpenAPI spec.

### `get_task_parameters` (~302 tokens)

Get task type parameters

Return the parameters for a CapMonster task type, from the live OpenAPI spec.

Use after get_supported_tasks() to look up what fields a task needs.
Pass either a top-level type name (e.g. 'RecaptchaV2Task', 'TurnstileTask')
or a CustomTask class name (e.g. 'DataDome', 'altcha', 'HUNT').

Returns:
  \- all_parameters: every field with its type/description (nested objects
    like `metadata` are expanded).
  \- required: the fields the spec marks required.
  \- description: the type's own spec note. READ IT — for several types it is
    where the spec records that the type has mutually-exclusive VARIANTS and
    which fields each needs (e.g. Turnstile's `cloudflareTaskType`, AWS WAF's
    challenge/captcha/cookie option-sets). The flat `required` list CANNOT
    express those variants, so it under-reports what a given variant needs.
  \- solution: the name of the solution schema this type returns.

⚠️ The flat field list is a starting point, not the whole contract. When
\`description` mentions variants/options/modes — or whenever you are unsure —
confirm the exact per-variant field set and the solution shape against the
worked examples via get_docs before building the task.

Input parameters:

- `task_type` (string, required)

### `get_docs` (~385 tokens)

Fetch CapMonster documentation

Fetch a CapMonster documentation page by its URL and return its text.

Use this to read a captcha type's docs (exact task parameters, how to extract
them from a live page, and worked createTask/getTaskResult examples). Pick the
URL from the llms.txt index (https://docs.capmonster.cloud/llms.txt) — it lists
every doc page. Also accepts llms-full.txt and the OpenAPI spec URL.

Only URLs on docs.capmonster.cloud or api.capmonster.cloud are allowed.

Jumping to a section (preferred on big pages — avoids paging by hand):
  \- Pass `section="<heading>"` to return just that `##`/`###` section (from its
    heading down to the next same-or-higher-level heading). Matching is
    case-insensitive and substring-based, so `section="Examples of solving"`
    or even `section="examples"` works. Great for going straight to
    "Create task", "Get task result", or "Examples of solving …".
  \- When a page is returned in chunks, the first chunk is prefixed with a
    section outline (each heading and the exact `section="…"` to jump to it),
    so you can pick the section you need in one follow-up call.

Paging (when you want the raw text, no section):
  Pages that don't fit in `limit` characters are returned one chunk at a time,
  starting at `offset`. The chunk is prefixed with a header showing the range,
  the total length, and (if there's more) the `offset` to pass on the next
  call — keep calling with that offset until the header says end of document.

Input parameters:

- `limit` (number)
- `offset` (number)
- `section` (string)
- `url` (string, required)

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/capmonstercloud-capmonster-mcp-captcha-solver/capmonster-mcp#diagnostics

## Score history

- 2026-09-20: 68
- 2026-09-19: 68
- 2026-09-18: 68

## Common questions

### What is the io.github.CapMonsterCloud/capmonster-mcp-captcha-solver server?

io.github.CapMonsterCloud/capmonster-mcp-captcha-solver is listed in the public MCP registry as io.github.CapMonsterCloud/capmonster-mcp-captcha-solver. CapMonster Cloud MCP server, AI captcha solver for reCAPTCHA, Turnstile & DataDome for AI agents. This page covers its npm package (capmonster-mcp).

### Is the io.github.CapMonsterCloud/capmonster-mcp-captcha-solver server safe to use?

io.github.CapMonsterCloud/capmonster-mcp-captcha-solver scores 68 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the io.github.CapMonsterCloud/capmonster-mcp-captcha-solver server expose?

io.github.CapMonsterCloud/capmonster-mcp-captcha-solver exposes 8 tools: get_actual_user_agent, create_task, get_task_result, get_task_result_wait, get_balance, and 3 more. Their descriptions and schemas cost roughly 1,859 tokens of context every time the server is loaded.

### Is the io.github.CapMonsterCloud/capmonster-mcp-captcha-solver server still maintained?

io.github.CapMonsterCloud/capmonster-mcp-captcha-solver is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the io.github.CapMonsterCloud/capmonster-mcp-captcha-solver server under?

io.github.CapMonsterCloud/capmonster-mcp-captcha-solver declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/capmonster-mcp
- Socket report: https://socket.dev/npm/package/capmonster-mcp
- Repository: https://github.com/CapMonsterCloud/capmonster-mcp-captcha-solver
- Website: https://capmonster.cloud/en/
- Changelog RSS feed: https://verifymcp.io/servers/capmonstercloud-capmonster-mcp-captcha-solver/capmonster-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/capmonstercloud-capmonster-mcp-captcha-solver/capmonster-mcp.json
- HTML version of this page: https://verifymcp.io/servers/capmonstercloud-capmonster-mcp-captcha-solver/capmonster-mcp
