# guru.cap/capguru-mcp (pypi · capguru-mcp)

AI captcha solver for agents: reCAPTCHA, hCaptcha, Turnstile, FunCaptcha, GeeTest, SmartCaptcha

- Trust score: 47/100 (low)
- Change this week: −11
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- pypi · `capguru-mcp`: 47/100 (this document), [markdown](https://verifymcp.io/servers/guru-cap-capguru-mcp/capguru-mcp.md), [page](https://verifymcp.io/servers/guru-cap-capguru-mcp/capguru-mcp)

## Channel facts

- Registry: `pypi`
- Package: `capguru-mcp`
- Version: `0.3.5`
- 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-11-05.

- **Supply Chain Security**: 50/100
  - Malware scan not yet available for this package.
  - No known CVEs affecting this package version or its production dependencies.
  - Runs setuptools.build_meta at install time, a recognised build step with no custom scripting around it.
  - 1 of 36 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 6/100
  - Repository check failed: no source repository is declared.
  - Provenance check failed: no build-provenance attestation is published.
  - License check failed: no license is declared.
  - Actively maintained (last published 1 days ago).
  - Security-disclosure policy not yet verified: we couldn't inspect the source repository.
- **Schema Quality & AI Usability**: 65/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 1581 tokens (~93/item across 17 items; 17 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 71/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.
  - Structured output schemas are declared (94% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 17 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 18 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### How do I install the guru.cap/capguru-mcp server?

guru.cap/capguru-mcp runs locally as a PyPI package, launched with uvx capguru-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 guru-cap-capguru-mcp -- uvx capguru-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "guru-cap-capguru-mcp": {
      "command": "uvx",
      "args": [
        "capguru-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "guru-cap-capguru-mcp": {
      "command": "uvx",
      "args": [
        "capguru-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add guru-cap-capguru-mcp -- uvx capguru-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "guru-cap-capguru-mcp": {
      "type": "local",
      "command": [
        "uvx",
        "capguru-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add guru-cap-capguru-mcp --command uvx --arg capguru-mcp
```

### Hermes

```yaml
mcp_servers:
  guru-cap-capguru-mcp:
    command: "uvx"
    args: ["capguru-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "guru-cap-capguru-mcp": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "capguru-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add guru-cap-capguru-mcp -t stdio -c uvx -a capguru-mcp
```

### Other

```json
{
  "mcpServers": {
    "guru-cap-capguru-mcp": {
      "command": "uvx",
      "args": [
        "capguru-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-11-05 (score 47, −15)

- [security regression] Malware scan: pass → unverified

### 2026-11-04 (score 62, +16)

- [security improvement] Malware scan: unverified → pass

### 2026-11-03 (score 46, −12)

- [security regression] Malware scan: pass → unverified
- [functional improvement] Stability: unverified → 0.20
- [functional] Package version: 0.3.4 → 0.3.5

### 2026-10-29 (score 58, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-10-28 (score 43)

First indexed and scored.

## MCP tools (17)

### `open_browser` (~106 tokens)

Launch a new Chromium browser with one page and attach the captcha solver to it.

headless: run without a visible window.
channel: 'chrome' or 'msedge' to use an installed browser instead of bundled Chromium.
proxy: 'http://login:password@host:port' or 'login:password@host:port' (socks5:// also works).

Input parameters:

- `channel` (string)
- `headless` (boolean)
- `proxy` (string)

Output parameters:

- `result` (string)

### `connect_browser` (~54 tokens)

Connect to an already running Chrome started with --remote-debugging-port and attach the solver
to its first tab. Use this to solve captchas in a browser controlled by another tool.

Input parameters:

- `cdp_url` (string)

Output parameters:

- `result` (string)

### `goto` (~49 tokens)

Open a URL in the browser page. wait_until: load | domcontentloaded | networkidle.

Input parameters:

- `timeout` (integer)
- `url` (string, required)
- `wait_until` (string)

Output parameters:

- `result` (string)

### `detect_captcha` (~46 tokens)

Detect which captcha is visible on the page without solving it.
Returns recaptcha2, hcaptcha, yandex, geetest, funcaptcha, tiktok, aws or 'none'.

Output parameters:

- `result` (string)

### `solve_captcha` (~103 tokens)

Solve the captcha on the current page through the Cap.Guru service.

captcha_type: auto | recaptcha2 | hcaptcha | yandex (alias: other) | geetest | funcaptcha | tiktok | aws.
timeout: how many seconds to wait for the captcha to appear on the page.
Solving with clicks can take several minutes; progress notifications are sent every 10 s.

Input parameters:

- `captcha_type` (string)
- `timeout` (integer)

Output parameters:

- `result` (string)

### `solve_recaptcha_token` (~313 tokens)

Get a reCAPTCHA token from Cap.Guru (method userrecaptcha) without solving images.

version: v2 (with invisible=true for v2 Invisible) or v3. For v3: action (the site's action name,
'verify' if not set), min_score and enterprise=true for reCAPTCHA v3 Enterprise (sends enterprise=1).
domain: google.com or recaptcha.net if the site loads reCAPTCHA from recaptcha.net.
sitekey: the k / data-sitekey value. pageurl: full URL of the page.
If a browser page is open, empty sitekey, pageurl, user_agent, invisible, action, enterprise and domain
are taken from it;
with apply_to_page=true a v2 token is put into g-recaptcha-response and the site callback is called.
proxy: same format as in open_browser ('http://login:password@host:port' or 'login:password@host:port').

Input parameters:

- `action` (string)
- `apply_to_page` (boolean)
- `cookies` (string)
- `data_s` (string)
- `domain` (string)
- `enterprise` (boolean)
- `invisible` (boolean)
- `min_score` (number)
- `pageurl` (string)
- `proxy` (string)
- `proxytype` (string)
- `sitekey` (string)
- `user_agent` (string)
- `version` (string)

Output parameters:

- `result` (string)

### `solve_turnstile_token` (~134 tokens)

Get a Cloudflare Turnstile token from Cap.Guru (method turnstile).

sitekey: the data-sitekey value (e.g. 0x4AAAA...). pageurl: URL of the page with Turnstile.
If a browser page is open, empty sitekey/pageurl are taken from it, and with apply_to_page=true the
token is put into cf-turnstile-response and the Turnstile callback is called. Usually 10-30 seconds.

Input parameters:

- `apply_to_page` (boolean)
- `pageurl` (string)
- `sitekey` (string)

Output parameters:

- `result` (string)

### `solve_image_captcha` (~337 tokens)

Recognize a text (image) captcha through Cap.Guru (method base64) and return the text.

Image source, one of:
  selector: the captcha image element on the open page (a screenshot of the element is sent),
  image_base64: image in base64 (a data: URL is also accepted),
  image_path: path to a local image file (png, jpg, gif, bmp, webp up to 5 MB),
  image_url: image URL (downloaded without cookies; use_page_cookies=true sends the page cookies).
vernet: captcha kind; 0 (default) = not sent, the service chooses. Pick the kind that matches the site:
  2 General v1, 6 General v2 (try 2 or 6 for distorted text), 22 Arithmetic (the service returns the
  expression as it is, e.g. 27+15=, and this server calculates the result), 12 Rambler, 18 General Yandex,
  20 Yandex 6 characters, 16 VKontakte, 14 SolveMedia, 13 Gibdd, 9 Ok.ru, 17 World of Tanks,
  5 Microsoft Hotmail.
fill_selector: if set and a page is open, the answer is typed into this input.

Input parameters:

- `fill_selector` (string)
- `image_base64` (string)
- `image_path` (string)
- `image_url` (string)
- `selector` (string)
- `use_page_cookies` (boolean)
- `vernet` (integer)

Output parameters:

- `result` (string)

### `screenshot` (~23 tokens)

Take a screenshot of the current page.

Input parameters:

- `full_page` (boolean)

### `page_text` (~46 tokens)

Return the visible text of the page (or of an element) so the page can be read without a screenshot.

Input parameters:

- `max_chars` (integer)
- `selector` (string)

Output parameters:

- `result` (string)

### `click` (~32 tokens)

Click an element by CSS selector (or Playwright selector such as text=Sign in).

Input parameters:

- `selector` (string, required)

Output parameters:

- `result` (string)

### `fill` (~30 tokens)

Type text into an input found by selector.

Input parameters:

- `selector` (string, required)
- `text` (string, required)

Output parameters:

- `result` (string)

### `press` (~45 tokens)

Press a keyboard key (Enter, Tab, Escape, ArrowDown, Control+A ...), optionally focusing an element first.

Input parameters:

- `key` (string, required)
- `selector` (string)

Output parameters:

- `result` (string)

### `list_tabs` (~27 tokens)

List open tabs with their index, URL and title; the active tab is marked with *.

Output parameters:

- `result` (string)

### `switch_tab` (~34 tokens)

Make the tab with this index (see list_tabs) the active page for all other tools.

Input parameters:

- `index` (integer, required)

Output parameters:

- `result` (string)

### `page_info` (~18 tokens)

Return the current URL and title of the page.

Output parameters:

- `result` (string)

### `close_browser` (~23 tokens)

Close the browser opened by open_browser (or disconnect from a connected one).

Output parameters:

- `result` (string)

## Diagnostics

Captured diagnostic sections: Provenance, Install scripts, Dependencies. The full working is on the page: https://verifymcp.io/servers/guru-cap-capguru-mcp/capguru-mcp#diagnostics

## Score history

- 2026-11-05: 47
- 2026-11-04: 62
- 2026-11-03: 46
- 2026-11-02: 58
- 2026-11-01: 58
- 2026-10-31: 58
- 2026-10-30: 58
- 2026-10-29: 58
- 2026-10-28: 43

## Common questions

### What is the guru.cap/capguru-mcp server?

guru.cap/capguru-mcp is listed in the public MCP registry as guru.cap/capguru-mcp. AI captcha solver for agents: reCAPTCHA, hCaptcha, Turnstile, FunCaptcha, GeeTest, SmartCaptcha. This page covers its PyPI package (capguru-mcp).

### Is the guru.cap/capguru-mcp server safe to use?

guru.cap/capguru-mcp scores 47 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. 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 guru.cap/capguru-mcp server expose?

guru.cap/capguru-mcp exposes 17 tools: open_browser, connect_browser, goto, detect_captcha, solve_captcha, and 12 more. Their descriptions and schemas cost roughly 1,420 tokens of context every time the server is loaded.

### Is the guru.cap/capguru-mcp server still maintained?

guru.cap/capguru-mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- PyPI project: https://pypi.org/project/capguru-mcp/
- Socket report: https://socket.dev/pypi/package/capguru-mcp
- Changelog RSS feed: https://verifymcp.io/servers/guru-cap-capguru-mcp/capguru-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/guru-cap-capguru-mcp/capguru-mcp.json
- HTML version of this page: https://verifymcp.io/servers/guru-cap-capguru-mcp/capguru-mcp
