Serversio.github.serkan-ozal/browser-devtools-mcp
M

io.github.serkan-ozal/browser-devtools-mcp

io.github.serkan-ozal/browser-devtools-mcp · v0.5.3
▦ npm
v0.5.3npm npm: browser-devtools-mcp🌐 https://{your_mcp_server_host}/mcp↗ Website↗ Repository
{}server.json

The full server descriptor as registered with IndusMCP.

{
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "name": "io.github.serkan-ozal/browser-devtools-mcp",
  "description": "Playwright browser & Node.js MCP. ARIA refs, screenshots, ref-based interactions.",
  "repository": {
    "url": "https://github.com/serkan-ozal/browser-devtools-mcp",
    "source": "github"
  },
  "version": "0.5.3",
  "websiteUrl": "https://github.com/serkan-ozal/browser-devtools-mcp",
  "icons": [
    {
      "src": "https://browser-devtools.com/assets/icons/icon.png",
      "mimeType": "image/png"
    },
    {
      "src": "https://browser-devtools.com/assets/icons/icon.svg",
      "mimeType": "image/svg+xml",
      "sizes": [
        "any"
      ]
    }
  ],
  "packages": [
    {
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "identifier": "browser-devtools-mcp",
      "version": "0.5.3",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "description": "Platform: browser (default) or node for Node.js backend debugging.",
          "format": "string",
          "name": "PLATFORM"
        },
        {
          "description": "Port for HTTP transport.",
          "format": "number",
          "name": "PORT"
        },
        {
          "description": "Idle session timeout (seconds).",
          "format": "number",
          "name": "SESSION_IDLE_SECONDS"
        },
        {
          "description": "Interval for checking idle sessions (seconds).",
          "format": "number",
          "name": "SESSION_IDLE_CHECK_SECONDS"
        },
        {
          "description": "Close session when socket closes.",
          "format": "boolean",
          "name": "SESSION_CLOSE_ON_SOCKET_CLOSE"
        },
        {
          "description": "Maximum console messages to buffer.",
          "format": "number",
          "name": "CONSOLE_MESSAGES_BUFFER_SIZE"
        },
        {
          "description": "Maximum HTTP requests to buffer.",
          "format": "number",
          "name": "HTTP_REQUESTS_BUFFER_SIZE"
        },
        {
          "description": "When true, include server instructions in MCP server info (browser platform). Default: true.",
          "format": "boolean",
          "name": "BROWSER_SERVER_INSTRUCTIONS_ENABLE"
        },
        {
          "description": "When true, include UI_DEBUGGING_POLICY in server policies (browser platform). Default: false.",
          "format": "boolean",
          "name": "BROWSER_POLICY_UI_DEBUGGING_ENABLE"
        },
        {
          "description": "Run browser in headless mode.",
          "format": "boolean",
          "name": "BROWSER_HEADLESS_ENABLE"
        },
        {
          "description": "Use persistent browser context (preserves cookies, localStorage, extensions).",
          "format": "boolean",
          "name": "BROWSER_PERSISTENT_ENABLE"
        },
        {
          "description": "CDP attach: http(s) root or ws(s) URL. Resolves via /json/version, /json/list, or ws /devtools/browser (Chrome 136+). Mutually exclusive with BROWSER_PERSISTENT_ENABLE.",
          "format": "string",
          "name": "BROWSER_CDP_ENDPOINT_URL"
        },
        {
          "description": "When true and no BROWSER_CDP_ENDPOINT_URL: probe 127.0.0.1:9222 then :9229 for CDP. Else use BROWSER_CDP_ENDPOINT_URL or default http://127.0.0.1:9222.",
          "format": "boolean",
          "name": "BROWSER_CDP_ENABLE"
        },
        {
          "description": "On loopback CDP failure, if Chrome is running, open chrome://inspect/#remote-debugging. Default true. Set false to disable.",
          "format": "boolean",
          "name": "BROWSER_CDP_OPEN_INSPECT"
        },
        {
          "description": "Directory for persistent browser context user data.",
          "format": "string",
          "name": "BROWSER_PERSISTENT_USER_DATA_DIR"
        },
        {
          "description": "Use system-installed Chrome browser instead of Playwright's bundled browser.",
          "format": "boolean",
          "name": "BROWSER_USE_INSTALLED_ON_SYSTEM"
        },
        {
          "description": "Custom browser executable path.",
          "format": "string",
          "name": "BROWSER_EXECUTABLE_PATH"
        },
        {
          "description": "Browser locale (e.g., \"en-US\", \"tr-TR\").",
          "format": "string",
          "name": "BROWSER_LOCALE"
        },
        {
          "description": "Enable OpenTelemetry integration.",
          "format": "boolean",
          "name": "OTEL_ENABLE"
        },
        {
          "description": "OpenTelemetry service name.",
          "format": "string",
          "name": "OTEL_SERVICE_NAME"
        },
        {
          "description": "OpenTelemetry service version.",
          "format": "string",
          "name": "OTEL_SERVICE_VERSION"
        },
        {
          "description": "Directory containing OpenTelemetry bundle files.",
          "format": "string",
          "name": "OTEL_ASSETS_DIR"
        },
        {
          "description": "User interaction events to instrument (comma-separated, e.g., \"click,submit\").",
          "format": "string",
          "name": "OTEL_INSTRUMENTATION_USER_INTERACTION_EVENTS"
        },
        {
          "description": "OpenTelemetry exporter type: \"otlp/http\", \"console\", or \"none\".",
          "format": "string",
          "name": "OTEL_EXPORTER_TYPE"
        },
        {
          "description": "OpenTelemetry collector base URL (e.g., \"http://localhost:4318\").",
          "format": "string",
          "name": "OTEL_EXPORTER_HTTP_URL"
        },
        {
          "description": "OpenTelemetry exporter HTTP headers (comma-separated key=value pairs).",
          "format": "string",
          "isSecret": true,
          "name": "OTEL_EXPORTER_HTTP_HEADERS"
        },
        {
          "description": "AWS region for Bedrock usage.",
          "format": "string",
          "name": "AWS_REGION"
        },
        {
          "description": "AWS profile name for Bedrock usage.",
          "format": "string",
          "name": "AWS_PROFILE"
        },
        {
          "description": "Enable Amazon Bedrock usage.",
          "format": "boolean",
          "name": "AMAZON_BEDROCK_ENABLE"
        },
        {
          "description": "Amazon Bedrock image embedding model ID.",
          "format": "string",
          "name": "AMAZON_BEDROCK_IMAGE_EMBED_MODEL_ID"
        },
        {
          "description": "Amazon Bedrock text embedding model ID.",
          "format": "string",
          "name": "AMAZON_BEDROCK_TEXT_EMBED_MODEL_ID"
        },
        {
          "description": "Amazon Bedrock vision model ID.",
          "format": "string",
          "name": "AMAZON_BEDROCK_VISION_MODEL_ID"
        },
        {
          "description": "Figma API access token for design comparison.",
          "format": "string",
          "isSecret": true,
          "name": "FIGMA_ACCESS_TOKEN"
        },
        {
          "description": "Figma API base URL.",
          "format": "string",
          "name": "FIGMA_API_BASE_URL"
        },
        {
          "description": "Daemon mode port (CLI).",
          "format": "number",
          "name": "DAEMON_PORT"
        },
        {
          "description": "Daemon mode idle session timeout (seconds).",
          "format": "number",
          "name": "DAEMON_SESSION_IDLE_SECONDS"
        },
        {
          "description": "Daemon mode idle session check interval (seconds).",
          "format": "number",
          "name": "DAEMON_SESSION_IDLE_CHECK_SECONDS"
        },
        {
          "description": "When true, include server instructions in MCP server info (node platform). Default: true.",
          "format": "boolean",
          "name": "NODE_SERVER_INSTRUCTIONS_ENABLE"
        },
        {
          "description": "When true, include NODE_DEBUGGING_POLICY in server policies (node platform). Default: false.",
          "format": "boolean",
          "name": "NODE_POLICY_DEBUGGING_ENABLE"
        },
        {
          "description": "Inspector host for debug_connect when MCP runs in Docker (e.g. host.docker.internal). Default: 127.0.0.1.",
          "format": "string",
          "name": "NODE_INSPECTOR_HOST"
        },
        {
          "description": "When true, omit tool output schema from MCP tool registration (can reduce token usage for some clients).",
          "format": "boolean",
          "name": "TOOL_OUTPUT_SCHEMA_DISABLE"
        },
        {
          "description": "Comma-separated tool domains to enable (e.g. navigation,interaction,a11y). Unset = all tools. Browser: a11y, content, debug, figma, interaction, navigation, o11y, react, run, stub, sync. Node: debug, run.",
          "format": "string",
          "name": "AVAILABLE_TOOL_DOMAINS"
        }
      ]
    }
  ],
  "remotes": [
    {
      "type": "streamable-http",
      "url": "https://{your_mcp_server_host}/mcp",
      "variables": {
        "your_mcp_server_host": {
          "description": "Your self-hosted MCP server host (host:port, without scheme).",
          "isRequired": true
        }
      }
    }
  ],
  "_meta": {
    "io.modelcontextprotocol.registry/publisher-provided": {
      "contacts": [
        {
          "email": "serkanozal86@gmail.com",
          "name": "Serkan Ozal",
          "url": "https://github.com/serkan-ozal"
        }
      ],
      "documentationUrl": "https://github.com/serkan-ozal/browser-devtools-mcp#readme",
      "keywords": [
        "ai",
        "automation",
        "browser",
        "debugging",
        "mcp",
        "nodejs",
        "observability",
        "opentelemetry",
        "playwright",
        "source-map",
        "testing",
        "web"
      ]
    },
    "dev.indusmcp/source": "official-registry-mirror",
    "dev.indusmcp/synced": "2026-05-12"
  }
}