Using Cursor and Claude Code with a product management system
AI coding tools are fast. The quality of output is proportional to the quality of context. Here's how to connect customer feedback to your editor via MCP.
Cursor and Claude Code changed what's possible for a small team. A solo founder can ship what used to require three engineers. A two-person team can maintain a codebase that would have needed a full engineering org.
The constraint shifted. Building got fast. Deciding what to build didn't.
If you're using Cursor or Claude Code, you've probably noticed the pattern: the AI can build almost anything you describe well. The quality of the output is proportional to the quality of the context you provide. A vague prompt produces a vague result. A precise spec produces working code.
The gap most teams are living in: customer feedback arrives scattered across Slack, support threads, sales calls and a widget on the site. Someone (usually the founder, sometimes the PM) reads through it, forms a mental model, and writes a prompt or a spec. That synthesis step is manual, slow and doesn't scale with the speed of the AI.
The fix is connecting customer feedback to your editor through a product management system that speaks the same protocol as Cursor and Claude Code.
How the Model Context Protocol changes this
The Model Context Protocol (MCP) lets external services expose data and actions as tools that Cursor and Claude Code can use natively. Instead of copying and pasting context into a chat window, the AI pulls what it needs from the MCP server.
For product management, this means: instead of switching tabs to find what to build, you ask Cursor or Claude Code directly. It fetches the priorities. It pulls the spec. It knows which files are relevant and how your team typically builds. You start coding.
The MCP tools that matter for product management:
- Get priorities — What matters most right now, scored by revenue and urgency, not by recency or who argued loudest in the last meeting.
- Get a spec — The full build brief for a priority, with file paths from the codebase, customer voice, done criteria, and any relevant context from previous ships.
- Search feedback — Ask about a specific theme ("what are customers saying about CSV export?") and get a synthesised answer across all your feedback.
- Mark as shipped — Close the loop from the terminal. Customers get notified with their original feedback quoted back.
What this looks like in practice
Say a customer submits feedback via the widget on your app: "I keep having to re-enter my payment details every time I switch between projects."
That feedback hits Circuit. It's classified automatically (bug, high urgency, payments theme). It's grouped with 14 similar complaints from other customers. The theme scores high on urgency and negative sentiment. Revenue weighting bumps it further because three of the customers reporting it are on the enterprise plan.
By the time the founder opens Cursor the next morning, circuit.priorities returns "Payment details not persisting across project switches" as priority #1. circuit.spec returns the full spec: what to build, why it matters, the 15 customer quotes that support it, the relevant files in the codebase (with real paths from GitHub), the done criteria, and a note that similar work was shipped in Q4 touching src/billing/session.ts.
The founder prompts Cursor: "Let's work on the top priority. Pull the spec via MCP and let's start."
Cursor pulls the spec. The session has context. The build begins.
Setting up Circuit MCP with Cursor
Run once in your terminal:
npx circuit-mcp setup
Restart Cursor. The first time a Circuit tool runs, a browser window opens for OAuth — sign in and you're done. No API key needed.
For Claude Code, run once from the terminal:
claude mcp add circuit -- npx circuit-mcp
Same OAuth flow on first use.
What you need to have in place first
The MCP integration is only as good as the signal feeding it. For circuit.priorities to return something useful, feedback needs to be flowing into Circuit.
The fastest setup:
- Install the Circuit Surface widget on your app or marketing site (one line of code)
- Connect your Slack workspace and select the channels where customers leave feedback
- Import historical feedback via CSV or Google Sheets
Circuit classifies and scores as feedback arrives. Most teams have a useful ranked priority list within an hour of connecting their first source.
Connect GitHub and specs start referencing real file paths. Without GitHub, specs are still generated — they just don't include the codebase context.
The loop that closes itself
The part that compounds: when you mark a priority as shipped via circuit.act, Circuit emails every customer who submitted related feedback, with their original words quoted back. They find out their request was heard. Some of them reply with more feedback. That feedback hits the pipeline. Priorities update. Specs regenerate.
The cycle runs without manual coordination. Customer signal drives build decisions. Build decisions drive customer communication. Customer communication drives more signal.
At AI coding speed, this loop can run faster than most teams have experienced. The bottleneck isn't building — it's making sure the next thing to build is the right thing.
That's what connecting customer feedback to Cursor and Claude Code actually solves.
Circuit (withcircuit.com) is the MCP-enabled product system for teams using Cursor and Claude Code. Install circuit-mcp from npm. Start free.
Circuit turns customer feedback into ranked priorities and build-ready specs.
Get started free