SkillAgentSearch skills...

SeleniumBase

๐Ÿ“Š APIs for Web Scraping, Browser Automation, and E2E Testing. CDP Mode bypasses bot-detection and CAPTCHAs. Supports Playwright. Includes an MCP server and a CLI.

Install / Use

claude mcp add seleniumbase -- npx -y github:seleniumbase/SeleniumBase

If the server publishes to npm under a different name, use that package instead โ€” check the repo README.

About this skill
๐Ÿ”Œ

MCP Server

Model Context Protocol server

Quality Score

87/100

Category

Automation

Supported Platforms

Claude Code
Claude Desktop

Our assessment of SeleniumBase

SeleniumBase scores 87/100 on our quality scale, 1655th of 2,873 Automation skills we index.

Its MCP Server is 82 KB long, split into 5 sections with 89 code examples: long enough that it reads more like full documentation than a focused instruction file, which agents can find harder to follow.

With 13,223 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
21/30
Structure
18/20
Description
15/15
Adoption
18/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated today, so SeleniumBase is actively maintained.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit โ€” read the skill file before letting an agent act on it.

SeleniumBase compared with similar skills

All 4 of these similar skills score higher than SeleniumBase; compare them before choosing.

SkillScoreStarsUpdatedFormat
SeleniumBase (this skill)by seleniumbase8713.2ktodayMCP Server
Agent-Reachby Panniantong100108.4k2d agoCLAUDE.md
headroomby headroomlabs-ai10078.7ktodayCLAUDE.md
CowAgentby zhayujie10047.8ktodayCLAUDE.md
Scraplingby D4Vinci10093.9ktodayMCP Server

Frequently asked questions

How do I install SeleniumBase?
Run claude mcp add seleniumbase -- npx -y github:seleniumbase/SeleniumBase. The install tabs above show the steps for each supported agent.
Which AI agents does SeleniumBase work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is SeleniumBase safe to use?
It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is SeleniumBase still maintained?
The repository was last updated today, so SeleniumBase is actively maintained.
<!-- SeleniumBase Docs --> <!-- mcp-name: io.github.seleniumbase/seleniumbase --> <meta property="og:site_name" content="SeleniumBase"> <meta property="og:title" content="SeleniumBase: Python Web Automation and E2E Testing. Includes stealth options!" /> <meta property="og:description" content="Fast, easy, and reliable Web/UI testing with Python. Includes stealth options!" /> <meta property="og:keywords" content="Python, pytest, selenium, webdriver, testing, automation, seleniumbase, framework, dashboard, recorder, reports, screenshots"> <meta property="og:image" content="https://seleniumbase.github.io/cdn/img/mac_sb_logo_5b.png" /> <link rel="icon" href="https://seleniumbase.github.io/img/logo7.png" /> <h1 align="center">๐Ÿ“Š SeleniumBase</h1> <h3 align="center">APIs for Web Scraping, Browser Automation, and E2E Testing.<br /></h3> <p align="center"><b align="center">Includes stealth options for bypassing bot-detection and CAPTCHAs.<br /></b></p> <p align="center"> <a href="https://pypi.python.org/pypi/seleniumbase" target="_blank" rel="noopener"><img src="https://img.shields.io/pypi/v/seleniumbase.svg?style=flat-square&color=3399EE" alt="PyPI version" height="20" /></a> <a href="https://github.com/seleniumbase/SeleniumBase/actions" target="_blank" rel="noopener"><img src="https://img.shields.io/github/actions/workflow/status/seleniumbase/SeleniumBase/python-package.yml?branch=master&style=flat-square&label=CI" alt="SeleniumBase GitHub Actions" height="20" /></a> <a href="https://seleniumbase.io" target="_blank" rel="noopener"><img src="https://img.shields.io/badge/docs-seleniumbase.io-11BBAA.svg?style=flat-square" alt="SeleniumBase Docs" height="20" /></a> <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/LICENSE" target="_blank" rel="noopener"><img src="https://img.shields.io/badge/license-MIT-33A6C6.svg?style=flat-square" title="SeleniumBase" height="20" /></a> <a href="https://github.com/seleniumbase/SeleniumBase/tree/master/mcp_servers" target="_blank" rel="noopener"><img src="https://img.shields.io/badge/MCP-tool_info-7C6EE5?style=flat-square" height="20" /></a> <a href="https://pepy.tech/projects/seleniumbase?timeRange=threeMonths&category=version&includeCIDownloads=true&granularity=daily&viewType=line&versions=*" target="_blank" rel="noopener"><img src="https://static.pepy.tech/badge/seleniumbase" alt="SeleniumBase PyPI downloads" height="20" /></a><br /> <a href="https://www.youtube.com/playlist?list=PLp9uKicxkBc5UIlGi2BuE3aWC7JyXpD3m" target="_blank" rel="noopener"><img src="https://img.shields.io/badge/docs-๐Ÿ“บ-D844E8.svg?style=flat-square&logo=YouTube&logoColor=white&label=YouTube" alt="YouTube Channel" height="20" /></a> <a href="https://www.facebook.com/SeleniumBase/" target="_blank" rel="noopener"> <img src="https://img.shields.io/badge/Facebook-4K_followers-1877F2?style=flat-square&logo=facebook&logoColor=white" alt="SeleniumBase Facebook Followers" height="20" /></a> <a href="https://x.com/seleniumbase" target="_blank" rel="noopener"><img src="https://img.shields.io/badge/-1K_followers-1DA1F2?style=flat-square&logo=x&logoColor=white&labelColor=555555" alt="SeleniumBase X Followers" height="20" /></a> <a href="https://discord.gg/EdhQTn3EyE" target="_blank" rel="noopener"><img src="https://img.shields.io/discord/727927627830001734?style=flat-square&color=7289DA&label=Discord&logo=discord&logoColor=white" height="20" /></a> <a href="https://github.com/seleniumbase/SeleniumBase" target="_blank" rel="noopener"><img src="https://badgen.net/github/stars/seleniumbase/SeleniumBase" title="Stars" height="20" /></a> </p> <p align="center"> <a href="https://trendshift.io/repositories/12493?utm_source=repository-badge&amp;utm_medium=badge&amp;utm_campaign=badge-repository-12493" target="_blank" rel="noopener"><img src="https://trendshift.io/api/badge/repositories/12493" alt="seleniumbase%2SeleniumBase | Trendshift" width="250" height="55"/></a> </p> <p align="center"> <a href="#python_installation">๐Ÿš€ Start</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/features_list.md">๐Ÿฐ Features</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/customizing_test_runs.md">๐ŸŽ›๏ธ Options</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/ReadMe.md">๐Ÿ“š Examples</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/seleniumbase/console_scripts/ReadMe.md">๐Ÿ’ป Scripts</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/locale_codes.md">๐Ÿ—พ Locale</a> <br /> <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/method_summary.md">๐Ÿ“— API</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/cdp_mode_methods.md">๐Ÿ“˜ Stealth API</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md"> ๐Ÿ”  DesignPatterns</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/recorder_mode.md">๐Ÿ”ด Recorder</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/example_logs/ReadMe.md">๐Ÿ“Š Dashboard</a> <br /> <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/commander.md">๐ŸŽ–๏ธ GUI</a> | <a href="https://seleniumbase.io/demo_page">๐Ÿ“ฐ TestPage</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/uc_mode.md">๐Ÿ‘ค UC Mode</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/ReadMe.md">๐Ÿ™ CDP Mode</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/chart_maker/ReadMe.md">๐Ÿ“ถ Charts</a> | <a href="https://seleniumbase.io/devices/?url=seleniumbase.io">๐Ÿ–ฅ๏ธ Farm</a> <br /> <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/how_it_works.md">๐Ÿ‘๏ธ How</a> | <a href="https://github.com/seleniumbase/SeleniumBase/tree/master/examples/migration/raw_selenium">๐Ÿš Migration</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/playwright/ReadMe.md">๐ŸŽญ Stealthy Playwright</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/master_qa/ReadMe.md">๐Ÿ›‚ MasterQA</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/tour_examples/ReadMe.md">๐ŸšŽ Tours</a> <br /> <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/mcp_servers/">๐Ÿค– MCP</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/js_package_manager.md">๐ŸŸจ JS Mgr</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/translations.md">๐ŸŒ Translator</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/presenter/ReadMe.md">๐ŸŽž๏ธ Presenter</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/visual_testing/ReadMe.md">๐Ÿ–ผ๏ธ Visual</a> | <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/case_plans.md">๐Ÿ—‚๏ธ CPlans</a> </p>

๐Ÿ™ <a translate="no" href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/uc_mode.md"><a translate="no" href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/ReadMe.md"><b>CDP Mode</b></a> bypasses bot-detection and <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/playwright/ReadMe.md">makes <span translate="no">Playwright</span> stealthy</a>.

โ„น๏ธ Example scripts that start or end with "<code>test</code>" run with <code><b>pytest</b></code>. Other scripts run directly with raw <code><b>python</b></code> (and start with "<code>raw</code>" to avoid confusion).


๐Ÿ“ This example uses <b><code translate="no">seleniumbase</code></b> <b><code translate="no">sb_cdp</code></b> (Pure CDP Mode):<br /><em>(It bypasses BrowserScan, Sannysoft, and Cloudflare bot-detection)</em>

from seleniumbase import sb_cdp

sb = sb_cdp.Chrome()  # Launch a stealth browser
sb.goto("https://browserscan.net/bot-detection")
sb.assert_element('strong:contains("Normal")')
sb.sleep(1)

sb.goto("https://bot.sannysoft.com/")
sb.assert_element(".passed")
sb.assert_element_not_visible(".failed")
sb.sleep(1)

sb.goto("https://www.planetminecraft.com/account")
sb.type('[name="email"]', "Name123")
sb.type('[name="password"]', "Pass")
sb.click("input#autologin")
sb.solve_captcha()  # Works on different CAPTCHAs
sb.assert_element('input[name="login"]')
sb.assert_element_not_visible("input[disabled]")
sb.sleep(1)
sb.quit()  # Quit browser before end-of-program
<p align="center"> <img src="https://seleniumbase.github.io/cdn/img/results_normal.jpg" width="520" style="max-width: 100% !important; height: auto !important;" alt="BrowserScan Test Results: Normal" /> <br /><em>(All BrowserScan bot-detection tests passed successfully)</em> </p> <p align="center"> <img src="https://seleniumbase.github.io/other/sannysoft_success.jpg" width="428" style="max-width: 100% !important; height: auto !important;" alt="All Sannysoft tests passed successfully" /> <br /><em>(All Sannysoft bot-detection tests passed successfully)</em> </p> <p align="center"> <img src="https://seleniumbase.github.io/other/pmc_captcha_2.png" width="530" style="max-width: 100% !important; height: auto !important;" alt="Cloudflare Turnstile bypassed successfully" /> <br /><em>(Cloudflare Turnstile bypassed successfully on Planet Minecraft)</em> </p>

โœ… <b><code>sb.solve_captcha()</code></b> handles CAPTCHAs that aren't bypassed automatically.<br />(If called when there's no CAPTCHA on the page, then nothing happens / no-op.)

โ„น๏ธ <code>sb.assert_*</code> methods wait up to 7 seconds for the expected condition.<br />(Raises an exception if the condition isn't met in time.)


<p align="left">๐Ÿ“ <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/raw_cdp_yc_news.py" target="_blank" rel="noopener">This script</a> scrapes Hacker News listings:</p>
from seleniumbase import sb_cdp

sb = sb_cdp.Chrome(fast=True)
sb.goto("https://hn.algolia.com/?query=seleniumbase")
elements = sb.find_elements("div.Story_title > a")
for element in elements:
    print("* " + element.text)
python raw_cdp_yc_news.py
<p align="left"> <img src="https://seleniumbase.github.io/other/yc_news_results.png" alt="SeleniumBase" width="510" style="max-width: 100% !important; height: auto !important;"/> </p>
<p align="left">๐Ÿ“ <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/raw_gitlab.py" target="_blank" rel="noopener">This script</a> bypasses Cloudflare's challenge page with UC + CDP Mode:</p>
from seleniumbase import SB

with SB(uc=True, test=True, locale="en") as sb:
    sb.activate_cdp_mode()
    sb.goto("https://gitlab.com/users/sign_in")
    sb.sleep(2)
    sb.solve_captcha()
    sb.highlight('h1:contains("GitLab")')
    sb.highlight('button:contains("Sign in")')
python raw_gitlab.py
<p align="left"> <img src="https://seleniumbase.github.io/other/gitlab_bypass_2.png" alt="SeleniumBase" width="420" style="max-width: 100% !important; height: auto !important;"/> </p>

๐Ÿงช End-to-End Testing examples are located in ./examples/.

๐Ÿ™ Stealthy CDP Mode examples are located in ./examples/cdp_mode/.

๐ŸŽญ Stealthy Playwright examples are located in ./examples/cdp_mode/playwright/.


<h3 align="left">๐ŸŒ CLI Options for Supported Chromium Browsers</h3> <p>๐Ÿ’ก You can set which Chromium browser to use via command-line parameters:</p>

``

Truncated for display โ€” read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars13.2k
CategoryAutomation
Updated13h ago
Forks1.6k

Languages

Python

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit โ€” see the Safety scan above for what the skill file itself contains.

No cautions