Client proposals that feel like product sites — not PDF decks.
Capture a brand kit once. Connect Claude or Cursor over MCP. Agents generate cinematic multi-page proposal websites, hosted full-screen for the client. Acceptance is a light sign-off inside the site — not a legal contract, not an iframe shell.
Brand packs · multi-page proposal skill · full-site host · in-site accept · optional Vercel publish
A private multi-page site — Overview through Next steps.
Editorial type, glass nav, brand tokens, real deal copy. Hosted full-screen at a shareable /p/{token}/ URL. CSS, pages, and navigation work like any production site.
- 01OverviewThesis, stakes, and what this engagement is for
- 02UnderstandingProblem space, current state, why now
- 03SolutionApproach, scope, what actually ships
- 04TimelinePhases with concrete milestones
Next steps includes business CTA (pay or book) and “Accept this proposal” → a light form. Not a contract. Content never rewritten.
next-steps.html
href="__PTB_ACCEPT__"
→ /accept/{token} at serve time
Primary
#2563EB
Secondary
#0F172A
Accent
#22C55E
Background
#F8FAFC
Text
#0F172A
Muted
#64748B
Brand kit tokens drive the site — never generic AI defaults.
High-end private proposals — editorial product sites, not decks.
Our generation skill is built for agencies who already ship Manus-class work: numbered stages, specific copy (names, numbers, outcomes), full design system, multi-page navigation. Unstyled HTML and single-scroll dumps are a hard fail.
Multi-page by design
Separate pages for Overview, Understanding, Solution, Timeline, Investment, and Next steps — not one endless scroll. Shared nav and styles across every stage.
Strategist-grade copy
Named client and product. Concrete problems and deliverables. Explicit inclusions and exclusions. Ban vague filler and stock purple gradients.
Full-site host
Clients open a real URL and browse the proposal like a product site. Acceptance is a CTA on Next steps — not a dashboard wrapper around an iframe.
Stage map
Six pages. One brand system. One share link.
Agents submit a static file map — index.html, styles.css, and each stage page — via MCP. Proposal OS hosts it; optional Vercel publish for a custom domain.
- 01OverviewThesis, stakes, and what this engagement is for
- 02UnderstandingProblem space, current state, why now
- 03SolutionApproach, scope, what actually ships
- 04TimelinePhases with concrete milestones
- 05InvestmentPricing, inclusions, exclusions
- 06Next stepsPay or book — plus Accept as an in-site CTA
Light acceptance only
Sign-off records who accepted and when. It is not a legal contract and does not replace a signed agreement when one is required. Proposal HTML is never rewritten.
Brand-first generation
Agents must load brand tools before designing — colors, voice, logo data URLs. Inventing tokens when the kit has values is out of bounds.
From brand kit to client-ready site
One operating loop for agencies: capture identity, connect an agent, generate the proposal site, share the URL, collect light acceptance.
Brand kit
Scrape a site or upload logo and tokens. Colors, type, voice, embedded logo assets.
MCP key
Issue a kit-scoped key. Claude, Cursor, or any MCP client pulls brand + skill tools.
Generate site
Agent runs the proposal skill: multi-page static HTML/CSS/JS on brand, full quality bar.
Share & accept
Send siteUrl. Client browses full-screen. Accept lives on Next steps as an in-site link.
Scrape or upload the brand
URL extract for colors, fonts, and logo — or hand-tune every token. Logos are optimized and served for agents as embeddable data URLs.
Optional Vercel publish
After acceptance — or whenever you want — deploy the same static map to a default *.vercel.app URL and attach a client custom domain.
Built for agents — brand tools plus a proposal OS
One remote MCP key exposes brand packs and the full proposal loop: skill, submit static files, share the full site, collect light acceptance, optionally publish.
- Brand: overview, colors, voice, logo embeds, system prompt
- Skill: get_proposal_workflow + get_proposal_skill (quality bar included)
- submit → siteUrl (/p/…) · accept CTA via __PTB_ACCEPT__
- Acceptance record only — content immutable, not a legal contract
Claude / Cursor config
{
"mcpServers": {
"proposal-os": {
"url": "https://your-app/api/mcp/ptb_live_…"
}
}
}Operator checklist
get_brand_* → get_proposal_skill generate multi-page static files submit_proposal_for_acceptance share siteUrl with client accept lives on next-steps
Brand once. Propose like a product team.
Stop re-pasting guidelines and shipping generic decks. Log in, add your brand, connect MCP, and let agents ship multi-page proposal sites your clients can open full-screen.
Start with your brand