All reports

@mozilla/firefox-devtools-mcp

io.github.mozilla/firefox-devtools-mcp · version 0.10.7 · 7,683 weekly npm downloads · audited 2026-11-03

MCPVetter badge Notes

Findings

No hidden-instruction or invisible-character findings in any tool, prompt, or resource description.

Claude Connectors Directory readiness

Checks the directory's published tool requirements that are visible from tools/list. Passing them does not guarantee acceptance.

What this server's tools can do

Not a vulnerability by itself. It tells you what an injected prompt could ask this server to do, so you can decide which tools need approval.

Supply chain

Tools (35)

NameTitleHintDescription
list_pagesread-onlyList open tabs (index, title, URL). Selected tab is marked.
new_pagewritesOpen new tab at URL. Returns tab index.
navigate_pagewritesNavigate selected tab to URL.
select_pagewritesSelect active tab by index, URL, or title. Index takes precedence.
close_pagewritesClose tab by index.
get_page_textread-onlyGet the visible text of the page (document.body.innerText). Caps at maxLength (default 20000 chars); saveTo saves the full text to a file.
take_snapshotread-onlyCapture DOM snapshot with stable UIDs. A UID stays valid across snapshots until its element is removed or the page navigates. Output caps at maxLines (default 100); scope with selector or dump the full tree with saveTo.
resolve_uid_to_selectorread-onlyResolve UID to CSS selector. Fails if the element is gone.
clear_snapshotwritesClear snapshot UIDs. Usually not needed.
click_by_uidwritesClick element by UID. Set dblClick for double-click.
hover_by_uidwritesHover over element by UID.
fill_by_uidwritesFill text input/textarea by UID.
drag_by_uid_to_uidwritesDrag element to another (HTML5 drag events).
fill_form_by_uidwritesFill multiple form fields at once.
upload_file_by_uidwritesUpload file to file input by UID.
press_keywritesPress a single key, optionally with modifiers, to submit, dismiss, navigate or trigger a shortcut. Not for entering text: use fill_by_uid instead.
type_textwritesType text key by key into the focused element, optionally followed by a key such as Enter. Use fill_by_uid to set the value of a known input; use this for elements that only react to real typing, such as autocomplete fie…
screenshot_pageread-onlyCapture viewport screenshot as base64 PNG. Set fullPage for the whole scrollable document.
screenshot_by_uidread-onlyCapture element screenshot by UID as base64 PNG.
print_pageread-onlyPrint the current page to a PDF file using print CSS. Returns the saved file path.
list_downloadsread-onlyList downloads tracked since startup, including status and saved file path.
clear_downloadsnoneClear the tracked downloads buffer.
set_download_behaviornoneControl how downloads are handled: allow (save to a destination folder), deny (cancel), or reset to default. Avoids the native save-file dialog. Requires a recent Firefox.
accept_dialogwritesAccept browser dialog. Provide promptText for prompts.
dismiss_dialogwritesDismiss browser dialog.
navigate_historywritesNavigate history back/forward. UIDs become stale.
set_viewport_sizewritesSet viewport dimensions in pixels. Applies to the selected tab only.
get_firefox_outputread-onlyRetrieve Firefox output (stdout/stderr including MOZ_LOG, warnings, crashes, stack traces). Returns recent output from the capture file. Use filters to focus on specific content.
get_firefox_inforead-onlyGet information about the current Firefox instance configuration, including binary path, environment variables, and output file location.
close_firefox_sessionwritesEnds the browser session. If the server connected to your existing Firefox, this releases the connection and leaves Firefox running. If the server started Firefox itself, this closes it. Call this when the browser task i…
install_extensionwritesInstall a Firefox extension using WebDriver BiDi webExtension.install command. Supports installing from archive (.xpi/.zip), base64-encoded data, or unpacked directory.
uninstall_extensionwritesUninstall a Firefox extension using WebDriver BiDi webExtension.uninstall command. Requires the extension ID returned by install_extension or obtained from list_extensions.
screencast_startwritesStart recording a screencast (video) of the current page viewport, saving the output to a file in the downloads directory. Returns a screencast id to pass to screencast_stop. Multiple recordings can run at once.
screencast_stopwritesStop an in-progress screencast recording started with screencast_start and finalize the video file. Returns the path to the saved file.
evaluate_scriptwritesRun a JS function in the page and return its result. Prefer this for targeted reads (a value, text, computed style, whether an element exists) instead of a full take_snapshot. Use the UID interaction tools for clicking, …

Check your own setup

npx mcpvetter scan --live

Badge

Add this to a README:

[![MCPVetter](https://mcpvetter.com/badge/mozilla-firefox-devtools-mcp.svg)](https://mcpvetter.com/servers/mozilla-firefox-devtools-mcp)

Publish this server?

Get the MCPVetter verified badge, a re-audit within 24 hours of every npm release, and an email whenever tools, findings, or Claude directory readiness change. $29 per server per month. You prove ownership first, free.