MCP server

FeedbackFlow ships a remote MCP server, so you can query your project's feedback from Claude, Cursor, or any other MCP client instead of opening the dashboard.

It is read-only. Nothing an MCP client does can change or delete your feedback.

Connect a client

Add this to your client's MCP configuration, replacing YOUR_API_KEY with your project API key (the integrations page in your dashboard shows the same snippet with the key already filled in):

{
  "mcpServers": {
    "feedbackflow": {
      "type": "http",
      "url": "https://usefeedbackflow.com/api/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

The key identifies the project, so there is no project id to configure. One key gives access to exactly one project's feedback.

If your client only supports local (stdio) MCP servers, bridge to it with mcp-remote:

{
  "mcpServers": {
    "feedbackflow": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://usefeedbackflow.com/api/mcp", "--header", "Authorization: Bearer YOUR_API_KEY"]
    }
  }
}

Tools

list_topics

No arguments. Returns every topic in the project with its priority (P1 to P3), average sentiment, and how many feedback items it holds. Start here when you need exact topic names for search_feedback.

search_feedback

Returns individual feedback items. All arguments are optional:

  • topicNames: topic names copied exactly from list_topics
  • sentiment: positive, neutral, or negative
  • urgency: low, med, or high
  • source: widget, slack, intercom, or zendesk
  • since and until: dates as YYYY-MM-DD, both ends inclusive, so until covers the whole day you name
  • keywords: words to match against the message text
  • limit and offset: paging, up to 50 items per call

Items marked as duplicates are excluded, so counts reflect distinct reports.

If you pass topicNames and none of them match a topic in the project, the tool returns an error listing the valid names rather than quietly searching every topic.

Arguments: granularity (day or week, default week) and windows (how many buckets to look back, default 12, minimum 3, maximum 52).

Returns detected signals (volume spikes, newly emerging topics, sentiment drops) plus each topic's total volume and average sentiment over the window. This is a paid feature: on the Free plan the tool returns a message telling you to upgrade.

ask_feedback

Argument: question. Returns a synthesized answer with the feedback items it cited, the same engine behind Ask in the dashboard. Use it when you want a summary across many items rather than the raw items.

This tool calls an LLM on our side, so it is limited to 20 calls per hour per project. Over the limit it returns a message telling you when to retry. The other three tools are not rate limited.

Security

Your project API key is a credential. Anyone holding it can read all of that project's feedback through this endpoint, so keep it out of shared configs and public repositories. If it leaks, regenerate it on the integrations page; the old key stops working immediately.

See API key security for how keys are stored.