Everything you need to upload, share, and manage your pitch decks on Pitcheon.
Sign up at pitcheon.co/signupwith GitHub, Google, or email. You'll be taken straight to your dashboard.
Your deck should be an HTML/CSS project. Make sure it has an index.html file at the root.
# Your deck folder structure
my-pitch/
index.html
styles.css
script.js
images/
logo.png
chart.svg
Zip the folder and you're ready to upload. Max file size is 50 MB.
Option A — Dashboard: Click Upload New Deck, enter a title, choose a URL slug (e.g. my-startup), and drag-and-drop your HTML or zip file.
Option B — CLI: Deploy from your terminal in one command.
$ pitcheon login $ pitcheon deploy ./deck.html --name "Series A" --slug series-a --invite anna@vc.com
Your deck will be live at pitcheon.co/series-a.
Deploy decks straight from your terminal. Install and authenticate in seconds.
Authenticate via browser with GitHub or Google:
$ pitcheon login
Upload an HTML file, zip, or directory:
$ pitcheon deploy ./deck.html --name "Series A" --slug series-a $ pitcheon deploy ./my-pitch/ --name "Product Demo" --slug demo --invite a@vc.com,b@fund.io
pitcheon whoami — Show current logged-in userpitcheon logout — Clear stored credentialsBy default, your deck is access-controlled. Only people whose email addresses you've added to the access list can view it. When an investor visits your deck URL, they enter their email and receive a 6-digit code. Once verified, they can view the deck for 24 hours.
Go to Dashboard → Your Deck → Access List. Type an email address and click Add. You can remove access at any time by clicking Remove next to any email.
As the deck owner, you can always view your own decks without going through the email gate. Just visit the URL while logged in.
Every time an investor views your deck, Pitcheon records:
View analytics on the deck detail page in your dashboard. Total views, unique viewers, and average view time are shown at the top, with a chronological list of all views below.
Pitcheon ships with a built-in Model Context Protocol (MCP) server. This lets you manage your decks directly from Claude Code, Cursor, or any MCP-compatible AI tool.
Connect directly to the hosted MCP endpoint. Add this to your Claude Code or Cursor MCP config:
{
"mcpServers": {
"pitcheon": {
"type": "url",
"url": "https://pitcheon.co/api/mcp/sse?user_id=YOUR_USER_ID",
"headers": {
"Authorization": "Bearer YOUR_SERVICE_ROLE_KEY"
}
}
}
}Find your user ID by running pitcheon whoami in your terminal.
Alternatively, run the MCP server locally (supports filesystem access for create_deck):
{
"mcpServers": {
"pitcheon": {
"command": "npm",
"args": ["run", "mcp"],
"cwd": "/path/to/pitcheon",
"env": {
"PITCHEON_USER_ID": "your-user-uuid"
}
}
}
}list_decks — List all your decksget_deck — Get deck details, access list, and analyticscreate_deck — Upload a new deck from a local directoryupdate_deck — Update title, slug, or publish statusadd_access — Grant an investor email accessremove_access — Revoke an investor's accessget_analytics — View analytics for a deckIn Claude Code, just ask naturally:
> Upload the pitch deck in ./my-pitch as "greenfield-farms"
> Add investor@vc.com to my greenfield-farms deck
> Show me who viewed my deck this week