Skip to main content
Glama
bytesbrains

mcp-textbrowser

by bytesbrains

@bytesbrains/mcp-textbrowser

npm version license CI

MCP server — text-first headless browser for Claude Code and any MCP host. DOM + OCR text maps. Zero image tokens by default. 5-15x cheaper than screenshot-based browser MCPs.

browser_navigate(url)             → DOM elements + OCR text   (~200 tokens)
browser_navigate(url, visual=true) → text + PNG               (use for layout/color only)

Why

Every screenshot-based browser MCP sends a PNG to the AI on every action. At 1280×800 that's ~1,300 image tokens per page — 5-15x more expensive than reading the same content as text.

mcp-textbrowser captures a screenshot for OCR, extracts the text, then discards the image. Only structured DOM elements and OCR text reach the model. Switch to visual=true only when you genuinely need pixels (layout checks, color, design review).

Mode

Tokens per action

When to use

text-only (default)

~150–400

Everything: navigation, forms, data extraction, workflows

visual=true

~1,500–3,000

Layout, colors, CSS, design review

Related MCP server: MCP Master Puppeteer

Install

Step 1 — install Chromium (one-time, ~130MB):

npx playwright install chromium

Step 2 — add the MCP server:

Claude Code (CLI) — one command

claude mcp add textbrowser -- npx -y @bytesbrains/mcp-textbrowser

That's it. Restart Claude Code and the tools are ready.

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (Mac) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "textbrowser": {
      "command": "npx",
      "args": ["-y", "@bytesbrains/mcp-textbrowser"]
    }
  }
}

Restart Claude Desktop.

Manual (any MCP host)

Use command: npx, args: ["-y", "@bytesbrains/mcp-textbrowser"] in your host's MCP server config.

Tools

Tool

What it does

browser_navigate

Open a URL, return page context

browser_click

Click by CSS selector / XPath / visible text

browser_type

Fill an input field

browser_scroll

Scroll page or element into view

browser_screenshot

Capture current page context

browser_read

Read current page without navigating

browser_evaluate

Run JS in the page (safe DOM ops only)

All tools default to text-only — pass visual: true to any tool to also receive the PNG.

Example output

Page: https://example.com/
Title: Example Domain
Viewport: 1280x800

Elements (3 interactive of 14 total):
  [1] <a> href="https://iana.org/domains/example" bbox=(133,175,254,195)
      text: "More information..."

OCR (full page screenshot):
Example Domain
This domain is for use in illustrative examples in documents.
You may use this domain in literature without prior coordination or asking for permission.

Requirements

  • Node.js 18+

  • Chromium: npx playwright install chromium (one-time, ~130MB)

License

MIT © BytesBrains


Built by Agent, for Agents 🤖


Built and maintained by BytesBrains — AI automation & agents, engineered to production standards. The model proposes, code guarantees.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bytesbrains/mcp-textbrowser'

If you have feedback or need assistance with the MCP directory API, please join our Discord server