Skip to content
Conduit

mcp server

bug-reproduce-agent

Autonomous AI agent for reproducing Chrome bugs, analyzing logs, querying DB, and handling RabbitMQ message flows with sanitized data.

vidsveur-tech/bug-reproduce-agentcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

This project does not publish an install method we can turn into a config. Follow the README instead.

README

synced Oct 22, 2026

Bug Reproduce Agent 🚀

🤖 Autonomous bug reproduction & triage suite with multi-microservice log correlation, read-only DB inspection, and RabbitMQ triggers for AI Coding Agents.

Python 3.9+ License: MIT Architecture: Agentic AI Safety: Enforced Read-Only

An autonomous, agentic framework designed to streamline bug reproduction, multi-microservice log correlation, MongoDB inspection, and RabbitMQ message peek/triggers.

Built to bridge the gap between AI Coding Assistants (e.g. Gemini Antigravity, Claude Code, Cursor, Windsurf) and complex microservice staging environments.


🎯 Key Features

  • 🌐 Browser Automation via Chrome DevTools MCP: AI agents interact with real web apps (click, input, navigate), capture console errors, inspect network traffic, and take screenshots for bug reports.
  • 🤖 Autonomous Bug Reproduction & Localization: Guides AI agents through reproducing front-end bugs, inspecting browser console errors, and tracing backend worker failures.
  • 🛡️ Strict Safety Boundaries: Enforces Read-Only access to databases (MongoDB / PostgreSQL). Write mutations are strictly blocked at the driver level.
  • 🪵 Microservice Log Correlation: Dynamic SSE container stream reader that matches service keywords to container IDs across container restarts.
  • 🐇 Controlled Queue Interactivity: Inspection of RabbitMQ management queues + whitelisted event publishing for triggering background sync workers.

🏗 Architecture & Data Flow

flowchart TD
    subgraph Local Environment
        User[QA / Developer] <--> Agent[AI Coding Agent]
        Agent <--> Config[config.py / AGENTS.md Rules]
    end

    subgraph Browser & MCP Integration
        Agent <-->|MCP Protocol| DevToolsMCP[Chrome DevTools MCP Server]
        DevToolsMCP <-->|Chrome Remote Debugging| Browser[Chrome / Chromium Browser]
    end

    subgraph Security Boundary & Tools
        Agent -->|Read-Only Queries| MongoTool[tools/mongo_db.py]
        Agent -->|SSE Stream Logs| LogsTool[tools/service_logs.py]
        Agent -->|Whitelisted Peeks/Publishes| MQTool[tools/rabbitmq_tool.py]
    end

    subgraph Microservice Staging Infrastructure
        MongoTool --> Mongo[(MongoDB Microservices)]
        LogsTool --> Logs[Logs API Server]
        MQTool --> MQ[RabbitMQ Broker]
    end

🌐 Setting Up Chrome DevTools MCP

This project leverages the Model Context Protocol (MCP) to allow AI Coding Agents to control Google Chrome for bug reproduction.

1. MCP Configuration for AI Assistants (Claude Desktop / Cursor / Antigravity / Windsurf)

Add chrome-devtools to your assistant's mcp_config.json (or claude_desktop_config.json):

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": ["-y", "chrome-devtools-mcp@latest"]
    }
  }
}

When your AI Coding Agent initializes, it will automatically spawn Chrome DevTools MCP server, launch Chrome, and gain tools like:

  • navigate_page (Open URL)
  • click_element (Interact with UI)
  • get_console_logs (Extract JS errors)
  • take_screenshot (Visual bug evidence)

2. Manual CLI Launch

Alternatively, you can run Chrome DevTools MCP manually in your terminal:

npx -y chrome-devtools-mcp@latest

🔒 Security & Safety Contracts

To prevent system outages or unintended database mutations during automated triage:

  1. Read-Only Database Enforcement:
    • tools/mongo_db.py blocks write commands (insert, update, delete, drop).
    • If a test scenario requires modifying state, the AI agent is instructed to inform the user and request manual execution in their local client.
  2. RabbitMQ Queue Whitelisting:
    • Publishing is strictly limited to pre-approved queues (e.g. sync_partner_info, sync_partner_metrics). Arbitrary message publishing is rejected by default.
  3. API Rate Limiting & Schema-First:
    • Swagger / OpenAPI specifications are parsed in a read-only manner to prevent spamming live endpoints.

🚀 Quickstart

1. Prerequisites

  • Python 3.9+ installed
  • Node.js 18+ (for running npx chrome-devtools-mcp)
  • Connection to your staging/test environment

2. Installation

# Clone repository
git clone https://github.com/vidsveur-tech/auto-bug-repro-agent.git
cd auto-bug-repro-agent

# Install dependencies
pip install -r requirements.txt

# Copy environment template
cp .env.example .env

3. Usage Examples

Repro Session via AI Agent

Ask your AI Coding Agent:

"Open https://staging.example.com, navigate to the billing tab, click 'Export Invoice', check browser console for JavaScript errors, and verify the billing service logs if a 500 error occurs."

Inspection of MongoDB Service

# List all collections in the billing microservice
python tools/mongo_db.py --service billing --list-collections

# Find top 5 documents in a specific collection
python tools/mongo_db.py --service billing --collection invoices --find --limit 5

Fetching Live Microservice Logs

# Fetch recent logs from partner service
python tools/service_logs.py --service partners_http --lines 50

RabbitMQ Queue Inspection & Trigger

# Inspect active queues and message counts
python tools/rabbitmq_tool.py --inspect

# Publish background sync trigger to whitelisted queue
python tools/rabbitmq_tool.py --publish --queue sync_partner_info --payload '{"partner_id": "10023"}'

📂 Project Structure

.
├── AGENTS.md               # System prompts & safety guidelines for AI agents
├── README.md               # Project documentation
├── config.py               # Central environment loader & service mappings
├── requirements.txt        # Minimal Python dependencies (pymongo, dnspython)
├── .env.example            # Environment variable template
└── tools/
    ├── mongo_db.py         # Read-only MongoDB inspection utility
    ├── service_logs.py      # Microservice container log streamer
    ├── rabbitmq_tool.py    # RabbitMQ queue inspection & trigger utility
    └── auth_code.py        # Authentication OTP / Login helper placeholder

📄 License

Distributed under the MIT License. See LICENSE for more information.

↑↓ navigate openesc close