chrome-devtools-mcp-singleton

Enforce a single Chrome DevTools MCP server instance with dedupe and state management.

Updated Dec 31, 2025
One-click install
npx skills add https://github.com/joelklabo/markdowntown-cli --skill chrome-devtools-mcp-singleton
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: chrome-devtools-mcp-singleton
Source: https://github.com/joelklabo/markdowntown-cli/tree/main/codex/skills/chrome-devtools-mcp-singleton
Command: npx skills add https://github.com/joelklabo/markdowntown-cli --skill chrome-devtools-mcp-singleton

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires chrome-devtools-mcp, @modelcontextprotocol/sdk, and includes scripts (resource) components.

What problem does it solve?

Prevents multiple concurrent chrome-devtools-mcp processes from causing EMFILE, process-spawn, or client connection issues by enforcing a single running MCP server instance and providing safe start/stop/status workflows.

Core Features & Use Cases

  • Enforces a single system-wide chrome-devtools-mcp instance with dedupe logic that kills extra processes.
  • Manages PID and log state, exposes configurable environment variables for command, args, state directory, and keepalive behavior.
  • Provides start, run (foreground), stop, status, and dedupe commands plus smoke tests and multiple MCP client helpers for automated checks and diagnostics.
  • Use Cases: local development where multiple toolchains spawn MCP servers, CI smoke tests needing a stable MCP endpoint, and debugging headless Chrome via an isolated singleton server.

Quick Start

Use the bundled run_chrome_devtools_mcp.sh script to start the singleton MCP server, check its status, or stop it as needed.

Frequently Asked Questions about chrome-devtools-mcp-singleton

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Why do I get EMFILE or process-spawn errors when running multiple chrome-devtools-mcp processes?

EMFILE or process-spawn errors happen when multiple concurrent chrome-devtools-mcp processes exhaust system file descriptors. Enforcing a single singleton server instance with PID file management deduplicates running processes to prevent these resource collisions.

How do I enforce a single chrome-devtools-mcp instance for local development?

Use the bundled shell script to start, check status, or stop the singleton MCP server. It manages PID and log state while running dedupe logic to kill extra processes, ensuring a single stdio JSON-RPC endpoint for local development.

Can I configure the command, args, and state directory for a headless Chrome MCP server?

Yes, the singleton server exposes environment variables to configure the command, args, state directory, and keepalive behavior. This allows flexible integration into various local development and CI diagnostic scenarios.

Does this singleton process management approach work for CI smoke tests?

Yes, enforcing a single chrome-devtools-mcp instance works for CI smoke tests by providing a stable MCP endpoint. The included smoke tests and multiple MCP client helpers support automated checks and diagnostics.

What's the best way to stop or check the status of a running chrome-devtools-mcp process?

The bundled script provides explicit stop and status commands to manage the singleton chrome-devtools-mcp process. It tracks the PID file and log state to safely terminate or report the current server condition.