mcp server
bug-reproduce-agent
Autonomous AI agent for reproducing Chrome bugs, analyzing logs, querying DB, and handling RabbitMQ message flows with sanitized data.
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, 2026Bug Reproduce Agent 🚀
🤖 Autonomous bug reproduction & triage suite with multi-microservice log correlation, read-only DB inspection, and RabbitMQ triggers for AI Coding Agents.
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:
- Read-Only Database Enforcement:
tools/mongo_db.pyblocks 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.
- 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.
- Publishing is strictly limited to pre-approved queues (e.g.
- 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.