send.webforms.toRead the docs →

AI code editor

Connect Windsurf to WebForms

Add https://agents.webforms.to to Cascade's MCP config in Windsurf and sign in. Cascade can then create forms, put them into your project and check that submissions arrive.

Needs a WebForms Pro or Agency workspace. On Windsurf Teams and Enterprise, an admin may need to turn MCP on or allow the server. Steps checked against Windsurf'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. Open the MCP config

    In Windsurf, open Settings, Tools, Windsurf Settings, and add a server or view the raw mcp_config.json.

  2. Add the server

    Add WebForms as below. Leave out any headers so Windsurf uses sign-in.

  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.

mcp_config.json
{
  "mcpServers": {
    "webforms": {
      "serverUrl": "https://agents.webforms.to"
    }
  }
}

What Windsurf can and cannot do

When you sign in, WebForms asks which workspace to connect and what Windsurf 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 Windsurf

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. Windsurf can read it from an environment variable.

mcp_config.json
{
  "mcpServers": {
    "webforms": {
      "serverUrl": "https://agents.webforms.to",
      "headers": {
        "Authorization": "Bearer ${env:WEBFORMS_API_KEY}"
      }
    }
  }
}

Windsurf and WebForms FAQ

Yes. Cascade supports OAuth for remote servers over Streamable HTTP, so there is no key to paste.

Windsurf documentation

Other AI agents

Connect Windsurf in a minute

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