Releases: itk-dev/mcp-claude-code-browser-feedback
v0.4.3
What's Changed
Improvements
- Smarter widget visibility check: When installing the widget, now uses the detected project URL's hostname for an exact match check instead of always using regex-based pattern matching
- If URL is detected (e.g.,
APP_URLfrom.env): uses simple exact match likeh === 'app.local.itkdev.dk' - If no URL detected: falls back to regex pattern matching with
allowed_hostnames - Provides simpler, more precise hostname checks with less overhead
- If URL is detected (e.g.,
Fixes
- Updated button description in install messages from "🎯 Report Issue" to "Add annotation" to match the actual button text
Full Changelog: v0.4.2...v0.4.3
v0.4.2
Bug Fixes
- Fixed wildcard pattern matching for multi-segment hostnames (#12)
- The wildcard
*in hostname patterns now correctly matches any characters including dots - Previously
*.local.*wouldn't match hostnames likedeltag.local.itkdev.dk - Patterns like
*.local.*now properly match any domain with.local.in it
- The wildcard
v0.4.1
v0.4.0
What's New
View Pending Annotations
Users can now see annotations that have been submitted but not yet read by Claude Code, from both the browser widget and via MCP tools.
Widget Features:
- Pending count badge on main button (red circle showing number of items)
- Collapsible queue panel showing pending items with:
- Element selector
- Description preview
- Relative timestamp (e.g., "2m ago")
- Delete individual pending items directly from widget
- Real-time updates via WebSocket when feedback is added/removed/cleared
New MCP Tools:
preview_pending_feedback- View pending feedback without clearing the queuedelete_pending_feedback- Remove specific feedback items by ID
New HTTP Endpoints:
GET /pending-summary- Lightweight status polling for widgetDELETE /feedback/:id- Remove specific items
Full Changelog: v0.3.1...v0.4.0
v0.3.1
Fixed
- Fix hostname wildcard pattern conversion to valid regex (e.g.,
*.local.*now correctly matchesapp.local.itkdev.dk) - Fix multi-instance connection issues when multiple Claude Code sessions are running - MCP tools now proxy requests via HTTP to the running server instance
Added
- Add CLAUDE.md with project documentation
Full Changelog: v0.3.0...v0.3.1
v0.3.0
What's New
New Features
Custom Development Hostnames (#7)
The install_widget tool now supports an allowed_hostnames parameter for custom local development domains beyond just localhost and 127.0.0.1.
Default patterns now include:
localhost,127.0.0.1*.local,*.local.*(e.g.,app.local.itkdev.dk)*.test,*.dev*.ddev.site
Example usage:
install_widget({
file_path: "public/index.html",
allowed_hostnames: ["myapp.local.itkdev.dk", "*.ddev.site"]
})Open in Browser Tool (#6)
New open_in_browser tool that automatically detects your project URL from common configuration files and opens it in your default browser.
Supported sources:
.env/.env.local(APP_URL, BASE_URL, VIRTUAL_HOST, etc.)docker-compose.yml(VIRTUAL_HOST, traefik labels)package.json(homepage, proxy)
Bug Fixes
Multiple Feedback Submissions (#8)
Fixed an issue where the widget could only submit feedback once per page load. This was particularly problematic on Drupal sites.
Changes:
- Fixed DOM manipulation that was destroying checkbox elements
- Added error handling around WebSocket operations
- Added automatic reconnection when connection is lost
- Added error toast UI for better user feedback
Closes #3 (both issues now resolved)
v0.2.0
Added
- Keyboard shortcuts for faster workflow
Cmd/Ctrl+Enterto send feedback from description textareaShift+Cglobal shortcut to open annotation mode (when not in input fields)
- Visual shortcut hints on buttons (platform-aware: shows ⌘↵ on Mac, Ctrl+↵ on Windows/Linux)
- Shortcut hint on main button only shows when connected to server
v0.1.0 - Initial Release
Browser Feedback MCP for Claude Code
Initial release of the Browser Feedback MCP server that enables visual browser feedback collection directly into Claude Code.
Features
- MCP Server - Integrates with Claude Code via stdio transport
- Browser Widget - Inject a feedback widget into any web app
- Element Selection - Click on any element to report it
- Screenshot Capture - Automatic viewport capture (enhanced with html2canvas)
- Console Log Capture - Includes recent logs, warnings, and errors
- Multi-feedback Mode - Submit multiple annotations in one session
MCP Tools
| Tool | Description |
|---|---|
install_widget |
Auto-inject widget into HTML files |
uninstall_widget |
Remove widget from HTML files |
wait_for_browser_feedback |
Block until user submits feedback |
wait_for_multiple_feedback |
Collect multiple annotations |
get_pending_feedback |
Get submitted feedback without blocking |
get_connection_status |
Check WebSocket connections |
request_annotation |
Prompt user to annotate something |
get_widget_snippet |
Get manual installation snippet |
Installation
npm install
claude mcp add --scope user browser-feedback node /path/to/src/server.jsSee README.md for full documentation.