
Sora Fujimoto
AI Solutions Architect

Model Context Protocol (MCP)は、AIクライアントが外部ツールをゼロの統合コードで発見し、呼び出すことを可能にします。CapSolverのcapsolver-mcpパッケージは、CAPTCHA解決を標準的なMCPサービスとして公開します。接続後、任意のMCP互換クライアント(Claude Desktop、Claude Code、Cursor、Cline、Windsurf)は自動的に5つの解決ツールを取得します。このガイドでは、AIワークフローでCapSolverのMCPサービスを使用してCAPTCHA解決を設定および使用する方法を説明します。
capsolver-mcpは、CAPTCHA解決を標準的なMCPツールとして公開します。クライアントごとのアダプタコードは不要です。solve_captcha、detect_captchas、solve_on_page、get_balance、get_supported_captchasModel Context Protocolは、AIアプリケーションが統一されたインターフェースを通じて外部ツールを発見および使用できるオープン標準です。各AIクライアントごとにカスタム統合コードを書く代わりに、一度だけ機能をMCPサービスとしてパッケージ化し、互換性のあるすべてのクライアントが即座に使用できます。
CAPTCHA解決においては、capsolver-mcpをインストールし、APIキーで構成するだけで、ワークフロー内のすべてのMCPクライアント(研究用のClaude Desktop、開発用のCursor、自動化用のCline)が即座にreCAPTCHA、Cloudflare Turnstile、その他の検証チャレンジを解決できるようになります。クライアントごとのコードやフレームワーク固有のアダプタは必要ありません。
MCP仕様は、クライアントがツールを発見し、構造化されたパラメータで呼び出し、結果を受信する方法を定義しています。CapSolverの実装はこの仕様を正確に遵守しており、増加するMCPクライアントエコシステムと互換性があります。
# まずコアエンジンをインストール(mcpに依存)
pip install git+https://github.com/capsolver-ai/capsolver-core.git
# MCPサービスをインストール
pip install git+https://github.com/capsolver-ai/capsolver-mcp.git
# オプション: ブラウザツール(detect/solve_on_page)
pip install "capsolver-mcp[browser] @ git+https://github.com/capsolver-ai/capsolver-mcp.git"
playwright install chromium
export CAPSOLVER_API_KEY="your-capsolver-api-key"
# stdio(デフォルト — ローカルMCPクライアント向け、例: Claude Desktop)
capsolver-mcp
# SSE(リモート/HTTPアクセス向け)
capsolver-mcp --transport sse --host 0.0.0.0 --port 8000
# Streamable HTTP(MCP 2025-03-26仕様)
capsolver-mcp --transport streamable-http --host 0.0.0.0 --port 8000
コマンドラインオプション:
capsolver-mcp [OPTIONS]
--transport {stdio,sse,streamable-http} トランスポートプロトコル(デフォルト: stdio)
--host HOST SSE/HTTP用のバインドホスト(デフォルト: 127.0.0.1)
--port PORT SSE/HTTP用のバインドポート(デフォルト: 8000)
--api-key KEY APIキー(CAPSOLVER_API_KEY環境変数にフォールバック)
--name NAME サービス名(デフォルト: capsolver)
MCP設定ファイルに以下を追加:
{
"mcpServers": {
"capsolver": {
"command": "capsolver-mcp",
"env": {
"CAPSOLVER_API_KEY": "YOUR_API_KEY"
}
}
}
}
クライアントがcapsolver-mcpをPATHに見つけられない場合(venv/condaで一般的):
{
"mcpServers": {
"capsolver": {
"command": "/abs/path/to/venv/bin/python",
"args": ["-m", "capsolver_mcp"],
"env": {
"CAPSOLVER_API_KEY": "YOUR_API_KEY"
}
}
}
}
プロジェクトのmcp.jsonに同じ設定ブロックを追加します。リロード後、CapSolverの5つのツールが自動的にツールリストに表示されます。
接続後、サービスは5つのツールを公開します:
| ツール | ブラウザ対応 | 説明 |
|---|---|---|
solve_captcha |
No | タイプ + サイトパラメータで解決(トークンモード) |
detect_captchas |
Yes | ページURLをスキャンし、存在するCAPTCHAタイプをリスト表示 |
solve_on_page |
Yes | ページ上のすべてのCAPTCHAを検出 + 解決 + 填充 |
get_balance |
No | アカウント残高を照会 |
get_supported_captchas |
No | 対応するCAPTCHAタイプをリスト表示 |
MCPサービスが接続されている場合、AIクライアントで自然言語を使用します:
残高を確認:
"capsolverを使って私のアカウント残高を確認してください。"
クライアントはget_balanceを呼び出し、残高を返します。
トークンモードで解決:
"このreCAPTCHA v2を私に解決してください。URLはhttps://example.com/loginで、サイトキーは6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhIです。"
クライアントはパラメータをsolve_captchaに渡し、トークンを返します。
ページ全体の解決:
"https://example.com/protected-pageのすべてのCAPTCHAを検出および解決してください。"
クライアントはsolve_on_pageを呼び出し、ページ上のすべてのCAPTCHAを検出、解決、および埋め込みます。
自アプリケーションにMCPサービスを埋め込む場合:
from capsolver_mcp import create_server
# プログラムでMCPサーバーを作成および実行
server = create_server(
api_key="YOUR_CAPSOLVER_API_KEY",
name="capsolver",
transport="stdio"
)
これは、複数のツールセットを公開するより大きなMCPサービスにCAPTCHA解決機能を埋め込む場合に役立ちます。
ボーナスコードを取得してください: CapSolverダッシュボードでコードWEBSを使用すると、毎回のチャージで追加の5%ボーナスが得られます。
CapSolver MCPドキュメントには、追加の構成例が含まれています。ベースとなる解決エンジンの理解には、CapSolverコアSDKガイドをご参照ください。開発中のCAPTCHAパラメータの識別には、CapSolver拡張機能が役立ちます。
CapSolverのMCPサービス(capsolver-mcp)は、あらゆるMCP互換AIクライアントでCAPTCHA解決の最速のパスを提供します。APIキーを設定し、ワークフロー内のすべてのクライアントがゼロの統合コードで解決機能を取得します。CapSolverはクラウドでAI駆動の解決を処理し、MCPサービスは標準プロトコルを通じてツール発見、パラメータの渡し方、結果の配信を管理します。
MCP互換クライアントであればすべて: Claude Desktop、Claude Code、Cursor、Windsurf、Cline、Claudeプラグイン付きVS Code、およびMCP仕様を実装したカスタムクライアント。stdioトランスポートはローカルクライアントで動作し、SSEおよびstreamable-httpはリモート/ネットワーククライアントで動作します。
detect_captchasおよびsolve_on_pageツールのみが必要です。主なsolve_captchaツールはトークンモードで動作し、ブラウザは必要ありません。自動的なページ検出と埋め込みが必要な場合は、[browser]エクストラをインストールしてください。
SSEまたはstreamable-httpトランスポートを使用すれば可能です。ネットワークポートでサービスを起動し、複数のクライアントが同時に接続できます。各クライアントのツール呼び出しは独立して処理されます。
MCPクライアントは自動的に再接続します。サービスが再起動した場合、クライアントは再接続時にツールを再発見します。進行中の解決リクエストは失敗する可能性があり、クライアント側でリトライする必要があります。