Skip MCP: Tiny Bash + Puppeteer Tools Beat Bloated Browser Dev Servers

Read Articleadded Nov 17, 2025
Skip MCP: Tiny Bash + Puppeteer Tools Beat Bloated Browser Dev Servers

Instead of using heavy MCP servers for browser devtools, the author shows how a handful of tiny Bash-invoked Puppeteer scripts (Start, Navigate, Evaluate, Screenshot) can do the job more efficiently. This approach slashes token usage, improves composability, and lets you customize or add tools (like a DOM picker or cookies extractor) in minutes. A simple setup and README make it reusable across agents without the overhead of MCP.

Key Points

  • MCP servers for browser automation are often bloated, token-hungry, hard to extend, and not composable across tasks.
  • A minimal toolkit (Start, Navigate, Evaluate JS, Screenshot) built with Puppeteer Core and invoked via Bash can cover most browser-agent workflows.
  • Relying on the model’s knowledge of Bash and code plus a short README (≈225 tokens) dramatically reduces context cost and confusion.
  • CLI tools are composable: outputs can be saved, chained, and reformatted without routing everything through the model’s context.
  • It’s trivial to extend with custom tools (e.g., an interactive DOM element picker or a cookies extractor) tailored to the task at hand.

Sentiment

The overall sentiment of the Hacker News discussion is predominantly skeptical to critical of MCP's broad utility, largely agreeing with the article's core thesis that it is often unnecessary or overhyped. While specific niche benefits and use cases for MCP are acknowledged, particularly concerning authentication, remote services, and agent awareness on certain platforms, the prevailing opinion favors simpler, more direct approaches like CLI tools or well-documented APIs.

In Agreement

  • MCP is an overhyped, vague, and often unnecessary abstraction that introduces "context pollution" and serves as a means for vendor lock-in or subscription models.
  • LLMs possess built-in function/tool calling capabilities, making explicit MCP frameworks redundant when well-documented APIs (e.g., Swagger/gRPC) or simple context instructions are provided.
  • Command-line tools (Bash/Node.js scripts) are superior due to their simplicity, composability, observability, security, and direct utility for both humans and agents.
  • CLI tools improve agent discoverability and allow outputs to be saved to disk, enhancing composability and avoiding passing through the model's context, which saves tokens.
  • The current AI tooling landscape is immature, characterized by a "fake till you make it" mentality and frameworks that fail to address core challenges like creativity and tool design.
  • Proprietary systems like 'Claude Skills' are essentially good documentation wrapped in a specific API to foster ecosystem lock-in, rather than offering fundamental innovation.

Opposed

  • MCP can encapsulate API credentials, keeping them out of the model's direct reach, which is a significant security benefit.
  • MCP tools can change their interface with fewer consequences than stable APIs, offering flexibility in development (though this is debated regarding script integrity).
  • MCP enhances agent awareness and discoverability, providing a persistent 'vocabulary' of tools that agents can consistently access without constant re-prompting, particularly beneficial for platforms like Claude Code.
  • MCP is valuable for integrating with remote services (e.g., Linear, Notion, Sentry) by handling authentication, networking, and security boundaries.
  • MCP can serve as an effective orchestration layer for managing complex agent behaviors, such as injecting reminders, user guides, or dynamically restricting tool availability.
  • MCP promotes structured tool use by enforcing IO schemas, which helps combat hallucination and enables the use of smaller, cheaper models in specific parts of a workflow.
  • Context pollution in MCP can be mitigated by running tools in subagents or by selectively trimming the number of exposed tools.