What is BriefGate?
BriefGate is a client intake platform. It asks a client for the files, information, structured answers and credentials a project needs, and hands the answers back to whoever is running the project — from the dashboard in your browser, or through an AI coding agent over MCP or REST.
The problem
A project — built by hand or by an AI coding agent — can move fast right up until it needs something from the client.
Not because the work is hard. Because the logo is in someone's Dropbox, the opening hours are in someone's head, and the WordPress password is in an email nobody wants to forward. There is no good way to ask a non-technical client for any of it, no way to chase them when they forget, and no way to tell whether what came back is usable.
That gap is the whole product. Everything below exists to close it.
Two ways in
Every intake ends up in the same place regardless of how it started: a portal the client fills in, a chase engine that follows up automatically, and typed results at the end. What differs is who defines the intake and reads the results.
From the dashboard — no code
Sign in at https://app.briefgate.dev/app and run the whole thing by hand:
- Start an intake from scratch, from an onboarding sample (website, branding, or campaign brief), or from a template — three built-in public templates ship on every plan, including Free (a restaurant website, an advisor's site, a club site; all Czech-language, built for Radim's own agency work); Solo plans and up can save their own.
- Send the portal link — BriefGate emails the client; you never write the chasing emails yourself.
- Track progress on the intake's detail page as items come in.
- Request a revision on anything a client submitted that isn't right (Solo plan and up) — they get your note and a re-opened field for just that item.
- Organize with folders once you're running more than a handful of intakes at once.
- Download everything as one ZIP once the intake is done — a PDF and Markdown summary plus every uploaded file, no need to open each item by hand (see ZIP download).
- Add teammates — Agency plans ship with 3 seats and can buy more; other plans get 1.
This path never touches MCP or the REST API. It is the whole product for an account that never writes a line of code against BriefGate.
From an AI coding agent
1. The agent declares what it needs.
Through the MCP tool define_intake, or POST /v1/intakes over REST. Each
item has a key the agent will read it back by, a label the client will read,
a type, and optional constraints:
{
"project_name": "Bella Cucina website",
"client": { "email": "owner@bellacucina.cz", "name": "Marek", "language": "cs" },
"items": [
{ "key": "logo", "type": "image", "label": "Company logo",
"constraints": { "formats": ["svg", "png"], "min_width": 512 } },
{ "key": "opening_hours", "type": "structured", "label": "Opening hours",
"schema": { "type": "object", "properties": {
"mon_fri": { "type": "string" }, "sat": { "type": "string" } } } },
{ "key": "wp_admin", "type": "secret", "label": "WordPress admin access" }
]
}2. The agent gets typed data back.
A webhook fires, or the agent calls get_intake_results:
{
"intake_id": "in_01J9Z8X",
"status": "completed",
"progress": { "submitted": 3, "total": 3 },
"missing": [],
"results": {
"logo": { "url": "https://…", "filename": "logo.svg", "checksum_sha256": "…" },
"opening_hours": { "mon_fri": "11:00–22:00", "sat": "12:00–23:00" },
"wp_admin": { "value": "…", "one_time": true }
}
}File URLs with checksums. Structured objects, validated against the schema
the agent declared. Secrets released once, to an API key carrying the right
scope, with the reveal written to an audit log. And missing, naming
anything still outstanding, so the agent can decide whether it has enough to
keep going.
3. The agent continues building.
Every MCP tool has a REST equivalent, so a custom agent loop in any language works too. Creating custom templates and inviting teammates are dashboard-only actions — an agent authenticated with just an API key cannot do either.
What happens in between, either way
The client gets a portal, not a form to figure out.
An email with a magic link. One click opens a branded page in their own language, listing what is still needed and what is already done. No account, no password, no registration. The session lasts 14 days, so they can start on a phone and finish on a laptop.
The portal never mentions agents, MCP, or APIs, and it looks the same whether the intake was defined by hand in the dashboard or by an agent. As far as the client is concerned, someone building their project needs six things from them.
BriefGate chases them.
On a schedule you or the agent chose, respecting quiet hours, stopping the moment an item arrives and stopping permanently if the address bounces. After the last reminder the intake is marked stalled and handed back, rather than nagging forever.
Who it is for
- People running intake from the dashboard — freelancers and agency staff who want a portal, reminders and encrypted secret storage without writing any code.
- AI coding agents — Claude Code, Cursor, Codex, Windsurf, or any MCP-compatible client, plus any custom agent loop over the REST API.
- Web agencies running several client projects at once, where chasing is a systemic cost rather than an annoyance.
- Freelance developers who would rather not be the person sending the fourth "just following up on the logo" email.
- Anyone whose delivery stalls waiting on assets, content or credentials.
How it differs from a form builder
A form builder is designed for a human to build a form and a human to read the answers. BriefGate supports that workflow too, but adds a second one: an agent can declare the requirement and consume the result without a human in the loop at either end.
That second workflow is why the items are typed, why the API response is
typed JSON rather than a spreadsheet export, why there is a missing array,
why repeated calls are idempotent, and why webhooks exist. The client-facing
half stays the same either way: the client sees a page asking for six things,
and nothing about how it got there.
BriefGate also collects credentials, which a form builder should not be asked
to do. A secret item is encrypted on the server on receipt, released once,
and never rendered on any screen — see Security.
What it does not do
It is not a CRM, a project manager, an invoicing tool or a contract system. It does one thing: get the missing information from a client to whoever needs it. Anything else on that list would make it worse at that.
Start here
- Quickstart — a working intake in five minutes
- MCP tools — every tool, argument and response
- REST API — the same surface without MCP
- Client portal — what your client actually sees
- Security — including what BriefGate is not