firefox
A fully vibe-coded, experimental, MCP server to control firefox
claude mcp add --transport stdio jediluke-firefox-mcp-server npx firefox-mcp-server
How to use
The Firefox MCP Server provides advanced browser automation for Firefox with 28 specialized tools, enabling multi-session management, real-time debugging, and comprehensive web interaction capabilities. It lets you launch isolated browser sessions, monitor console output, track network activity, capture WebSocket traffic, and execute custom JavaScript within browser contexts. Use the tool set to automate complex web-app scenarios, perform multiplayer-like testing, and debug LiveView-style communications, all within separate, independently managed sessions. The server exposes clear primitives for session lifecycle, page navigation, element interaction, content extraction, debugging, and performance metrics, making it suitable for AI assistants and automation workflows that require robust browser automation and observability.
To get started, configure the MCP client to point at the Firefox MCP server entrypoint, then invoke tools such as session_create, browser_launch, page_navigate, element_click, input_type, and debugging helpers (debug_console_logs, debug_network_activity, debug_websocket_messages, etc.). You can also capture screenshots, extract HTML or text, and run custom JavaScript with javascript_execute. Real-time debugging capabilities can be wired into your workflow to observe console messages, JavaScript errors, network activity, and WebSocket traffic as sessions run.
How to install
Prerequisites:
- Node.js and npm installed on your system
- Access to a terminal/command prompt
Installation steps:
- Install the Firefox MCP Server package from npm (or as a dependency in your project):
npm install firefox-mcp-server
- Install the Firefox browser binary via Playwright (required for automation):
npx playwright install firefox
- Start or configure your MCP client to connect to the server according to your environment. The server is typically invoked via npx firefox-mcp-server or by running the server’s entry-point if you’re integrating into a larger application.
Note: If you encounter a missing browser binary error, ensure Playwright’s Firefox is installed as shown in step 2. This may be required the first time you run the server.
Additional notes
Tips and caveats:
- Ensure you have Playwright-installed Firefox binaries; some environments require manual installation with playwright install firefox.
- The server supports multi-session workflows; create and manage independent session contexts for isolation.
- When debugging, enable monitoring in session creation (enableMonitoring: true) to surface real-time data such as console logs, network activity, and WebSocket messages.
- If you expose the MCP server to external clients, secure access and consider per-session permissions for sensitive operations.
- Common env vars you might add include API keys or feature flags; the default config includes env: {} placeholders for each server in the MCP config.
- For troubleshooting, consult the debugging tool references (debug_console_logs, debug_network_activity, debug_websocket_messages, etc.).
Related MCP Servers
zen
Selfhosted notes app. Single golang binary, notes stored as markdown within SQLite, full-text search, very low resource usage
MCP -Deepseek_R1
A Model Context Protocol (MCP) server implementation connecting Claude Desktop with DeepSeek's language models (R1/V3)
mcp-fhir
A Model Context Protocol implementation for FHIR
mcp
Inkdrop Model Context Protocol Server
mcp-appium-gestures
This is a Model Context Protocol (MCP) server providing resources and tools for Appium mobile gestures using Actions API..
dubco -npm
The (Unofficial) dubco-mcp-server enables AI assistants to manage Dub.co short links via the Model Context Protocol. It provides three MCP tools: create_link for generating new short URLs, update_link for modifying existing links, and delete_link for removing short links.