{"name":"io.github.gaforov/selenium-mcp","slug":"gaforov-selenium-mcp","title":null,"description":"Selenium MCP server for AI agents — 41 browser automation tools with snapshots and sessions.","url":"https://mcp.market/server/gaforov-selenium-mcp","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"scraping","tags":["scraping"],"presence":{"score":30,"stars":0,"forks":1,"downloads_week":264,"last_push_at":"2026-09-13T02:00:27.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/gaforov/selenium-mcp","website":"https://github.com/gaforov/selenium-mcp#readme","version":"0.3.0","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@gaforov/selenium-mcp","version":"0.3.0","runtimeHint":"npx","transport":{"type":"stdio"}}],"tools":[{"name":"add_cookie","description":"Set a cookie in the browser, e.g. a session or feature-flag cookie to skip a login screen or switch on a test mode.","write_action":false,"price_micros":0,"input_schema":null},{"name":"alert","description":"Handle a native browser dialog opened by alert(), confirm(), or prompt(). While one is open, other page actions fail until it is handled.","write_action":false,"price_micros":0,"input_schema":null},{"name":"assert_attribute","description":"Test step: check that an element's attribute or property equals (default), contains, or matches a regular expression,","write_action":false,"price_micros":0,"input_schema":null},{"name":"assert_text","description":"Test step: check that an element's visible text equals, contains (default), or matches a regular expression.","write_action":false,"price_micros":0,"input_schema":null},{"name":"assert_visible","description":"Test step: check that an element becomes visible within timeoutMs, e.g. a success banner or a cart badge.","write_action":false,"price_micros":0,"input_schema":null},{"name":"batch_execute","description":"Run up to 10 steps in one call. Supported actions: navigate, wait_for_element, wait_for_page, click, type, select_option, and execute_script,","write_action":true,"price_micros":0,"input_schema":null},{"name":"capture_page","description":"Snapshot the page's visible interactive elements and headings (links, buttons, inputs, selects, textareas, ARIA roles, h1-h4)","write_action":false,"price_micros":0,"input_schema":null},{"name":"click","description":"Click an element: waits until it is visible and enabled, then clicks it (scrolling it into view).","write_action":false,"price_micros":0,"input_schema":null},{"name":"delete_cookie","description":"Delete one cookie by name, or every cookie for the current page when name is omitted.","write_action":true,"price_micros":0,"input_schema":null},{"name":"execute_script","description":"Run synchronous JavaScript in the current page and return its result (use a return statement); arguments are available as arguments[0], arguments[1], ....","write_action":true,"price_micros":0,"input_schema":null},{"name":"find_element","description":"Look up one element and describe it: tag, visible text, and whether it is displayed and enabled. Waits for it to exist.","write_action":false,"price_micros":0,"input_schema":null},{"name":"frame","description":"Move into or out of an iframe. Elements inside an iframe (embedded widgets, rich-text editors, payment fields) cannot be found by other tools until you switch into it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_attribute","description":"Read an attribute or property of an element, e.g. an input's value, a link's href, or whether it is disabled, checked, or aria-expanded.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_cookies","description":"Read the cookies the browser holds for the current page: all of them, or one by name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_current_url","description":"Return the URL of the current tab, including any query string and fragment.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_page_source","description":"Return the page's current HTML (the live DOM, including changes made by scripts), cut off at maxLength characters.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_text","description":"Read the visible text of an element: what a user sees, not hidden text or an input's value.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_title","description":"Return the current page's title, the text shown in the browser tab.","write_action":false,"price_micros":0,"input_schema":null},{"name":"history","description":"Browser history navigation: go back to the previous page (like the Back button), go forward to the next page, or refresh/reload the current page (like F5).","write_action":false,"price_micros":0,"input_schema":null},{"name":"interact","description":"Mouse actions beyond a plain click: double_click, right_click (opens a context menu), hover (reveals menus and tooltips),","write_action":false,"price_micros":0,"input_schema":null},{"name":"navigate","description":"Open a URL in the current tab and wait for the page to load (up to the pageLoadTimeoutMs set in start_browser).","write_action":false,"price_micros":0,"input_schema":null},{"name":"press_key","description":"Press one key on whichever element currently has focus, e.g. Enter to submit, Tab to move focus, Escape to close a dialog, or arrow keys in a list.","write_action":false,"price_micros":0,"input_schema":null},{"name":"retry_click","description":"Click with retries, for clicks that fail intermittently: the element is covered by a loading overlay or animation,","write_action":false,"price_micros":0,"input_schema":null},{"name":"scroll","description":"Scroll the page: scroll down or up by pixels, jump to the top or bottom, or scroll an element into view (to the middle of the screen).","write_action":false,"price_micros":0,"input_schema":null},{"name":"select_option","description":"Select an option in a native <select> dropdown by visible text, value, or zero-based index, and return the resulting selection.","write_action":false,"price_micros":0,"input_schema":null},{"name":"selector_hint_delete","description":"Permanently remove a saved selector hint from the hints file, e.g. when the site changed and the selector no longer works.","write_action":true,"price_micros":0,"input_schema":null},{"name":"selector_hint_get","description":"Look up a saved selector by key for a site and return it, ready to pass as the selector of click, type, get_text, and similar tools.","write_action":false,"price_micros":0,"input_schema":null},{"name":"selector_hint_list","description":"List saved selector hints (key, domain, and selector) for every site, or only for one domain.","write_action":false,"price_micros":0,"input_schema":null},{"name":"selector_hint_save","description":"Remember a selector that worked, under a short key for a site, so later runs can reuse it instead of rediscovering the element.","write_action":false,"price_micros":0,"input_schema":null},{"name":"session_create","description":"Open an additional, independent browser session (its own window, cookies, and login state) and make it the active one; all other tools act on the active session.","write_action":true,"price_micros":0,"input_schema":null},{"name":"session_destroy","description":"Close one browser session by id and quit its browser; its cookies, login state, and open pages are lost.","write_action":true,"price_micros":0,"input_schema":null},{"name":"session_list","description":"List every open browser session (id, browser, headless, window size, start time) and which one is active.","write_action":false,"price_micros":0,"input_schema":null},{"name":"session_select","description":"Make an existing browser session the active one, so every following tool call acts on that browser.","write_action":false,"price_micros":0,"input_schema":null},{"name":"start_browser","description":"Start a browser session (Chrome, Firefox, or Edge) that all other tools act on. Call this first.","write_action":false,"price_micros":0,"input_schema":null},{"name":"stop_browser","description":"Close the active browser session and quit its browser; its cookies, login state, and open pages are lost.","write_action":false,"price_micros":0,"input_schema":null},{"name":"take_screenshot","description":"Capture a PNG screenshot of the visible viewport. Returns it as base64 and/or saves it to savePath (folders are created as needed; an existing file is overwritten).","write_action":false,"price_micros":0,"input_schema":null},{"name":"type","description":"Type text into an input, textarea, or other editable element. Waits for it to be visible, clears the current value first","write_action":false,"price_micros":0,"input_schema":null},{"name":"upload_file","description":"Attach a local file to a file input (<input type=\"file\">) without opening the operating system's file picker.","write_action":true,"price_micros":0,"input_schema":null},{"name":"wait_for_element","description":"Wait for an element to exist in the page, or with visible: true to also be displayed, then return its tag and state (displayed, enabled).","write_action":false,"price_micros":0,"input_schema":null},{"name":"wait_for_page","description":"Wait until the current page's URL or title meets a condition: URL contains text, URL matches a regular expression, and/or title contains text (all given conditions must hold).","write_action":false,"price_micros":0,"input_schema":null},{"name":"window","description":"Manage browser tabs and windows, and resize the viewport.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":92,"grade":"A","scanned_at":"2026-09-19T20:06:18.044Z","report":{"scannerVersion":"0.1.5","scannedAt":"2026-09-19T20:06:18.062Z","components":{"code":{"score":25,"max":25,"notes":["45 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 7 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@gaforov/selenium-mcp","version":"0.3.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-09-13T02:01:08.921Z","repositoryUrl":"git+https://github.com/gaforov/selenium-mcp.git","weeklyDownloads":264}],"repo":{"found":true,"owner":"gaforov","repo":"selenium-mcp","archived":false,"pushedAt":"2026-09-13T02:00:27Z","stars":0,"forks":1,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/24490002?v=4","ownerCreatedAt":"2016-12-10T08:10:35Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/24490002?v=4&s=128","source":"registry"},"presence":{"stars":0,"forks":1,"downloadsWeek":264,"license":"MIT","lastPushAt":"2026-09-13T02:00:27.000Z","score":30}}}},"grade_history":[],"reviews":[]}