Two ways to connect: the skill and the MCP
PassbackAI connects to Claude two ways — a skill and an MCP server. They're peers, not a stack: the skill sharpens how Claude writes a passback document; the MCP carries documents to you and pulls your answers back. Run either one on its own. Run both and you've got the whole loop. Not sure which? The skill makes Claude author better; the MCP removes the copy-paste — most people end up with both. And if you'd rather connect nothing, there's always the floor: paste a draft and go.
The skill — so Claude asks first
The /passback skill teaches Claude the harder half of the job: spotting the open questions buried in a request, knowing when it's worth stopping to ask, and authoring a real document — prose with embedded questions — instead of guessing. It's Claude-specific: it installs into Claude's Skills. And it earns its keep with or without the MCP — it sharpens what Claude writes whether you paste the result or route it.
/passback
Teaches Claude to ask first — weaving an ambiguous request into one document where every open question gets the widget that fits it.
Download the skill .zip- Download the
.zipabove. - In Claude, open the main menu and choose Customize → Skills, then upload it.
- Invoke it inside Claude with
/passback.
Prefer to let Claude install it? If Claude can fetch a URL, paste this in and ask it to install the passback skill:
https://passbackai.com/skills/passback.md
The MCP server — no copy, no paste
Connect PassbackAI as a connector once, and the round-trip stops being something you do by hand. Claude routes a document to you with its route_document tool — it opens at a review link, you mark it up — and reads your notes back with list_responses. The paste-back, minus the paste. And because those tool descriptions already carry the shapes of the interactive pieces, a connected Claude can build a working questionnaire with no skill at all — the MCP is a whole loop on its own.
https://passbackai.com/api/mcp
This is the string you paste into Claude — one URL, every MCP client.
- In Claude, open Settings → Connectors.
- Add a connector and paste the server URL above.
- Authorize it. Adding the URL kicks off sign-in (OAuth); you confirm it's you, and the connection is live.
The server speaks the open Model Context Protocol, so it isn't Claude-only. Connect it from Claude or Claude Desktop, and from other MCP clients like Cursor and Cline — the server URL is the same everywhere. (The skill above is Claude-specific; the MCP is the cross-platform half.)
One thing to be straight about: routing a document is the deliberate, opt-in exception to staying on your device. When Claude routes a doc to you, it's stored on the PassbackAI backend, encrypted with server-managed keys — not end-to-end encrypted, and not local. Nothing routes anywhere until Claude does it on your behalf. The full posture is laid out at /privacy.
Or install nothing at all
You don't have to connect a thing. Copy any draft you're not happy with, paste it into the site, and start marking it up. This path is fully local — your document never leaves your browser: no upload, no account, nothing in the loop. It's the floor, and it's always there. The skill and the MCP just save you the carrying.
Upgrading the skill?
Same three steps — download, upload, invoke. One housekeeping note: if you still have the legacy question-extractor skill installed, remove it so it stops triggering. /passback replaces it.
What's new
- v3.5
allocate(verb: split) joins the palette — divide a fixed whole across categories by weight (percentages/dollars → allocate, 1st/2nd/3rd → prioritize); and the law is now two-sided: a settled decision stays prose (ceiling), an open one always becomes a component with open-question as the floor — never demoted back to prose — so a doc with real open points is never hollow - v3.4The epistemic formula — the scan now maps the decision space (reconstruct the goal, enumerate what it requires deciding, diff against what the text settles) so silently-made decisions surface too; options must partition the plausible answers; every lead-in states the tradeoff and what would change the recommendation; components arrive in blocking order with the hinge decision named; plus a pre-delivery "read it as the reviewer" check, and weave-quality hints returned by route_document
- v3.3Proactive offer — when a conversation itself piles up 3+ unresolved open decisions, the skill offers once (non-pushy) to weave them into one PassbackAI page, instead of only firing on an explicit request; strict-spec frontmatter so it installs on third-party hosts (e.g. Dust)
- v3.2Shortened the SKILL.md description — the old one exceeded the 1024-character limit some install surfaces enforce, blocking upload; no change in behavior
- v3.1Language-agnostic triggers — the skill fires on its trigger intents in any language (Hebrew stays as an example, not the only non-English set); authorship metadata corrected
- v3.0The palette — one primitive per unclear point (single-choice, multi-choice, open-question, prioritize; questionnaire now GROUPS related questions), woven into prose; the REVIEW-vs-ASK question is gone
- v2.3One-click copy — paste output is a single code block; and it asks feedback-only vs feedback-with-clarification-questions when unspecified
- v2.2Use
recommendedmore freely; prefer the default Other - v2.1ASK authors a document, not a form — prose sets up each question before it, one question per embedded fence, and the "why" moves out of the per-question context field into that lead-in prose
- v2.0One skill (
/passback), three jobs — review prose, ask (questionnaire + prioritize), pull answers. Replacesquestion-extractor; sharpened prioritize gate - v1.6MCP delivery (
route_document) — when connected, route the questionnaire as typedblocks[](server-validated, returns a reviewer link) instead of pasting JSON; paste is the fallback - v1.5Recommended option (
recommended) — flag the suggested pick; the app shows a "Recommended" badge without pre-selecting it - v1.4Output hardening — emit the JSON in a fenced code block with straight quotes, and self-validate the exact key names (
question, notq) before sending - v1.3Free-text questions (
open_field+ emptyoptions) — ask an open question with no preset choices - v1.2Multi-select questions (set
multi: true) — checkboxes + bullet-list export - v1.1Sections, routing, default Other field with edit-into-Other gesture