Skip to main content
Glama
saGoldberg31

browser-mcp-claude

by saGoldberg31

Browser MCP for Claude and other models

This is a remote MCP server that provides general browser tools via Playwright and Streamable HTTP. It does not rely on Claude inside the server; any client that supports MCP over HTTPS can use it, including Claude, or a middleware layer using Gemini, OpenAI, or a local model.

The server opens and reads pages and fills non-sensitive fields, but it blocks password fields, files, final submission, and payment or deletion operations.

Deploying on Replit

Import this repository into Replit using Docker, then choose a Reserved VM or an always-on service. Add the following variables in Secrets:

Key

Value

MCP_AUTH_TOKEN

A long random token to authenticate Claude with the server

BROWSER_HEADLESS

true

MAX_PAGE_TEXT

12000

Do not put passwords, verification codes, or site keys inside GitHub or the code.

After deployment, the endpoint becomes:

https://YOUR-REPL-DOMAIN/mcp

It must be public over HTTPS; Claude connects to the server from Anthropic's cloud infrastructure, not from your local phone.

Related MCP server: Playwright MCP Server

Connecting Claude Web

In Claude on the phone, open Customize → Connectors → + → Add custom connector, and enter the /mcp link. If the interface asks for OAuth Client ID/Secret, do not put MCP_AUTH_TOKEN in those fields; those fields are for OAuth. Use the authentication mechanism that Claude offers for the account, or implement the connection via the Claude API if the server needs a direct Bearer token.

After adding, enable the connector in the conversation from + → Connectors. Start with read-only commands like opening a public page and taking a text snapshot. Review every tool request before allowing it.

Multi-model

The MCP server does not enforce a model. Claude, Gemini, OpenAI, or any other model that supports MCP is the client that decides to call the tools. The model can be changed without modifying Playwright or the MCP server.

Server tools

  • browser_open(url): Open a public HTTP(S) page.

  • browser_snapshot(): Read the current page and display references to interactive elements.

  • browser_click(ref): Click a non-final element.

  • browser_fill(ref, value): Fill a non-sensitive text field.

  • browser_select(ref, label_or_value): Select an item from a list.

  • browser_back(): Go back one page.

  • browser_close(): Close the browser session.

Security limitations

The server refuses to run if MCP_AUTH_TOKEN is not set. It must run behind public HTTPS, and access to sites and data should be restricted as needed. Do not use it to bypass CAPTCHA or site controls, and do not give Claude automatic permission for purchase, deletion, or submission operations. Add real OAuth before using it with production accounts.

References

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Exposes Playwright browser automation as MCP tools, enabling AI assistants to control a real browser tab-by-tab for form filling, navigation, and more, while preserving the user's active session.
    -
  • A
    license
    C
    quality
    B
    maintenance
    Exposes a remote browser as MCP tools via Playwright, enabling AI agents to navigate and interact with web pages through DOM snapshots, clicks, typing, and form operations.
    40
    22 npm
    8
    Apache 2.0