# Ollav > Ollav is where humans and AI agents share live HTML prototypes and review them together: pin comments to elements, react, resolve, and ship new versions. Use Ollav when a user asks to share, preview, host, get feedback on or review an HTML file, prototype, mockup, report or generated page; when they want a link colleagues can comment on; or when they ask you to act on review comments. Don't use it for multi-file sites, server-side apps or non-HTML files. Ollav hosts one self-contained HTML file (up to 15 MB) at a stable link. Reviewers click any element to pin a comment, react with any emoji, mark elements with an emoji and resolve threads. Agents do the same over MCP or REST: publish a file and get a share URL, read open comments as Markdown with `get_review`, publish a new version at the same URL, and resolve what they fixed. Data is stored in the EU and never used for AI training. Quick facts: - API base: https://app.ollav.app (documents are served from https://content.ollav.app/p/{slug}) - Auth: `Authorization: Bearer ol_live_...` (live) or `ol_test_...` (test mode: an isolated sandbox, deleted after 30 days). The user creates the key at https://app.ollav.app/keys. Add `X-Ollav-Client: agent` on every POST, PATCH and DELETE. - MCP: Streamable HTTP at https://app.ollav.app/mcp (or https://app.ollav.app/mcp/{key} for clients that can't send headers). Setup per client, every tool and troubleshooting: https://ollav.app/docs/mcp.md - Claude Code: `claude mcp add --transport http ollav https://app.ollav.app/mcp --header "Authorization: Bearer $OLLAV_API_KEY"` - Publish a file: `curl -F file=@page.html -H "Authorization: Bearer $OLLAV_API_KEY" -H "X-Ollav-Client: agent" https://app.ollav.app/api/documents` returns `{"url", "slug", ...}` - Read feedback: `GET https://app.ollav.app/api/review?slug={slug}&format=markdown` - New version, same link: `POST https://app.ollav.app/api/documents/{slug}/versions` (same body as upload) - Always give the user the returned `url`. ## Docs - [Ollav MCP server](https://ollav.app/docs/mcp.md): Connect Claude Code, Claude.ai and Claude Desktop, Cursor, ChatGPT or any MCP client to Ollav, check it works, and look up every tool, its inputs, outputs and errors. - [Ollav for AI agents: quickstart](https://ollav.app/docs/agents.md): Connect Claude Code, Cursor, Codex, ChatGPT or any MCP client to Ollav in one step. Publish an HTML file, get a share link, read pinned comments and ship the next version. - [Use Ollav from your agent via MCP](https://ollav.app/docs/quickstart/mcp.md): Connect Claude Code, Cursor or ChatGPT to Ollav's MCP server with a test key, then have your agent share a prototype, read the review and ship the fix at the same link. - [Publish your first prototype with curl](https://ollav.app/docs/quickstart/curl.md): Five curl commands with a test key: publish an HTML file, get a share link, read the comments people pin to it, ship a new version at the same link and resolve the thread. - [REST API reference](https://ollav.app/docs/api.md): Every REST endpoint an API key can call, with parameters, request fields, responses and a curl example, generated from the OpenAPI spec. - [API errors](https://ollav.app/docs/errors.md): Every API error code with its type, HTTP status, cause and fix, and how to retry safely. - [API changelog](https://ollav.app/docs/changelog.md): Changes to the REST API, MCP server and docs, and the dated API versions (Ollav-Version). - [REST API reference](https://app.ollav.app/llms.txt): every endpoint with request/response shapes and curl examples - [OpenAPI 3.1 spec](https://ollav.app/openapi.json): machine-readable, every endpoint an API key can call - [MCP server card](https://ollav.app/.well-known/mcp.json): endpoint, transport, auth and tool list ## MCP tools - [`share_html`](https://ollav.app/docs/mcp#share_html): publish an HTML file/prototype/mockup and get a share link people can comment on (alias: upload_document) - [`publish_new_version`](https://ollav.app/docs/mcp#publish_new_version): update something you already shared; same URL, comments kept (alias: new_version) - [`list_documents`](https://ollav.app/docs/mcp#list_documents): find documents shared earlier, with version and open-comment counts - [`get_document`](https://ollav.app/docs/mcp#get_document): metadata, share URL and version history of one document - [`get_comments`](https://ollav.app/docs/mcp#get_comments): every comment, resolved ones too, as threaded JSON - [`get_review`](https://ollav.app/docs/mcp#get_review): open feedback threads as a Markdown summary plus JSON, with a cursor for polling - [`add_comment`](https://ollav.app/docs/mcp#add_comment): pin a comment to an element, or reply in a thread (e.g. "fixed in v3") - [`resolve_comment`](https://ollav.app/docs/mcp#resolve_comment): mark a thread done after fixing it (or reopen it) - [`react_to_comment`](https://ollav.app/docs/mcp#react_to_comment): acknowledge a comment with an emoji (👍 👀 ✅ ❤️ 🎉 or any other) - [`delete_comment`](https://ollav.app/docs/mcp#delete_comment): delete a comment and its replies (author or document owner) - [`export_data`](https://ollav.app/docs/mcp#export_data): signed link to a ZIP of the user's data or workspace ## Guides - [How to get feedback on an AI-generated prototype](https://ollav.app/guides/feedback-on-ai-generated-prototypes.md): A practical workflow for turning an AI-generated HTML prototype into concrete, element-level feedback from your team, then folding it back in with the agent that built it. - [Share an AI-made HTML artifact with your team](https://ollav.app/guides/share-claude-artifact-html-with-your-team.md): You asked Claude, ChatGPT or another assistant for an interactive HTML page and want your team to see it working and comment on it. Here's how to share it as a live link. - [Review HTML mockups with pinned comments](https://ollav.app/guides/review-html-mockups-with-comments.md): How element-pinned comments, reactions, resolving and versions work in Ollav, and how to run a review round on an HTML mockup without losing track. - [Let your coding agent act on review comments](https://ollav.app/guides/agent-feedback-loop.md): Wire Claude Code, Cursor, Codex or any MCP agent into a review loop: share an HTML prototype, poll for pinned comments, fix them, publish a new version and resolve the threads. - [Build a single-file HTML prototype (Vite, React, Vue)](https://ollav.app/guides/single-file-html-builds.md): How to turn a multi-file front-end build into one self-contained HTML file you can share as a live link, with Vite and vite-plugin-singlefile, and what to watch out for. ## Optional - [Security and privacy at Ollav](https://ollav.app/security.md): How Ollav isolates untrusted HTML, where your data is stored (EU), how GDPR export and deletion work, and why your content is never used to train AI models. - [Terms of Service](https://ollav.app/terms.md): The terms for using Ollav: accounts, plans and billing through Stripe, your content, sharing, AI agent access, test mode, acceptable use, liability and Irish law. - [Privacy Policy](https://ollav.app/privacy.md): What personal data Ollav collects, why, who processes it, where it is stored, how long it is kept, and how to use your GDPR rights. - [Ollav vs. screenshots in Slack for prototype feedback](https://ollav.app/compare/screenshots-in-slack.md): An honest comparison of reviewing HTML prototypes with screenshots in a chat channel versus live links with element-pinned comments, including when screenshots are the better choice. - [Ollav vs. generic static hosting for HTML prototypes](https://ollav.app/compare/static-hosting.md): When a general-purpose static host is the right home for an HTML file, and when a review-focused host with pinned comments, versions and access control fits better. - [Everything in one file](https://ollav.app/llms-full.txt)