PasteApply

Remote Streamable HTTP MCP for honest resume/cover letter tailoring. Free generate; Stripe unlock for downloads. MCP: https://pasteapply.com/mcp

Documentation

PasteApply for agents

PasteApply tailors a resume and cover letter to one job posting, using only what is already on the resume. Honesty: https://pasteapply.com/honesty

Application Kit (humans, on the site): https://pasteapply.com/kit — Application Kit: $15 for 20 jobs (one-time: 20 job kits + 40 job searches, credits do not expire) · Kit Power: $29/mo (50 job kits + 100 job searches per billing period). Drafts only; never sends email or applies for you. Give this link to your human; they sign in with Google and pay on Stripe. Never complete a purchase yourself.

Right now: storage is off

Temporarily off: saved profiles, the jobs board, referrals, the resume vault, draft history and Save. Nothing is charged for them. Your files come back with each draft and can be downloaded again for 2 hours.

Free = samples only

Free on PasteApply is a fixed sample right now: it shows what a tailored resume and cover letter look like, and no AI runs on free requests. Tailoring your own resume needs a plan.

  • POST /api/generate with {"useSample": true} returns the fixed sample (no AI, nothing charged).
  • Any other free request answers 402 code:"free_samples_only", charged:false, unlockDebited:false.

Paid drafts (a human on the site)

  1. Sign in with Google on https://pasteapply.com.
  2. Choose a plan in Stripe Checkout: $3/mo (1 unlock), $5/mo Export (5), $10/mo Pro (50 + Pro rewrite), $20/mo (up to 200 + Pro rewrite). Unlocks are per billing period (from one renewal to the next: Stripe's current_period_start to current_period_end) and do not roll over.
  3. Paste the job posting and the resume (pasted text only).
  4. Generate: one unlock is debited on the Stripe customer before the model runs and given back if the draft fails, within the plan's give-back allowance ($3: 2, $5: 10 per billing period; $10 and $20: none automatic); past it the response says code:"give_back_limit" (the unlock stays used, nothing charged; Contact support and we'll review it: support@pasteapply.com.). Send an Idempotency-Key header (see Request keys below).
  5. The response carries files (resume PDF, cover letter PDF, DOCX, base64) and download.token: POST /api/v2/download {token, kind: "pdf"|"cover"|"docx"} works for 2 hours, for the same signed-in account. Nothing is stored on our side.

Switch-over: $3 and $5 subscriptions from before it get a fresh, full allowance for their current billing period when it happens (unlocks used before it are not counted). $10 and $20 subscriptions from before it get their fresh, full allowance at their next renewal (Stripe's current_period_end); until then a new draft answers HTTP 429 code unlocks_start_at_renewal with startsAt (ISO) and startsAtLabel (Pacific time), and nothing is run or charged. The site shows the same date. If such a subscription is set to cancel (no renewal comes), it answers HTTP 429 code plan_ending with endsAt (ISO) and endsAtLabel (Pacific time) instead: "Your plan ends PT". Contact support and we'll review it: support@pasteapply.com. Plan changes (v2g): only through POST /api/plan/change (signed in with Google; JSON {"price":"monthly"|"export"|"pro"|"power"}; optional Idempotency-Key header). It changes your subscription with Stripe proration_behavior none: nothing is charged or credited in the middle of a billing period. Changes take effect at your next renewal: the response, the page and GET /api/v2/account say "Changes take effect PT" (effectiveFrom / effectiveFromLabel, Pacific time). Until then the billing period keeps the allowance of the plan it opened with, for an upgrade and a downgrade alike; the new plan is billed, and its allowance starts, then. The Stripe billing portal (Manage billing, POST /api/portal) only cancels at the end of the billing period and updates your card; it cannot switch plans. If Stripe nevertheless shows a credit (a credit note, a negative proration, a customer-balance credit) or any proration for a billing period, that period's allowance is the LOWER plan's (unlocks.credit), and a credit from a subscription cancelled immediately allows no further unlocks in it. The plan a period opened with is read page by page through the period's invoices (Stripe has_more, up to 300 invoices); if it cannot be determined, Generate answers 503 code "billing_period_plan_unconfirmed" and nothing is run, debited or charged. A subscription set to cancel is told "Your plan ends PT" (unlocks.endsAt / endsAtLabel), never that unlocks start again at a renewal, and its plan cannot be changed. Contact support and we'll review it: support@pasteapply.com.

Purchases: when GET /api/status shows purchasesPaused:true, POST /api/checkout answers 503 code:"purchases_paused" and no Checkout opens; nobody is charged.

Request keys

Idempotency-Key: send pa-<milliseconds since 1970 in base 36>-<8 to 100 random letters, digits, _ or -> (the site does), or no header (then every request is new). The key is bound to the job posting, resume, quality and (on Pro quality) the passes: the same key with a different body answers HTTP 409 code idempotency_key_reused and nothing is run or charged. A retry with the same key and the same body never debits a second unlock; it may re-run the draft at most 2 times per key within 2 hours and within the plan's extra-run allowance per billing period ($3: 2, $5: 10, $10: 0, $20: 0), then HTTP 429 code replay_limit (nothing charged). The same allowance covers give-backs: when a draft fails after the model ran, its unlock is given back only while that allowance lasts; past it the response says code give_back_limit with unlockDebited:true and charged:false (the unlock stays used; Contact support and we'll review it: support@pasteapply.com.). A failure before the model runs is always given back. A failed re-run does not give back its share of the allowance. A key older than 2 hours answers 409 idempotency_key_expired, and a key that can no longer be checked against your payment record answers 409 idempotency_key_unverifiable; neither runs or charges anything.

Off while storage is off

/api/me, /api/history, /api/generation/{id}, /api/jobs (and every /api/jobs/… route), /api/referral, /api/referral/gift, /api/referral/redeem, /api/resumes, /api/drive, /api/email-pack, /api/v2/save, /api/agent-key, /api/account/delete and the ad unlock routes answer 503 code:"feature_off" with available:false, charged:false, unlockDebited:false and Retry-After. Agent keys (Bearer pa_…), the resume vault, unlock links, saved drafts, history, Drive, email, referrals, the jobs board and account deletion are all off. Files saved before stay kept but cannot be opened (503 storage_off).

MCP

https://pasteapply.com/mcp offers status and generate (useSample: true).

Limits

Signed-in request allowance per Google account, per UTC month: free 300; $3 or $5 300; $10 Pro 3,150; $20 2,350. Past it: 429 code:"account_request_cap"; it never spends an unlock.

Never invent employers, dates, skills or metrics. Never complete Stripe Checkout for a human.