marionette-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FX_MCP_FILE_ROOTS | No | Comma-separated roots that fx_upload/fx_screenshot may touch | /tmp |
| FX_MARIONETTE_HOST | No | Marionette endpoint (loopback only, by design) | 127.0.0.1 |
| FX_MARIONETTE_PORT | No | Firefox's --marionette port | 2828 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| fx_statusB | Health: connection, session, current page, navigator.webdriver flag |
| fx_navigateC | Navigate the active tab to a URL |
| fx_pageA | Current URL and title |
| fx_snapshotB | Interactive-element map with refs (use refs in fx_click/fx_type/...) |
| fx_clickB | Click element by ref (from fx_snapshot) or CSS selector |
| fx_typeA | Type text into element (clears first unless keep=true) |
| fx_selectB | Set by option value or visible label |
| fx_toggleC | Set checkbox/radio state |
| fx_uploadB | Set a file input value (raw-path sendKeys); path must be under FX_MCP_FILE_ROOTS |
| fx_evalA | Execute JS in the page (script = function body, may return a value) |
| fx_waitA | Wait until visible text (or CSS selector exists). Default 10s, max 30s |
| fx_screenshotC | View PNG to a file under an allowed root (or explicit allowed path) |
| fx_windowsB | List windows (focused marked) |
| fx_windowC | Switch active window by handle |
| fx_alert_stateB | Text of an open native dialog |
| fx_alert_acceptA | Accept (OK) the open native dialog |
| fx_alert_dismissA | Dismiss (Cancel) the open native dialog |
| fx_cookiesA | Cookies of the current origin (names/domains only) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 18 tools
Each tool targets a distinct browser automation concern: navigation, page state, element actions, windows, alerts, cookies, and evaluation. There is minimal overlap, and similar-sounding tools like fx_window vs fx_windows are clearly differentiated by singular/plural usage and descriptions.
All tools share the fx_ prefix and use lowercase names without mixed case or underscores, which is a predictable pattern. There is a slight mix of verb-style names like fx_navigate and fx_click with noun-style names like fx_page and fx_cookies, but the overall convention remains coherent.
Eighteen tools is slightly above the typical 3-15 range, but each tool covers a distinct and necessary browser automation action. The count feels justified for the scope, though a few could be consolidated without much loss.
The set covers core browser automation workflows: navigation, interaction, snapshots, waiting, screenshots, window management, alerts, cookies, and JS evaluation. Minor gaps exist such as no dedicated back/forward/refresh or cookie mutation, but fx_eval can compensate for many advanced needs.