FeedbackJar

MCP Server

FeedbackJar exposes a Model Context Protocol (MCP) endpoint so AI coding agents like Claude Code and Cursor can read feedback, update statuses, and reply to posts — directly from your editor.

How it works

  1. A user reports a bug through the widget (with browser info, page URL, and console errors already attached)
  2. Your coding agent reads the top-voted issues via the FeedbackJar MCP server
  3. It fixes the bug, marks the post as Completed, and replies with a note
  4. Every voter gets an email notification automatically

Setup

1. Create an API key

Two options:

  • Workspace key (fj_live_) — go to Settings → API keys in your workspace. Scoped to that workspace only. Best when you only work in one project.
  • Account key (fj_user_) — go to Account → API Keys. Works across all your workspaces. Best when one agent config should access multiple projects.

See the API Keys guide for details.

2. Add to your agent config

Pick your coding agent for a copy-paste setup guide:

Or use the generic config below if your agent isn’t listed. See all guides at /mcp.

Claude Code — add to .mcp.json in your project root or your global MCP config.

Cursor — add to .cursor/mcp.json using the same format.

Token in URL (alternative)

If your client cannot set request headers, pass the API key as a query parameter on the MCP URL:

json
{
  "mcpServers": {
    "feedbackjar": {
      "type": "http",
      "url": "https://api.feedbackjar.com/mcp?token=fj_live_..."
    }
  }
}

The Authorization header is preferred when supported — URL tokens may appear in proxy logs and shell history. Only the initial connection needs the token; follow-up requests use the session ID.

Workspace key

The key is already scoped to one workspace — no extra headers needed:

json
{
  "mcpServers": {
    "feedbackjar": {
      "type": "http",
      "url": "https://api.feedbackjar.com/mcp",
      "headers": {
        "Authorization": "Bearer fj_live_..."
      }
    }
  }
}

Use a single account key across all your workspaces. The agent calls list_organizations first, then passes organization_id to other tools:

json
{
  "mcpServers": {
    "feedbackjar": {
      "type": "http",
      "url": "https://api.feedbackjar.com/mcp",
      "headers": {
        "Authorization": "Bearer fj_user_..."
      }
    }
  }
}

Account key — single workspace

Pin the key to one workspace by adding X-Organization-Id. Tools behave like a workspace key (no organization_id param needed):

json
{
  "mcpServers": {
    "feedbackjar": {
      "type": "http",
      "url": "https://api.feedbackjar.com/mcp",
      "headers": {
        "Authorization": "Bearer fj_user_...",
        "X-Organization-Id": "cln1abc..."
      }
    }
  }
}

3. Use it

Once connected, ask your agent:

plaintext
What are the top open bugs in FeedbackJar?
plaintext
Fix the top-voted bug and mark it as completed.
plaintext
Reply to post cm1abc123 with "Fixed in v2.4.0".

Available tools

Tools depend on your key type and permissions. Workspace keys get full access to their workspace. Account keys only register tools matching the permissions you selected when creating the key.

ToolDescriptionAccount key (multi-workspace)
list_organizationsList workspaces your key can accessAlways available
list_postsList feedback posts, sorted by votes. Filter by status, type, or board.Requires organization_id
get_postGet a single post with full widget metadata (browser, OS, page URL, console errors).Requires organization_id
search_postsSearch posts by keyword in title and content.Requires organization_id
update_statusUpdate a post’s status: OPEN, IN_PROGRESS, COMPLETED, CLOSED.Requires organization_id
update_postUpdate a post’s type, status, title, content, visibility, or board.Requires organization_id
reply_to_postAdd a comment to a post.Requires organization_id
create_postCreate a new feedback post.Requires organization_id
merge_postsMerge a duplicate post into a target post. Votes transfer to the target.Requires organization_id
list_boardsList all boards in the workspace.Requires organization_id
list_tagsList all tags in the workspace.Requires organization_id

With an account key pinned to a single workspace via X-Organization-Id, the organization_id column does not apply — tools work the same as with a workspace key.

A read-only account key (posts:read, boards:read, tags:read) will only show read tools — write tools like update_status, update_post, and create_post won’t appear.

See the MCP Tool Reference for parameters, example prompts, and return values for each tool.