Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

guru.cap/capguru-mcp

PYPI · CAPGURU-MCP

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

Available components

−11 this week 47 Trust /100

Last scanned (4 hours ago)

Scores higher than 45% of PyPI servers

Category Browser Automation

Trust breakdown (7 categories)

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. How we score → Why this is hard to score →

Supply Chain Security50
  • Malware scan not yet available for this package.Unverified
  • No known CVEs affecting this package version or its production dependencies.Pass
  • Runs setuptools.build_meta at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
  • 1 of 36 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency6
Schema Quality & AI Usability65
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 1581 tokens (~93/item across 17 items; 17 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage71
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 0% of tool parameters carry a description.Fail
  • Structured output schemas are declared (94% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 17 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 18 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 5 Nov 26 −15
    • Malware scan: pass → unverified ▼ security
  • 4 Nov 26 +16
    • Malware scan: unverified → pass ▲ security
  • 3 Nov 26 −12
    • Malware scan: pass → unverified ▼ security
    • Stability: unverified → 0.20 ▲ functional
    • Package version: 0.3.4 → 0.3.5 functional
  • 29 Oct 26 +15
    • Malware scan: unverified → pass ▲ security
  • 28 Oct 26 43

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed pypi/capguru-mcp@0.3.5

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem pypi
Reason No attestation published

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend allowlisted setuptools.build_meta

Background: Why install scripts are a supply-chain risk →

Dependencies 36 packages
Packages resolved 36
No linked repository 1
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 17 exposed · ~1,420 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
click ~32

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

NameTypeReqDescription
selectorstringyes–
NameTypeReqDescription
resultstringyes–

No examples provided.

close_browser ~23

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

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes–

No examples provided.

connect_browser ~54

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.

NameTypeReqDescription
cdp_urlstring––
NameTypeReqDescription
resultstringyes–

No examples provided.

detect_captcha ~46

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

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes–

No examples provided.

fill ~30

Type text into an input found by selector.

NameTypeReqDescription
selectorstringyes–
textstringyes–
NameTypeReqDescription
resultstringyes–

No examples provided.

goto ~49

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

NameTypeReqDescription
timeoutinteger––
urlstringyes–
wait_untilstring––
NameTypeReqDescription
resultstringyes–

No examples provided.

list_tabs ~27

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

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes–

No examples provided.

open_browser ~106

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).

NameTypeReqDescription
channelstring––
headlessboolean––
proxystring––
NameTypeReqDescription
resultstringyes–

No examples provided.

page_info ~18

Return the current URL and title of the page.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes–

No examples provided.

page_text ~46

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

NameTypeReqDescription
max_charsinteger––
selectorstring––
NameTypeReqDescription
resultstringyes–

No examples provided.

press ~45

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

NameTypeReqDescription
keystringyes–
selectorstring––
NameTypeReqDescription
resultstringyes–

No examples provided.

screenshot ~23

Take a screenshot of the current page.

NameTypeReqDescription
full_pageboolean––

No output schema declared.

No examples provided.

solve_captcha ~103

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.

NameTypeReqDescription
captcha_typestring––
timeoutinteger––
NameTypeReqDescription
resultstringyes–

No examples provided.

solve_image_captcha ~337

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.

NameTypeReqDescription
fill_selectorstring––
image_base64string––
image_pathstring––
image_urlstring––
selectorstring––
use_page_cookiesboolean––
vernetinteger––
NameTypeReqDescription
resultstringyes–

No examples provided.

solve_recaptcha_token ~313

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').

NameTypeReqDescription
actionstring––
apply_to_pageboolean––
cookiesstring––
data_sstring––
domainstring––
enterpriseboolean––
invisibleboolean––
min_scorenumber––
pageurlstring––
proxystring––
proxytypestring––
sitekeystring––
user_agentstring––
versionstring––
NameTypeReqDescription
resultstringyes–

No examples provided.

solve_turnstile_token ~134

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.

NameTypeReqDescription
apply_to_pageboolean––
pageurlstring––
sitekeystring––
NameTypeReqDescription
resultstringyes–

No examples provided.

switch_tab ~34

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

NameTypeReqDescription
indexintegeryes–
NameTypeReqDescription
resultstringyes–

No examples provided.

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.

pypi · capguru-mcp

# add to Claude Code
claude mcp add guru-cap-capguru-mcp -- uvx capguru-mcp
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.