send.webforms.toRead the docs →

Coding agent

Connect Gemini CLI to WebForms

Add https://agents.webforms.to to Gemini CLI with one command and sign in. Gemini can then create forms, put them into your project and check that submissions arrive.

Needs a WebForms Pro or Agency workspace. Steps checked against Google's documentation on .

MCP server URL

https://agents.webforms.to

Remote MCP over Streamable HTTP, with sign-in, so there is no API key to copy. Full details are in the MCP server docs.

Set it up

  1. Add the server

    Run the command below. It saves to .gemini/settings.json in the project; add --scope user for every project.

  2. Start the sign-in

    Gemini CLI starts sign-in by itself the first time WebForms asks for it. You can also run /mcp auth webforms.

  3. Sign in to WebForms

    A WebForms page opens in your browser. Pick the workspace, tick what the agent may do, and click Allow. You are sent back and the tools are ready.

Terminal
gemini mcp add --transport http webforms https://agents.webforms.to

Or add it yourself. httpUrl is the key for this kind of server; url means an older transport.

.gemini/settings.json
{
  "mcpServers": {
    "webforms": {
      "httpUrl": "https://agents.webforms.to"
    }
  }
}

What Gemini CLI can and cannot do

When you sign in, WebForms asks which workspace to connect and what Gemini CLI may do. You choose:

It can never delete data, add destinations or send email. Access lasts 90 days and shows up under Settings, Connected AI apps, where you can disconnect it at any time. The workspace's owners and admins get an email when an AI app is connected. Connecting is available on Pro and Agency.

Things to ask Gemini CLI

Tools it gets

Read

  • list_formsEvery form in the workspace, with its submission and spam counts.
  • get_formOne form's settings: endpoint, thank-you page, spam settings and allowed sites.
  • get_submissionsRecent submissions for a form, with their field data, newest first.
  • search_submissionsSearch submission content across every form.
  • get_statsSubmission counts over the last N days.
  • get_usageYour plan, monthly allowance and how much of it is used.
  • get_unfinished_submissionsForms visitors started but never sent, when the form keeps them.
  • get_form_schemaA form's fields and the JSON Schema, TypeScript, Zod and HTML generated from them.
  • list_deliveriesRecent delivery attempts to each destination, with status and error.

Change (only if you allow it)

  • create_formCreate a form. Returns its endpoint and a ready-to-paste HTML form.
  • update_formChange a form's name, thank-you page, spam settings or allowed sites.
  • save_form_schemaSet a form's fields and whether submissions are validated against them.
  • replay_failed_deliveriesSend deliveries that gave up in the last 30 days again. Never re-sends email.

Using an API key instead

If you would rather not sign in, create an API key under Settings, API keys in WebForms (tick the write scopes you want it to have) and send it as a bearer token. Keep the key out of shared or committed files.

Terminal
gemini mcp add --transport http webforms https://agents.webforms.to \
  --header "Authorization: Bearer wf_live_your_key"

Worth knowing

Gemini CLI and WebForms FAQ

In Gemini CLI, url means the older SSE transport. WebForms uses Streamable HTTP, so use httpUrl, or add it with --transport http.

Google documentation

Other AI agents

Connect Gemini CLI in a minute

Add https://agents.webforms.to, sign in, and choose what it may do.