send.webforms.toRead the docs →

AI code editor

Connect Cursor to WebForms

Add https://agents.webforms.to to Cursor's mcp.json and sign in when Cursor asks. Cursor's agent can then create forms, put them into your project and check that submissions arrive.

Needs a WebForms Pro or Agency workspace. Steps checked against Cursor'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

    Add WebForms to ~/.cursor/mcp.json for every project, or .cursor/mcp.json for one project.

  2. Start the sign-in

    Cursor sees that WebForms needs sign-in and opens it in your browser. If it does not, connect WebForms from Cursor's MCP settings.

  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.

~/.cursor/mcp.json
{
  "mcpServers": {
    "webforms": {
      "url": "https://agents.webforms.to"
    }
  }
}

What Cursor can and cannot do

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

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

~/.cursor/mcp.json
{
  "mcpServers": {
    "webforms": {
      "url": "https://agents.webforms.to",
      "headers": {
        "Authorization": "Bearer ${env:WEBFORMS_API_KEY}"
      }
    }
  }
}

Cursor and WebForms FAQ

Yes, with sign-in: it only holds the URL. Do not commit a file with an API key in it.

Cursor documentation

Other AI agents

Connect Cursor in a minute

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