birdeatsbug-mcp-server
v0.1.2
Published
MCP server for BirdeatsBug — extracts console logs, network logs, and video frames from bug reports for AI-powered root-cause analysis
Maintainers
Readme
birdeatsbug-mcp-server
An MCP (Model Context Protocol) server that connects AI assistants to BirdeatsBug bug reports — extracting console logs, network logs, and video frames for deep, AI-powered root-cause analysis.
What it does
- Launches headless Chromium, navigates to a BirdeatsBug report URL, and intercepts all runtime API responses
- Extracts structured console logs, network requests, and video recording URLs
- Downloads the bug recording and extracts JPEG video frames for visual AI analysis
- Merges errors and network failures into a chronological event timeline
- Auto-detects the likely bug moment and clusters frames around it
Tools
| Tool | Description |
|---|---|
| inspect_birdeatsbug_report | Metadata, access state, artifact counts |
| get_birdeatsbug_console_logs | Console entries (level, message, timestamp) |
| get_birdeatsbug_network_logs | Network requests (method, URL, status, duration) |
| get_birdeatsbug_video_frames | JPEG frames extracted from the bug recording for vision AI |
| generate_birdeatsbug_report | All-in-one: title, description, timeline, errors, failures, and video frames |
Installation
Option A — npx (no install needed)
npx birdeatsbug-mcp-serverOption B — global install
npm install -g birdeatsbug-mcp-server
birdeatsbug-mcp-serverNote: On first run, the postinstall script installs the Chromium browser (~200 MB). This only happens once.
VS Code (GitHub Copilot / Continue)
Add to your global MCP config at ~/Library/Application Support/Code/User/mcp.json (macOS):
{
"servers": {
"birdeatsbug": {
"type": "stdio",
"command": "npx",
"args": ["-y", "birdeatsbug-mcp-server"]
}
}
}Or add to a workspace's .vscode/mcp.json:
{
"servers": {
"birdeatsbug": {
"type": "stdio",
"command": "npx",
"args": ["-y", "birdeatsbug-mcp-server"]
}
}
}Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"birdeatsbug": {
"command": "npx",
"args": ["-y", "birdeatsbug-mcp-server"]
}
}
}Restart Claude Desktop after saving.
Usage
Each tool accepts a url pointing to any app.birdeatsbug.com/... report URL.
Quick start — full analysis:
"Use generate_birdeatsbug_report on https://app.birdeatsbug.com/sessions/YOUR_SESSION_ID"
Video frame analysis with focus on a specific moment:
"Use get_birdeatsbug_video_frames on https://app.birdeatsbug.com/sessions/YOUR_SESSION_ID with focusTimeSec 8"
generate_birdeatsbug_report parameters
| Parameter | Default | Description |
|---|---|---|
| url | required | BirdeatsBug report URL |
| frameCount | 16 | Number of video frames to extract (max 30) |
| focusTimeSec | auto | Timestamp (seconds) to cluster frames around. Auto-detected from first error if omitted |
| focusWindowSec | 4 | Window width (seconds) around the focus timestamp |
| logLimit | 100 | Max console/network log entries to include |
Private sessions
Most sessions require login. To access private reports, generate a Playwright storage state with your logged-in cookies and pass it via environment variable:
BIRDEATSBUG_STORAGE_STATE=/path/to/storageState.json npx birdeatsbug-mcp-serverOr in your MCP config:
{
"servers": {
"birdeatsbug": {
"type": "stdio",
"command": "npx",
"args": ["-y", "birdeatsbug-mcp-server"],
"env": {
"BIRDEATSBUG_STORAGE_STATE": "/path/to/storageState.json"
}
}
}
}Requirements
- Node.js >= 18
- Chromium (installed automatically via
playwright install chromium) - ffmpeg (bundled via
ffmpeg-static— no system install needed)
License
MIT
