
Emma Foster
Machine Learning Engineer
Diterbitkan Oct 28, 2026
Diperbarui Oct 28, 2026 · min baca

capsolver-mcp 0.1.3 yang diuji, detect_captchas dan solve_on_page menerima page_url; keduanya tidak menyediakan input halaman yang sudah ada atau sesi browser yang sudah berjalan.Agen browser Anda telah mengisi formulir dan mencapai sebuah CAPTCHA. Agen memanggil alat MCP kedua dengan URL halaman tersebut, menerima respons, lalu kembali ke tab yang masih tampak tidak berubah. Koneksi yang hilang kemungkinan adalah sesi browser itu sendiri.
MCP membuat sebuah alat dapat dipanggil; MCP tidak membuat setiap server yang tersambung secara otomatis berbagi objek browser yang sedang aktif. Browser yang menyiapkan formulir dan browser yang dibuka oleh alat berbasis URL bisa jadi terpisah. CapSolver menyediakan alat MCP sekaligus Python Core SDK, sehingga pemilihan antarmuka yang tepat menjadi penting ketika CAPTCHA muncul di tengah tugas yang sedang berjalan.
Panduan ini mendiagnosis pengalihan spesifik tersebut. Di dalamnya ada pemeriksaan skema MCP nyata dan observasi dari fixture browser lokal milik sendiri. Tidak ada tantangan berbayar yang diselesaikan, dan tidak ada klaim penerimaan formulir produksi.
Alat browser MCP yang diuji membuat browser sendiri dari sebuah URL, bukan menerima halaman aktif milik agen.
Referensi layanan MCP menjelaskan deteksi berbasis URL dan penyelesaian di halaman. Kami memeriksa skema yang diiklankan paket terinstal dan implementasi peluncuran browser‑nya, lalu mengamati permintaannya ke fixture lokal. Semua pemeriksaan itu sepakat pada batas berikut: memberikan URL tidak membuat alat terhubung ke tab yang sudah berjalan.
Pembedaan ini penting meski kedua halaman menampilkan alamat yang sama. Sebuah isian formulir bisa menyimpan nilai yang belum dikirim di satu tab dan kosong di tab lain. Sebuah cookie yang tersedia di satu konteks browser tidak otomatis muncul di konteks lain yang tidak terkait. Panduan konteks browser Playwright menjelaskan isolasi antarkonteks.
Jangan menyimpulkan adanya state bersama hanya karena dua server alat muncul di sidebar asisten yang sama. Alat‑alat mereka mungkin tersedia untuk model yang sama sementara proses browser mereka tetap independen.
Periksa skema langsung untuk mengidentifikasi state apa yang benar‑benar bisa diterima alat.
Gunakan Python 3.12 untuk cek yang dapat direproduksi di bawah ini. Lingkungan yang diuji berisi capsolver-mcp 0.1.3, capsolver-core 0.1.1, MCP Python SDK 1.30.0, dan Playwright 1.64.1. Repositori MCP resmi mengidentifikasi paket server; MCP Python SDK menyediakan klien yang dipakai untuk diagnosis ini.
Jalankan perintah berikut dengan interpreter Python yang akan meluncurkan server:
python -m pip install "capsolver-mcp[browser]==0.1.3" "capsolver-core==0.1.1" "mcp==1.30.0" "playwright==1.64.1"
python -m playwright install chromium
Simpan skrip diagnostik kecil ini sebagai inspect_mcp.py dan jalankan dengan Python yang sama. Skrip ini menginisialisasi koneksi stdio nyata, membaca skema, serta memanggil registry tipe yang didukung. Skrip sengaja mengirim nilai API-key kosong dan tidak pernah memanggil metode penyelesaian atau saldo. Penyelesaian berbayar yang nyata memerlukan key yang valid dan target yang berwenang; diagnostik ini tidak menguji jalur tersebut.
import asyncio
import json
import sys
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def main():
server = StdioServerParameters(
command=sys.executable,
args=["-m", "capsolver_mcp"],
env={"CAPSOLVER_API_KEY": ""},
)
async with stdio_client(server) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
result = await session.list_tools()
for tool in result.tools:
if tool.name in {"detect_captchas", "solve_on_page"}:
print(json.dumps({
"tool": tool.name,
"arguments": sorted(tool.inputSchema.get("properties", {})),
"required": tool.inputSchema.get("required", []),
}))
registry = await session.call_tool("get_supported_captchas", {})
print("registry_is_error:", bool(registry.isError))
asyncio.run(main())
Untuk versi yang diuji, keluaran bermakna yang diperoleh adalah:
{"tool": "detect_captchas", "arguments": ["page_url"], "required": ["page_url"]}
{"tool": "solve_on_page", "arguments": ["autofill", "page_url", "polling_interval", "timeout"], "required": ["page_url"]}
registry_is_error: False
Tidak adanya argumen sesi adalah alasan untuk memeriksa implementasi, bukan klaim universal tentang setiap server MCP. Di sini, inspeksi paket mengonfirmasi adanya browser headless baru dan halaman baru untuk setiap panggilan browser berbasis URL. Periksa ulang skema dan perilaku ketika mengganti versi.
Uji lokal menunjukkan batas sesi tanpa berpura‑pura menyelesaikan CAPTCHA.
Kami membuka fixture HTTP milik sendiri dalam konteks Playwright, menetapkan cookie aman fixture_session, dan memasukkan kueri katalog ke sebuah isian teks. Fixture mencatat apakah setiap permintaan membawa cookie tersebut. Lalu kami memanggil alat MCP nyata detect_captchas dengan URL yang sama.
Permintaan browser asli menyertakan cookie penanda. Permintaan browser MCP tidak. Halaman asli masih berisi kueri yang dimasukkan setelah alat mengembalikan respons. Deteksi mengembalikan daftar kosong pada fixture statis ini; ini bukan tantangan penyedia yang hidup dan uji ini tidak mengukur cakupan deteksi.
Observasi ini menetapkan sesuatu yang lebih sempit namun berguna: panggilan MCP mengambil URL secara independen, sementara halaman pertama tetap utuh. Observasi ini tidak membuktikan penyelesaian berbayar, transfer token, atau penerimaan oleh situs target. Tidak ada cookie produksi, kredensial, atau data pribadi yang digunakan.
Untuk aplikasi Anda, tirukan pembedaan yang sama dengan penanda aman pada halaman staging yang Anda kendalikan. Catat halaman mana yang dimiliki alat browser dan halaman mana yang diterima solver. Hindari mencatat isi cookie nyata atau token CAPTCHA dalam log diagnostik.
Redeem Your CapSolver Bonus Code
Tambahkan anggaran otomatisasi Anda seketika!
Gunakan kode bonus CAP26 saat mengisi saldo akun CapSolver untuk mendapatkan bonus 5% tambahan pada setiap pengisian — tanpa batas.
Tukarkan sekarang di CapSolver Dashboard
Pilih pola handoff berdasarkan apakah aplikasi Anda bisa mengakses objek halaman aktif.
Core SDK menerima objek halaman Playwright yang sudah ada untuk metode yang berorientasi browser. Metode terdokumentasi detect(page) dan get_captcha_info(page) memeriksa halaman tersebut; solve_on_page(page) menjalankan urutan penyelesaian dan pengisian balik yang terdokumentasi untuk tantangan yang didukung. Referensi Core SDK menjelaskan antarmuka ini dan field hasilnya.
Biarkan halaman tetap berada di aplikasi Anda sendiri dan teruskan objek yang sudah ada di titik checkpoint CAPTCHA. Membuat halaman baru di dalam handler akan mengubah operasi yang sedang Anda diagnosis. Ini adalah pilihan implementasi untuk aplikasi yang memiliki kode browser sendiri, bukan sebuah flag konfigurasi yang membuat alat MCP berbasis URL menempel ke sebuah tab.
Panduan ini memverifikasi batas MCP, bukan penyelesaian berbayar dengan Core SDK. Sebelum mengadopsi penyelesaian berbasis halaman di produksi, uji secara terpisah tipe tantangan yang didukung dan kondisi penyelesaian aplikasi pada target yang berwenang.
Ketika server lain adalah pemilik browser, gunakan kapabilitas yang terdokumentasi server tersebut untuk memeriksa halaman saat ini dan memutuskan apakah ia dapat menerapkan hasil eksternal. Jangan menciptakan session_id, argumen CDP, atau handle halaman bersama yang tidak diterima skema solver.
Penyelesaian mode token bisa mengembalikan hasil dari parameter tantangan yang terdokumentasi, tetapi aplikasi Anda tetap membutuhkan cara yang didukung untuk mengirimkannya ke halaman asli. Jika pemilik browser tidak bisa melakukannya, catat kesenjangan kapabilitas tersebut atau serahkan tugas kepada manusia. Menghubungkan kedua server tidak serta‑merta menciptakan operasi yang hilang.
Alat berbasis URL dapat sesuai untuk inspeksi mandiri di mana halaman baru memang tujuan Anda. Namai tugas itu secara terpisah dari formulir yang sedang dijeda milik agen. Inspeksi yang berhasil terhadap halaman baru tidak boleh dilaporkan sebagai penyelesaian formulir asli.
Panduan reuse konteks Playwright menjelaskan snapshot storage dan halaman aktif. Isu MCP spesifik di sini berada lebih awal dalam rantai: browser mana yang menerima panggilan sama sekali.
Lanjutkan tugas asli hanya setelah halaman dan respons aplikasi yang dimaksud mengonfirmasi bahwa langkah berikut valid.
Jaga agar pemilik browser, operasi saat ini, dan kondisi penyelesaian tetap sejalan. Setelah penyelesaian yang didukung selesai, periksa lagi halaman asli. Konfirmasikan bahwa formulir atau kueri masih merepresentasikan tugas yang sama, lalu lakukan pengiriman atau navigasi yang diizinkan melalui antarmuka normal pemilik browser.
Untuk agen data, keberhasilan mungkin berarti pengenal record yang diharapkan dan field wajib hadir di data yang dikembalikan. Untuk alur kerja formulir, keberhasilan mungkin berupa konfirmasi aplikasi yang terkait dengan input yang dikirim. Hasil deteksi CAPTCHA yang kosong bukan salah satu dari kedua hasil itu.
Jika halaman bernavigasi atau tantangan berubah selama panggilan, periksa tugas saat ini sebelum menggunakan kembali hasil sebelumnya. Hindari mengirim penyelesaian berbayar berulang hanya karena tab lain yang tidak terkait masih menampilkan widget. Jaga state yang belum terselesaikan tetap eksplisit alih‑alih membiarkan model meringkasnya sebagai keberhasilan.
Perlakukan kepemilikan browser sebagai bagian dari kontrak integrasi CAPTCHA. CapSolver dapat menyediakan kapabilitas penyelesaian yang terdokumentasi, sementara aplikasi Anda tetap bertanggung jawab atas halaman yang dimaksud dan tugas akhirnya. Mulailah dengan memeriksa skema MCP yang sebenarnya, lalu uji handoff yang didukung oleh lingkungan browser Anda.
T: Apakah memberikan URL yang sama ke alat MCP CAPTCHA akan memakai ulang tab browser saya?
Tidak, tidak pada alat berbasis URL capsolver-mcp 0.1.3 yang diuji. Skema langsung dan uji permintaan lokal menunjukkan adanya permintaan browser terpisah.
T: Bisakah saya mengoper session ID milik server browser saya ke solve_on_page?
Skema alat yang diuji tidak menerima argumen tersebut. Gunakan hanya input yang diiklankan oleh server terinstal; session ID dari alat lain tidak otomatis bermakna di sini.
T: Apakah autofill memperbarui tab asli milik agen?
Jangan berasumsi demikian. Alat berbasis URL beroperasi pada halaman yang dibukanya. Pengisian balik di halaman tersebut tidak berarti terjadi perubahan pada tab terpisah yang dimiliki pihak lain.
T: Apakah contoh tersebut menyelesaikan CAPTCHA nyata?
Tidak. Contoh hanya memverifikasi koneksi MCP, skema alat, dan pemisahan sesi browser menggunakan fixture milik sendiri yang statis. Penyelesaian berbayar dan penerimaan oleh aplikasi memerlukan uji terpisah.
T: Bagaimana jika alat browser saya tidak dapat menerapkan hasil dari solver?
Gunakan integrasi berbasis halaman yang didukung dalam aplikasi yang memiliki browser, atau jeda untuk melibatkan manusia. Jangan mengklaim bahwa dua koneksi MCP saja sudah menyediakan kapabilitas browser yang hilang.

Emma Foster
Machine Learning Engineer
Where machine learning meets practical AI tooling.
TENTANG PENULIS
Hubungkan alat MCP pemecah CAPTCHA ke Qwen Code, setujui server proyek, verifikasi koneksinya, dan pilih token atau alur kerja browser yang tepat untuk tugas Anda.

Tambahkan alat inspeksi CAPTCHA ke Haystack, baca parameter reCAPTCHA dengan SDK resmi, dan verifikasi koneksi sebelum langkah penyelesaian terpisah.
