Back to Directory/Developer Tools

io.github.capsolver-ai/capsolver-mcp

MCP Server for CapSolver - captcha-solving capabilities for AI agents

Developer ToolsPythonv0.1.3

capsolver-mcp

MCP Server for CapSolver — expose captcha-solving capabilities to AI agents via the Model Context Protocol.

Published on PyPI as capsolver-mcp and listed in the official MCP Registry as io.github.capsolver-ai/capsolver-mcp.

See the capsolver-ai-hub repo for integration examples and the full documentation.

For detailed MCP client setup (Claude Desktop, Claude Code, Cursor, Windsurf, Cline, and more), see docs/mcp-integration.md.

Install

pip install capsolver-mcp
pip install capsolver-mcp[browser]   # with Playwright support (for detect/solve_on_page)

All tools read the API key from the environment:

# bash / zsh
export CAPSOLVER_API_KEY="your-capsolver-api-key"

# PowerShell
$env:CAPSOLVER_API_KEY = "your-capsolver-api-key"

# cmd
set CAPSOLVER_API_KEY=your-capsolver-api-key

Usage

CLI

# stdio (default — for local MCP clients like Claude Desktop)
capsolver-mcp

# SSE (for remote / HTTP access)
capsolver-mcp --transport sse --host 0.0.0.0 --port 8000

# Streamable HTTP (MCP 2025-03-26 spec)
capsolver-mcp --transport streamable-http --host 0.0.0.0 --port 8000
CLI options
capsolver-mcp [OPTIONS]

  --transport {stdio,sse,streamable-http}
                              Transport protocol (default: stdio)
  --host HOST                 Bind host for SSE/HTTP transports (default: 127.0.0.1)
  --port PORT                 Bind port for SSE/HTTP transports (default: 8000)
  --api-key KEY               API key (fallback: CAPSOLVER_API_KEY env)
  --name NAME                 Server name (default: capsolver)

Programmatic

from capsolver_mcp.server import create_server

server = create_server(
    api_key="your-key",       # or set CAPSOLVER_API_KEY env var
    server_name="capsolver",  # name advertised to MCP clients
    host="127.0.0.1",         # bind host for SSE / HTTP transports
    port=8000,                # bind port for SSE / HTTP transports
)
server.run(transport="sse")   # or "stdio" or "streamable-http"

Note: host and port are constructor parameters on create_server() (forwarded to FastMCP), matching the MCP Python SDK 1.x API.

Configure in Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "capsolver": {
      "command": "capsolver-mcp",
      "env": {
        "CAPSOLVER_API_KEY": "your-key"
      }
    }
  }
}

To run without installing it globally, use "command": "uvx" with "args": ["capsolver-mcp"] — this is what MCP clients generate from the registry entry. See docs/mcp-integration.md for per-client examples.

Available tools

ToolBrowser?Description
solve_captchaNoSolve a captcha by type + site params (token mode)
detect_captchasYesScan a page URL and list present captcha types
solve_on_pageYesDetect + solve + autofill all captchas on a page
get_balanceNoCheck account balance and packages
get_supported_captchasNoList all supported captcha types and handlers

Browser-based tools (detect_captchas, solve_on_page) require the browser extra:

pip install capsolver-mcp[browser]
playwright install chromium

Development

git clone https://github.com/capsolver-ai/capsolver-mcp.git
cd capsolver-mcp
uv sync --all-extras          # or: pip install -r requirements-dev.txt
uv run pytest                 # run tests
uv run ruff check src tests   # lint

License

MIT

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx capsolver-mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-capsolver-ai-capsolver-mcp": {
      "command": "uvx",
      "args": [
        "capsolver-mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

capsolver-mcppypi

Compatible MCP Clients

io.github.capsolver-ai/capsolver-mcp works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More