Zero to loop in five minutes.
Everything below is copy-paste ready. By the end you'll have a widget on your app, a public roadmap, an AI agent wired in, and a changelog that announces itself.
Quickstart
The whole loop is five steps. Sign up, add one script tag, publish your roadmap, point your agent at MCP, and let the changelog write itself.
1. Create a project
Sign up and create a project from the dashboard. Give it a name and a slug — the slug identifies the project across the widget, public pages and API.
2. Embed the feedback widget
Add one tag before </body>. That's the install — grab your project ID from Settings → Embed in the dashboard.
<!-- Add before </body> --> <script src="https://api.usedamper.com/widget.js" data-project-id="YOUR_PROJECT_ID"></script>
| Attribute | Default | Description |
|---|---|---|
data-project-id | — | Your project ID — required. Finds your widget config and routes submissions. |
data-server-url | — | Override the API base URL (for self-hosting or custom domains). |
Identify signed-in users
Pass the signed-in user to the widget with an HMAC signature and their plan — votes arrive pre-weighted, and the widget can be limited to identified users only.
// after your user logs in Damper.identify({ userId: "user_123", // required email: "[email protected]", // optional, for notifications plan: "pro", // optional, drives vote weight tier: 50, // optional, priority 1-99 userHash: "hmac-signature" // optional, verified identity });
Plan and tier set vote weight, so with identity verification on they count only when the hash covers them. Sign userId|plan|tier (for example user_123|pro|50; leave a missing value empty, as in user_123|pro|) instead of the user ID alone. A hash over the user ID alone still identifies the user, but the plan and tier sent with it are ignored and the stored ones stay. Without identity verification, plan and tier are used as sent.
JavaScript API
Everything is also controllable from code: Damper.open(), Damper.close(), Damper.isOpen(), Damper.isIdentified() and Damper.identify() — for opening the widget after an upsell prompt or submitting feedback from your own UI.
3. Publish your roadmap
Create roadmap items from feedback in your inbox — or from scratch. Add them to a board, mark them public, and share the link. Voters pick items, leave their email, and their votes hit your demand score.
Your project also gets a public feedback board and changelog alongside the roadmap — each with its own toggle, styling and subscribers.
4. Connect your AI agent
Damper ships a hosted MCP server — any MCP client can work your roadmap. Add it to Claude Code's .mcp.json:
{
"mcpServers": {
"damper": {
"type": "http",
"url": "https://api.usedamper.com/mcp",
"headers": {
"Authorization": "Bearer dmp_..."
}
}
}
}
Create the key under Settings → API Keys. The recommended agent loop: get_project_context → list_tasks → start_task → work → complete_task.
Reviewing what the agent built
When an agent finishes a task it can attach API examples and screenshots as evidence, and the task moves to review. Open the task in the dashboard, check each example or screenshot, and approve it or request changes with a comment. The agent reads your comments back and redoes what you flagged. Your verdicts are feedback only; they don't block the task from completing. Each project can set whether this evidence is off, suggested or required.
Review artifacts in the MCP reference → · Working with agents →
5. Automate the changelog
When a public task is marked done, Damper adds it to a draft changelog entry. Publishing a release emails your subscribers. Posting to X is optional. People who asked for a feature get a 'shipped' email when it's in a release.
Integrations
- Slack — install the Damper app to your workspace and use the message shortcut to turn any thread into feedback.
- X / Twitter — Posting to X is optional.
- Plan tiers drive vote weighting: pass each customer's plan in the widget identify call and their votes count accordingly.
- Email — voters and submitters get notified when what they asked for ships.
OAuth 2.0 Provider
Create OAuth applications to let external services submit and read feedback from your Damper project. Supports the authorization code flow with optional PKCE.
With an access token that has the feedback:write scope, submit feedback via POST /api/external/feedback. Include visitor.userId (or visitor.externalId) and optionally metadata.language to select the submitter's notification language.
{
"metadata": {
"language": "sl-SI"
}
}
Notification language — Set metadata.language to en, sl, or hr, or use a supported BCP 47 tag such as sl-SI. The value is stored per project visitor and controls that visitor's future feedback updates. Unsupported or missing values leave an existing preference unchanged; when no supported visitor preference exists, rendering falls back to the project's locale and then English. Feedback and reply content is not translated automatically.
The same optional metadata.language field is accepted when voting through POST /api/external/feedback/{feedbackId}/vote. It updates only that project's visitor preference.
Reference
Deep dives for builders:
- MCP reference — all 100+ tools, auth and the workflow. — all 100+ tools, auth and the workflow.
- AI execution — how agents work your roadmap. — how agents work your roadmap.
- Weighted voting — how demand scores are calculated. — how demand scores are calculated.
- Pages — notes, meetings and database pages with live relations. — notes, meetings and database pages with live relations.
- Status pages — monitors, incidents and subscriber emails. — monitors, incidents and subscriber emails.
- Error logs — ingest production errors by API. — ingest production errors by API.
- Widget — identity, attachments and the JS API. — identity, attachments and the JS API.
- Context graph — typed context for coding agents. — typed context for coding agents.
- Status pages — monitors, incidents and subscriber emails.
- Error logs — ingest production errors by API.
- Widget — identity, attachments and the JS API.
- Context graph — typed context for coding agents.
That's the whole install.
Five minutes from now, your users can start steering the roadmap.