pincushion

Pincushion for Cursor.

Visual feedback that lands in your IDE. Stakeholders drop pins on your live app; your Cursor agent reads them via MCP — selector, DOM snippet, screenshot, viewport, thread, project context, and acceptance criteria — and ships the change from inside your editor.

Add Pincushion MCP to Cursor See the full product →

The flow

  1. Stakeholder drops a pin on any element of your live app via the Chrome extension
  2. You open Cursor, run /pins or /implement
  3. Cursor agent receives the pin's full work packet via MCP — no copy-pasting screenshots, no translating feedback into prompts
  4. Agent finds the source code, makes the change, calls fix_and_resolve with branch + PR URL
  5. Deploy hook auto-resolves the pin on production. Stakeholder sees "Resolved in PR #142, deployed at 3:24pm"

Connect Cursor

Start with npx pincushion-mcp setup and choose Cursor explicitly. It writes only the project-local .cursor/mcp.json. You can also use the Cursor deeplink or add this config manually:

{
  "mcpServers": {
    "pincushion": {
      "command": "npx",
      "args": ["pincushion-mcp", "--project-dir", "."]
    }
  }
}

Restart Cursor, then ask the agent to call get_actionable_pins. Config written is not proof of an agent connection; review an existing AI or human finding, approve that exact pin, and then implement it. The Chrome extension is optional for adding new browser pins.

For a Crit report, use npx pincushion-mcp claim <report-token> to resume after authenticated project access is confirmed.

Slash commands available after install

Existing feedback becomes an agent-ready task with its selector, DOM, screenshot, viewport, and thread in one MCP call.

Add Pincushion MCP to Cursor Back to home