# Brieform, complete reference > Forms your AI builds, publishes, and reads. Brieform is an AI-native form builder with an MCP server. You describe a form in your AI chat, Brieform builds it and hands back a live URL, and you read the responses in the same thread. Free to start, no credit card, hosted in the EU (Frankfurt). This is the complete reference. The short version is at https://brieform.app/llms.txt --- ## What Brieform is Brieform is MCP-first. The MCP server is the product, not a feature bolted onto a dashboard. Every action exists as a tool your AI can call directly: create, update, publish, theme, read responses, read analytics. There is **no form builder in the Brieform dashboard**. The dashboard lists your forms, shows a form's detail, its responses and its audit log. Forms are built by prompting your AI client. The only in-app generator is the live demo on the homepage, which runs anonymously and keeps the result in memory. ### The problem it solves When you work inside an AI chat, building a form forces you out of it: 1. Ask the AI to structure the form 2. Open a form builder and retype every field by hand 3. Collect responses, then copy and paste them back into the AI to make sense of them Brieform removes those round trips. The AI builds the form, publishes the URL, and reads the responses in the same thread. ### Who it is for Small teams already working in Claude, ChatGPT, Cursor, or any MCP client. ### How competitors differ Typeform, Tally, Jotform and others added an MCP server on top of a dashboard designed for a mouse. Brieform was built conversation-first: there is no dashboard to open, and the tool surface is the whole product. --- ## MCP server ### Connection - **Endpoint**: `https://brieform.app/api/mcp/mcp` - **Transport**: Streamable HTTP (MCP 2025-03-26). SSE-only clients are not supported. - **Discovery**: `https://brieform.app/.well-known/mcp` - **OAuth metadata**: `https://brieform.app/.well-known/oauth-protected-resource` (RFC 9728) ### Authentication Two options: - **OAuth 2.1**, recommended for chat clients (Claude, ChatGPT, Le Chat, Perplexity). One connection, tokens refresh automatically. - **API key**, for scripts, CI, and clients without OAuth support. Generate a `bf_...` key in account settings and pass it as a Bearer token. Connected clients are listed under **AI Connected Apps** in account settings. Revoking one invalidates its refresh tokens immediately and the MCP server rejects its existing tokens. API keys are managed on the same page. ### The 15 tools Every tool carries MCP annotations (`readOnlyHint`, `destructiveHint`, and others) so the client knows which calls are safe reads and which are destructive writes. `delete_form` is marked destructive. The seven write tools (`create_form`, `update_form`, `publish_form`, `unpublish_form`, `set_form_theme`, `duplicate_form`, `delete_form`) record an entry in the audit log, visible in the **Activity** tab of a form in the dashboard. #### create_form (write) Create a form. Arguments: `prompt`, `form`. Pass `form` with the structure you generated yourself whenever you can. Fall back to `prompt` only when you cannot confidently produce the structure. Forms are created as drafts and are not public until published. #### create_form_from_brief (write) Create a pre-devis intake from a pasted client brief. Arguments: `brief`, `introContext`, `form`. #### analyze_brief (read) Analyze a client brief for known facts and gaps before building an intake. Argument: `brief`. #### update_form (write) Edit an existing form. Arguments: `form_id`, `prompt`, `form`. Structured mode (`form`) is precise. Prompt mode can touch fields you did not intend to change, so prefer `form` for targeted edits. #### get_form (read) Full form structure: fields, theme, response count. Argument: `form_id`. #### list_forms (read) List forms. Arguments: `status`, `search`, `limit`, `cursor`. #### publish_form (write) Publish a form and return its public URL. Arguments: `form_id`, `slug`, `regenerate_slug`. #### unpublish_form (write) Unpublish a form. Responses are kept. Argument: `form_id`. #### set_form_theme (write) Apply a theme. Arguments: `form_id`, `preset_id`, `theme`, `prompt`. Prefer `preset_id` when a preset matches the intent. Presets: `modern-blue`, `slate-professional`, `vibrant-green`, `elegant-violet`, `warm-rose`, `sunset-orange`, `corporate-neutral`, `minimal-stone`. #### get_responses (read) Fetch submissions. Arguments: `form_id`, `limit` (default 50, max 200), `cursor`, `since` (ISO datetime), `format`, `include_download_urls` (default false). `format: "json"` returns inline data and suits small datasets. `format: "csv_url"` returns a signed CSV URL with a one hour lifetime, which is the right choice past roughly 50 responses or when handing the data to another tool. `include_download_urls` only applies to json: when true, mints signed `download_url` values (~15 min TTL) onto uploaded file metadata in the returned page (capped at 50 per page). #### get_upload_url (read) Mint a short-lived signed download URL for one completed upload. Arguments: `form_id`, `upload_object_id` (from get_responses field values). URL TTL is about 15 minutes. Ownership-checked; never a public object URL. #### duplicate_form (write) Clone a form into a new draft. Structure and theme are copied, responses are not. Arguments: `form_id`, `new_title`. #### delete_form (write) Permanently delete a form and its responses. Arguments: `form_id`, `confirm`. Requires `confirm: true`. #### get_form_analytics (read, Free and Pro) Views, submissions, conversion rate, daily breakdown, top referrers, multi-step funnel. Arguments: `form_id`, `period` (`7d`, `30d`, `90d`). On the Free plan this tool returns a `QUOTA_EXCEEDED` error. The other 14 tools work on every plan. #### get_form_share_assets (read) Public URL, iframe embed snippet, social preview image and QR code in one call. Arguments: `form_id`, `qr_size`. ### Live form preview in the chat (MCP Apps) Form mutations return an interactive UI rendered directly inside compatible AI chats such as Claude. The widget mounts the form renderer from the tool's `structuredContent`, with no external iframe, so you see the form without leaving the conversation. --- ## Client setup | Client | Plans | Recommended auth | Guide | |---|---|---|---| | Claude | Free, Pro, Max, Team, Enterprise | OAuth 2.1 | https://brieform.app/install/claude | | Claude Code | all | OAuth 2.1 | https://brieform.app/install/claude-code | | ChatGPT | Plus, Pro, Business, Enterprise | OAuth 2.1 | https://brieform.app/install/chatgpt | | Cursor | all | OAuth 2.1 | https://brieform.app/install/cursor | | VS Code with GitHub Copilot | all | OAuth 2.1 | https://brieform.app/install/vscode | | Le Chat | all, including Free | OAuth 2.1 | https://brieform.app/install/lechat | | Perplexity | Pro and above | OAuth 2.1 | https://brieform.app/install/perplexity | | Any other MCP client | all | API key | https://brieform.app/install/other | Setup takes under a minute: add the endpoint in your AI's MCP settings, then say "create a contact form". Gemini is deliberately absent. Custom MCP connectors exist in Gemini Enterprise and the Gemini API, but the consumer app only accepts partnership connectors, so there is nothing a reader could act on. --- ## What forms can do ### 13 field types `text`, `email`, `tel`, `textarea`, `select`, `radio`, `checkbox`, `rating`, `date`, `number`, `url`, `password`, `gdpr` File upload is defined in the type system but is not supported: the AI does not generate it and the renderer does not display it. ### Validation `min` and `max` for numeric values, `pattern` for a custom regex, plus `email_domain` and `phone_country` checks. Every field can carry a placeholder, a default value and a description. ### Conditional logic 8 conditions: `equals`, `not_equals`, `contains`, `not_contains`, `greater_than`, `less_than`, `is_empty`, `is_not_empty`. Works across multi-step forms. Free on every plan. ### Multi-step forms Progress bar included. Free on every plan. ### Submission options Custom submit button text, a custom success message, or a redirect URL after submission. ### Spam protection A honeypot field is built silently into every form. ### Sharing Every published form comes with a public URL, a copy-ready iframe snippet, a social preview image and a QR code, all available through `get_form_share_assets`. ### Languages Brief in any language and the field labels generate to match. --- ## Themes ### 8 color presets 1. Modern Blue, clean and professional (`#2563eb`) 2. Slate Professional, serious and corporate-ready (`#334155`) 3. Vibrant Green, fresh and energetic (`#16a34a`) 4. Elegant Violet, creative and sophisticated (`#7c3aed`) 5. Warm Rose, friendly and approachable (`#e11d48`) 6. Sunset Orange, bold and attention-grabbing (`#ea580c`) 7. Corporate Neutral, understated and business-like (`#18181b`) 8. Minimal Stone, the default, calm and collected (`#292524`) ### Other options - Styles: `modern`, `classic`, `minimal`, `corporate`, `colorful` - Fonts: System Default, Inter, Serif (Georgia), Monospace, Rounded (Nunito) - Text sizes: `sm`, `default`, `lg` - Border radius: `none`, `sm`, `default`, `lg`, `full` - Submit button variants: `default`, `secondary`, `outline`, with rounding `default`, `full`, `none` --- ## Plans and limits | | Free | Pro | |---|---|---| | Price per month | $0 | $39 | | Price billed annually | n/a | ~$32/mo ($384/yr) | | Active published forms | Unlimited | Unlimited | | Responses per month | Unlimited (fair use) | Unlimited | | MCP tools | 13 core (incl. analytics + get_upload_url) | All 15 (adds analyze_brief, create_form_from_brief) | | Form analytics | Yes | Yes | | All field types, multi-step, conditional logic | Yes | Yes | | CSV export from the dashboard | Yes | Yes | | Brieform branding removed | No | Yes | | Priority support | No | Yes | | Pre-quote specialist tools | No | Yes | Annual billing is about 20% off on Pro. There is no Starter plan. **Founders Rate**: $19.50/mo forever for the first 30 paying customers (50% off Pro), applied automatically at checkout when spots remain. Shown live on the pricing page. ### Billing Payments run through Polar, with credit cards via Stripe. Month to month, no contract, cancel from the dashboard at any time. Response limits reset monthly and there are no overages. Going over does not delete anything: responses queue instead. CSV export of every response is available on all plans, including Free. --- ## Data and security - TLS in transit, encryption at rest (PostgreSQL) - EU hosting, Frankfurt - GDPR: `gdpr` is a native field type, and data is deleted on request - CSV export on every plan - You own all of your responses - MCP write operations are recorded in an audit log for traceability - OAuth revocation: disconnect an MCP client in one click from settings, tokens are invalidated immediately - Origin guard on directory-sourced submissions, CSRF guard on the revocation endpoint Account sign-in is Google OAuth. --- ## Public URLs - Landing: https://brieform.app - Public form: `https://brieform.app/f/[slug]` - Dashboard: https://brieform.app/dashboard - Pricing: https://brieform.app/pricing - MCP server page: https://brieform.app/mcp - Docs: https://brieform.app/docs and https://brieform.app/docs/mcp-tools - Install guides: https://brieform.app/install plus `/install/claude`, `/install/claude-code`, `/install/chatgpt`, `/install/cursor`, `/install/vscode`, `/install/lechat`, `/install/perplexity`, `/install/other` - Features: https://brieform.app/features plus `/features/ai-form-generation`, `/features/conditional-logic`, `/features/multi-step-forms` - Templates: https://brieform.app/templates - Changelog: https://brieform.app/changelog - About: https://brieform.app/about - Blog: https://brieform.app/blog - Alternatives: `/alternatives/typeform`, `/alternatives/google-forms`, `/alternatives/tally`, `/alternatives/fillout`, `/alternatives/jotform`, `/alternatives/microsoft-forms` - Use cases: `/use-cases/lead-capture`, `/use-cases/customer-intake`, `/use-cases/application-forms`, `/use-cases/internal-requests`, `/use-cases/market-research`, `/use-cases/event-registration`, `/use-cases/feedback-survey`, `/use-cases/contact-form`, `/use-cases/donation-form`, `/use-cases/job-application`, `/use-cases/order-form`, `/use-cases/quiz`, `/use-cases/registration-form`, `/use-cases/rsvp`, `/use-cases/waitlist` - Legal: https://brieform.app/privacy, https://brieform.app/terms, https://brieform.app/security --- ## FAQ **What is an MCP form builder?** MCP (Model Context Protocol) is the open standard that lets an AI assistant act inside another app. An MCP form builder gives your AI a set of tools to create forms, publish them, and read responses on your behalf. Brieform is an MCP form builder: you describe a form in chat, and Brieform builds it, hands back a live URL, and reads the responses when you ask. No dashboard to open. **How is Brieform different from Tally, Typeform, or Jotform?** Those are form builders you operate, with an MCP server added on top of a dashboard built for clicking. Brieform was built conversation-first: the chat is the product, and every action exists as a tool your AI can call directly. You get the same forms without ever switching to a second tool. **Which AI clients work with Brieform?** Any MCP-compatible client. We have one-click setup guides for Claude, Claude Code, ChatGPT, Cursor, Le Chat, Perplexity, and VS Code, plus an API key for anything else that speaks MCP. **How fast is setup?** Under 60 seconds. Add Brieform in your AI's MCP settings, then say "create a contact form" and you get a live URL back. That's the whole setup. **Is Brieform really free?** Yes. No credit card to start. The Free plan includes AI form generation, conditional logic, multi-step forms, all 13 field types, CSV export, and the full MCP server. Upgrade only when you outgrow the limits. **What if I want to disconnect Brieform later?** Remove it from your AI's MCP settings in one click and you're done. Your forms and responses stay in your Brieform account as long as you want, or you can export everything and delete your account at any time. Nothing is locked in. --- ## Competitors | Product | Free plan | Entry price | |---|---|---| | Brieform | Unlimited forms + responses | $39/mo (Pro) | | Typeform | 10 responses/mo | $29+/mo | | Google Forms | Unlimited | Free | Tally, Jotform, Microsoft Forms and Fillout are covered on the alternatives pages listed above. --- ## About Brieform is built by Dany, a solo builder and indie hacker, also the founder of directoryfa.st. He reads every email personally. - Contact and support: dany@brieform.app - About page: https://brieform.app/about © 2026 Brieform. All rights reserved.