Feedback your AI agent can actually fix.
Drop one script tag on your site. Users report bugs with annotated screenshots and screen recordings — and your coding agent reads, triages, and fixes them over MCP. You review the PR.
One script tag · < 30KB widget · 7-day trial · 26 MCP tools
The widget on this page is the product. Try it →
28.5KB
widget, gzipped — measured, not rounded
26
MCP tools your agent can call
6
platforms: Web, React, iOS, Android, Flutter, MCP
The loop
User to agent to fixed, in three steps
Embed
One script tag. Shadow DOM isolation means it can't break your styles and your styles can't break it.
Collect
Users annotate screenshots, record their screen, or file feature requests. Console-free bug reports with URL, browser, and metadata attached automatically.
Fix — with your agent
Run claude and say “check my feedback.” Your agent lists open reports, looks at the screenshot, reproduces the bug, ships the fix, and posts a fix note that emails the reporter. You never left the terminal.
Live demo
Don’t watch a video. File a bug right now.
The widget in the bottom-right corner of this page is the real product. Click it, drag a box around anything below, draw an arrow, and submit — then look at what your agent would see.
What your user sees
Your checkout page
A simulated page so the screenshot tool has something to capture. Try the feedback button in the corner — circle this text, draw an arrow, submit.
What your agent sees
{
"reference": "FB-42",
"type": "bug_report",
"severity": "high",
"status": "new",
"title": "Checkout button overlaps
the cart total on my phone",
"page_url": "https://yoursite.com/checkout",
"device": {
"type": "mobile",
"viewport": "393x852",
"user_agent": "Safari iOS 18"
},
"attachments": [{
"kind": "screenshot",
"annotated": true,
"thumbnail": "…768px token-efficient JPEG"
}],
"captured_js_errors": [
"TypeError: Cannot read properties
of undefined (reading 'total')"
]
}Illustrative response — annotated screenshots ship as 768px thumbnails so vision models read them cheaply.
Everything captured
Bug reports that arrive ready to fix
Screenshot capture and annotation
Users drag a box around the problem or capture the full page, then mark it up with pen, rectangle, arrow, and text tools in six colors — with undo. Cross-origin images are proxied server-side so screenshots never come out blank.
FB-42 · screenshot-annotated.png
URL, viewport, device, and the last 10 JS errors attached automatically.
Screen recording → AI-readable GIF
Screen recordings, auto-converted to GIF — so multimodal agents can literally watch the bug happen. Countdown, PiP timer, preview before submit.
Feature requests with public voting
Requests flow into a public roadmap where users vote and comment. Your agent runs demand analysis to see what’s trending before you plan the sprint.
Mobile crashes and session replays
iOS, Android, and Flutter SDKs with shake-to-report, fingerprint-grouped crash reports, and privacy-masked session replays linked to each crash.
Two-way GitHub forwarding
Forward feedback to GitHub issues with per-type labels. Resolving the feedback closes the issue — and closing the issue resolves the feedback.
Shadow DOM isolation, under 30KB
Vanilla JS in a closed Shadow DOM — immune to your CSS, invisible to your bundle. 28.5KB gzipped, loaded lazily, removed cleanly.
MCP server
Your users file the bug. Your agent closes it.
26 MCP tools over remote OAuth — no server to host, no API keys to paste. Feedback, feature-request demand analysis, crash reports, session replays, and GitHub forwarding, all readable and writable by Claude Code, Cursor, or any MCP client.
$ claude mcp add --transport http mcpfeedback https://mcpfeedback.com/api/mcpEmbedded support portal
Grow the widget into a support portal inside your product
Signed-in customers get request history, threaded replies, and reopen — no separate helpdesk to build, no second login for your users.
- Automatically identify signed-in customers — no email field, no duplicate accounts
- Every customer gets a private history of requests, replies, and resolutions
- Org admins see organization-wide requests without crossing tenant boundaries
- Embeds in any SaaS product with JavaScript or React
Support & feedback
Your requests
Invoice export fails
In progressREQ-1042 · updated 12 min ago
Add custom booking hours
ResolvedREQ-1031 · 3 replies · verified request
Dark mode for the dashboard
ReopenedREQ-1018 · reopened by customer
Pricing
$9.99per site / month
Everything included. Unlimited team members. Add a site, pay for a site — that’s the whole model.
See pricingWill the widget slow my site down?
No. It's a single 28.5KB gzipped JavaScript file with zero dependencies, loaded lazily after your page. It renders inside a closed Shadow DOM, so it can't touch your styles or your bundle.
What does my AI agent actually get?
Your agent connects over MCP (remote OAuth, no keys to paste) and gets 26 tools: it can list and read feedback with annotated screenshots as token-efficient thumbnails, watch screen recordings as GIFs, read crash reports and session replays, update statuses, forward issues to GitHub, analyze feature-request demand, and post fix notes that email the reporter.
Do I need a credit card to try it?
No. The trial is 7 days, account-level, and requires no card. Your widget keeps collecting through a grace period even if the trial lapses, and your data is kept if you don't convert.
What counts as a site?
A site is one registered domain with its own widget key. Pricing is per site, not per seat — your whole team, including contractors, is included at no extra cost.
Is there a submission limit?
Each site includes a fair-use limit of 1000 feedback submissions per month. That's a lot of bug reports for a typical site — and if you're regularly hitting it, talk to us.
What happens to my users' data?
Screenshots and recordings are stored privately with access controlled per organization. The widget validates its origin against your registered domain, uploads are scoped by short-lived tokens, and mobile SDKs ship privacy masking with mask-all as the default tier.
Ship the fix before the standup.
Free for 7 days. No credit card. Widget live in five minutes.