by zigansh1n
I am not a robot — a captcha solver for macOS: local model, Gemini vision, a stealth browser for checkbox captchas, RuCaptcha as the last resort. 2Captcha-compatible API and an MCP server.
# Add to your Claude Code skills
git clone https://github.com/zigansh1n/imnotarobotGuides for using mcp servers skills like imnotarobot.
See how imnotarobot compares with popular alternatives.
imnotarobot is an open-source mcp servers skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by zigansh1n. I am not a robot — a captcha solver for macOS: local model, Gemini vision, a stealth browser for checkbox captchas, RuCaptcha as the last resort. 2Captcha-compatible API and an MCP server. It has 50 GitHub stars.
imnotarobot's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/zigansh1n/imnotarobot" and add it to your Claude Code skills directory (see the Installation section above).
imnotarobot is primarily written in Python. It is open-source under zigansh1n on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other MCP Servers skills you can browse and compare side by side. Open the MCP Servers category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh imnotarobot against similar tools.
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
Available after the catalog security scan passes.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
English · Русский
A free-first captcha solver for macOS. A drop-in replacement for the 2Captcha / RuCaptcha API that tries free solvers first — a local model, then any vision model you choose, then an invisible browser — and pays human workers only when nothing else worked. Comes with a menu bar app and an MCP server for AI agents.

ImNotARobot.dmg from Releases and move the app to Applications. It is not signed by Apple yet: if macOS blocks the first launch, press Open Anyway in System Settings → Privacy & Security.http://127.0.0.1:8765 and the API key to the access key from Connection.Optional: add a RuCaptcha or 2Captcha key as the last, paid step.
| Step | Solves | Cost | Time |
|---|---|---|---|
| 1. Local model (ddddocr, piece matching) | text, sliders | free | milliseconds |
| 2. Vision model (any: GPT, Claude, Gemini, Qwen, DeepSeek, Grok, local) | text, picture grids, clicks | free tier or cents | 3–8 s |
| 3. Backup vision model (another model or the same with thinking) | what step 2 was unsure about | free tier or cents | 10–50 s |
| 4. Browser (invisible Chrome) | reCAPTCHA v2/v3, hCaptcha, Turnstile | free | 3 s – 2 min |
| 5. RuCaptcha / 2Captcha | anything | paid | 10–60 s |
On our test set and the official demo pages, October 2026. Small samples; rerun the checkbox part yourself with python -m imnotarobot.demo_bench --runs 10.
| Captcha | Result |
|---|---|
| Text, picture grids (vision model) | 100% |
| Clicks on real captchas (vision model) | 69–72% of 39 |
| reCAPTCHA v2 demo (browser) | accepted by Google 2 of 3, median 118 s |
| reCAPTCHA v3, Turnstile test key (browser) | 5 of 5, 3–4 s |
| hCaptcha demo (browser) | 5 of 5, median 82 s |
People share their model comparisons from the app (Share results, nothing is sent without you pressing Submit on GitHub); the table is in community results.
| I'm Not a Robot | 2Captcha / CapSolver | OhMyCaptcha | hcaptcha-challenger | |
|---|---|---|---|---|
| Price | free first, paid last | paid per captcha | free | free |
| Drop-in 2Captcha API | ✓ | ✓ | YesCaptcha API | — |
| Captcha kinds | 8 own + any via humans | 30+ | 19 | hCaptcha |
| Desktop app, journal, limits | ✓ | web dashboard | — | — |
| MCP for agents | ✓ | ✓ | — | — |
| Runs on servers / Docker | ✓ | ✓ | ✓ | ✓ |
import time, requests
API, KEY = "http://127.0.0.1:8765", "your-access-key"
task = requests.post(f"{API}/createTask", json={"clientKey": KEY, "task": {
"type": "RecaptchaV2TaskProxyless", "websiteURL": "https://example.com/login", "websiteKey": "SITE_KEY"}}).json()
while (r := requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json())["status"] == "processing":
time.sleep(2)
print(r["solution"]["gRecaptchaResponse"], "solved by", r["layer"])
The old API (in.php / res.php) works too. Besides the 2Captcha fields, getTaskResult returns layer, confidence, notes (what was tried before) and lowConfidence.
{"mcpServers": {"imnotarobot": {"command": "/Applications/ImNotARobot.app/Contents/MacOS/ImNotARobot", "args": ["--mcp"]}}}
Tools: solve_image_captcha, solve_token_captcha, report_wrong, captcha_status.
| Type | local | vision | browser | humans |
|---|---|---|---|---|
ImageToTextTask |
✓ | ✓ | ✓ | |
GridTask (answer is tile numbers from 1) |
✓ | ✓ | ||
CoordinatesTask (answer in pixels) |
✓ | ✓ | ||
SlideMatchTask (own: target + background) |
✓ | |||
RecaptchaV2TaskProxyless, RecaptchaV3TaskProxyless, HCaptchaTaskProxyless, TurnstileTaskProxyless |
✓ | ✓ | ||
| Any other 2Captcha type | ✓ |
The same API and MCP on Linux, without the window:
docker build -t imnotarobot .
docker run -p 8765:8765 -e GEMINI_API_KEY=... -e CLIENT_KEY=your-access-key -v imnotarobot:/data imnotarobot
HUMAN_API_KEY (and HUMAN_PROVIDER=2captcha if needed) adds the paid last step. Keys are kept in /data/secrets.json, readable only by the server.
uv venv -p 3.12 .venv && uv pip install -p .venv/bin/python -e ".[test]" pyinstaller
.venv/bin/python -m pytest -q
packaging/build.sh # builds ImNotARobot.app into ~/Applications
.venv/bin/python -m imnotarobot --port 8765 # the server alone, no window
The app speaks the system language: English or Russian.
Use it on your own sites, for testing, and for automation you are allowed to run. Respect the terms of the sites you visit. The project does not target any particular site.