MCP Marketplace
BrowseHow It WorksFor CreatorsDocs
Sign inSign up
MCP Marketplace

The curated, security-first marketplace for AI tools.

Product

Browse ToolsSubmit a ToolDocumentationHow It WorksBlogFAQ

Legal

Terms of ServicePrivacy PolicyCommunity Guidelines

Connect

support@mcp-marketplace.ioTwitter / XDiscord

MCP Marketplace Β© 2026. All rights reserved.

Back to Browse

Playwright Network Chaos MCP Server

by vola-trebla
Search & WebLow Risk9.3Local
Free

MCP server that gives AI agents dynamic network chaos control over Playwright browser sessions

About

MCP server that gives AI agents dynamic network chaos control over Playwright browser sessions

Security Report

9.3
Low Risk9.3Low Risk

Valid MCP server (2 strong, 3 medium validity signals). 1 known CVE in dependencies (0 critical, 1 high severity) Package registry verified. Imported from the Official MCP Registry. Trust signals: trusted author (17/17 approved).

7 files analyzed Β· 2 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

file_system

Check that this permission is expected for this type of plugin.

Shell Command Execution

Runs commands on your machine. Be cautious β€” only use if you trust this plugin.

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-vola-trebla-playwright-network-chaos-mcp": {
      "args": [
        "-y",
        "playwright-network-chaos-mcp"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

playwright-network-chaos-mcp 🐸πŸ’₯

npm version npm downloads CI License: MIT

An MCP server that gives AI agents dynamic network chaos control over Playwright browser sessions.

Your tests run on perfect networks. Your users don't. This MCP lets AI agents simulate API outages, inject latency, drop connections mid-flight, and block third-party resources β€” then assert whether the app handles it gracefully.


πŸ€” The Problem

CI environments have flawless connectivity. APIs respond in milliseconds. CDNs never go down. So your tests pass β€” and then production breaks when the payment service returns a 503, the network drops mid-checkout, or Google Analytics hangs for 8 seconds and freezes the page.

AI agents writing Playwright tests have no way to introduce or reason about network instability. They can't ask:

  • πŸ™ˆ Does the checkout page show an error state when the payment API fails?
  • πŸ™ˆ Does the skeleton loader appear while the dashboard API is slow?
  • πŸ™ˆ Does the app still work if all tracking scripts are blocked?
  • πŸ™ˆ What happens if the network drops after the order is submitted but before the response arrives?

playwright-network-chaos-mcp fixes that.


πŸ› οΈ Tools

simulate_api_failure

Intercepts requests matching a pattern and forces them to return an error status code. Checks if the app shows a fallback UI.

{
  "url": "https://your-app.com/checkout",
  "intercept_pattern": "**/api/payment**",
  "status_code": 503,
  "fallback_selector": ".error-boundary",
  "wait_ms": 2000
}
{
  "intercepted_count": 2,
  "fallback_found": true,
  "fallback_selector": ".error-boundary",
  "page_state": {
    "page_errors": [],
    "console_errors": ["Failed to load resource: 503"]
  }
}

inject_latency

Adds artificial delay to matching requests. Checks if loading states appear while the app waits.

{
  "url": "https://your-app.com/dashboard",
  "intercept_pattern": "**/api/**",
  "latency_ms": 3000,
  "jitter_ms": 500,
  "loading_selector": ".skeleton-loader"
}
{
  "intercepted_count": 4,
  "intercepted_requests": [
    { "url": "https://api.your-app.com/users", "method": "GET", "delay_ms": 3241 }
  ],
  "loading_state_found": true,
  "load_time_ms": 3890
}

block_resources

Aborts requests to specified URL patterns β€” for testing third-party outages (analytics, CDNs, tracking pixels).

{
  "url": "https://your-app.com",
  "block_patterns": ["**/analytics**", "*.doubleclick.net/**", "**/hotjar**"],
  "core_content_selector": ".main-content",
  "wait_ms": 2000
}
{
  "blocked_count": 7,
  "blocked_urls": ["https://www.google-analytics.com/analytics.js", "..."],
  "core_content_found": true,
  "page_state": { "page_errors": [], "console_errors": [] }
}

simulate_network_drop

Aborts requests mid-flight after a delay β€” simulating connection loss between request and response.

{
  "url": "https://your-app.com/checkout",
  "intercept_pattern": "**/api/order**",
  "drop_after_ms": 800,
  "fallback_selector": ".network-error-toast",
  "wait_ms": 3000
}
{
  "intercepted_count": 1,
  "fallback_found": true,
  "fallback_selector": ".network-error-toast",
  "page_state": { "page_errors": ["TypeError: Failed to fetch"] }
}

trigger_system_network_error

Aborts requests with an OS-level error code β€” simulating DNS failures, firewall blocks, and connection resets.

{
  "url": "https://your-app.com/dashboard",
  "intercept_pattern": "**/api/**",
  "error_code": "addressunreachable",
  "fallback_selector": ".network-error"
}
{
  "error_code": "addressunreachable",
  "intercepted_count": 3,
  "fallback_found": true,
  "page_state": { "page_errors": [], "console_errors": ["net::ERR_ADDRESS_UNREACHABLE"] }
}

simulate_stateful_failure

Fails the first N requests then lets subsequent ones succeed β€” testing retry logic and recovery flows.

{
  "url": "https://your-app.com/dashboard",
  "intercept_pattern": "**/api/data**",
  "http_status": 503,
  "failure_count": 2,
  "success_payload": "{\"data\":[]}",
  "fallback_selector": ".retry-button"
}
{
  "failure_count": 2,
  "actual_failed": 2,
  "actual_succeeded": 1,
  "intercepted_requests": [
    { "url": "...", "method": "GET", "status": 503, "attempt": 1, "outcome": "failed" },
    { "url": "...", "method": "GET", "status": 200, "attempt": 3, "outcome": "passed" }
  ],
  "fallback_found": true
}

inject_response_corruption

Serves malformed responses at the protocol level β€” unterminated JSON, content-length lies, or truncated payloads.

{
  "url": "https://your-app.com/checkout",
  "intercept_pattern": "**/api/order**",
  "corruption_type": "malformed_json",
  "fallback_selector": ".parse-error"
}
{
  "corruption_type": "malformed_json",
  "intercepted_count": 1,
  "fallback_found": false,
  "page_state": { "page_errors": ["SyntaxError: Unexpected token u in JSON"] }
}

assert_chaos_handled

Injects a chaos HTTP status and returns a structured pass/fail verdict β€” chaos_survived is true only when the fallback UI appears and there are no unhandled JS exceptions.

{
  "url": "https://your-app.com/checkout",
  "intercept_pattern": "**/api/**",
  "http_status": 500,
  "expected_fallback_selector": ".error-boundary"
}
{
  "http_status": 500,
  "unhandled_exceptions": [],
  "console_errors": ["Failed to load resource: 500"],
  "fallback_ui_detected": true,
  "chaos_survived": true
}

πŸš€ Installation

npx playwright-network-chaos-mcp

Or install globally:

npm install -g playwright-network-chaos-mcp
npx playwright install chromium

Claude Desktop config

{
  "mcpServers": {
    "playwright-network-chaos-mcp": {
      "command": "npx",
      "args": ["-y", "playwright-network-chaos-mcp"]
    }
  }
}

πŸ’‘ Example Agent Prompts

"Check if the checkout page shows a proper error state when the payment API returns 503"

"Simulate a 3 second API delay on the dashboard and verify the skeleton loader appears"

"Block all analytics and tracking scripts and confirm the main content still loads"

"Drop the order submission request mid-flight and check if the user sees an error message"

"Simulate DNS failure for the API and check if the error boundary renders"

"Fail the first 3 requests then succeed β€” does the app retry and recover automatically?"

"Inject malformed JSON and assert the app doesn't crash β€” return a chaos verdict"


πŸ”— Related Projects

  • playwright-trace-decoder-mcp β€” root-cause analysis of CI failures from Playwright traces
  • flakiness-knowledge-graph-mcp β€” knowledge graph of flaky test patterns
  • ast-impact-mapper-mcp β€” find affected tests from code changes via TypeScript AST
  • zod-contract-mock-forge-mcp β€” deterministic mock generation from Zod schemas
  • playwright-spatial-layout-mcp β€” geometric spatial awareness of web layouts

πŸ“„ License

MIT Β© vola-trebla

Reviews

No reviews yet

Be the first to review this server!

0

installs

New

no ratings yet

Links

Source Codenpm Package

Details

Published May 18, 2026
Version 0.2.1
0 installs
Local Plugin

More Search & Web MCP Servers

Toleno

Free

by Toleno Β· Developer Tools

Toleno Network MCP Server β€” Manage your Toleno mining account with Claude AI using natural language.

137
Stars
533
Installs
8.0
Security
4.8
Local

mcp-creator-python

Free

by mcp-marketplace Β· Developer Tools

Create, build, and publish Python MCP servers to PyPI β€” conversationally.

-
Stars
80
Installs
10.0
Security
4.6
Local

MarkItDown

Free

by Microsoft Β· Content & Media

Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption

156.1K
Stars
45
Installs
6.0
Security
5.0
Local

MCP Marketplace

Free

by mcp-marketplace Β· Developer Tools

Search and install MCP servers from inside your AI client.

-
Stars
30
Installs
10.0
Security
5.0
Remote

FinAgent

Free

by mcp-marketplace Β· Finance

Free stock data and market news for any MCP-compatible AI assistant.

-
Stars
25
Installs
10.0
Security
No ratings yet
Local

mcp-creator-typescript

Free

by mcp-marketplace Β· Developer Tools

Scaffold, build, and publish TypeScript MCP servers to npm β€” conversationally

-
Stars
19
Installs
10.0
Security
5.0
Local