# Furrow Forms

> Lets your agent set up a site's forms end to end: create them, write the snippet with spam protection built in, and verify signed webhooks.

Furrow Forms is a form backend for websites built with AI agents. Instead of stopping to ask you to sign up somewhere and paste an endpoint back, your agent can do the whole job over MCP: create the site's forms, write the snippet into your code and check that the webhook works. Your forms stay in your own markup; Furrow receives the submissions.

What you can do with it
- Set up a client, a website and all its forms in one bootstrap_site call that's safe to re-run
- Get ready-to-paste form code for HTML, Astro or Next.js, with a honeypot, a timing field and Cloudflare Turnstile included
- Set spam protection, allowed domains, notification emails, file uploads and the webhook once per website, and let every form inherit them
- Set the website's signed webhook and send a signed test delivery to confirm it answers 200 OK
- Read incoming submissions, filtered by website, form, spam status or date, to triage leads or pass them to another system
- Manage clients, websites and forms, and archive the ones you no longer need

How it connects
- Hosted: add https://api.furrowforms.com/mcp. Leave the header off and your agent opens a Furrow sign-in, or send a frw_ token as an Authorization: Bearer header.
- On your machine: npx -y @furrowforms/mcp with your token in FURROW_TOKEN. It's a bridge to the same hosted server, for agents that only run local servers, such as Claude Desktop, Zed and Codex CLI.
You can create a token in the Furrow dashboard (Settings, then Tokens). With no account yet, your agent can register one through Furrow's API: you read it a 6-digit code from your email, and it gets the token. Furrow documents Claude Code, Cursor, Claude Desktop, Zed and Codex CLI.

Good to know
- The free plan includes the full MCP and API, with 100 submissions a month and up to 3 active websites; the yearly plan raises the limits.
- Spam caught by the honeypot or timing field is quarantined and doesn't count toward your quota.
- Over MCP you archive clients, websites and forms rather than deleting them.

- Type: Plugin
- Made by: Furrowforms
- Category: Automation
- Formats: Remote MCP, Local MCP
- Version: 1.0.1
- Website: https://furrowforms.com
- Source: https://github.com/useburrow/furrow-forms
- Page: https://pluginboard.ai/plugins/furrow-forms

## Works with

- ChatGPT
- Claude
- Muse
- Grok Bot
- Gemini
- Grok
- GitHub Copilot
- Cursor
- Claude Code
- Codex
- Antigravity
- Gemini CLI
- Replit
- OpenClaw
- OpenCode
- Hermes Agent

## Install

You'll need:

- `Authorization` (optional): Bearer frw_… token from app.furrowforms.com (Settings → Tokens) or minted by the agent via POST https://api.furrowforms.com/api/register. Omit to use OAuth (dynamic client registration supported).

Replace each `<NAME>` placeholder with your own value.

### ChatGPT

In ChatGPT on the web: Plugins → + → Add custom MCP server, then paste https://api.furrowforms.com/mcp under Connection. Business and Enterprise plans; Pro can add read-only servers.

### Claude

In Claude (web or desktop): Customize → Connectors → Add custom connector, then paste https://api.furrowforms.com/mcp

### Muse

In Muse: In a Muse chat, ask it to create a custom connector for the MCP server at https://api.furrowforms.com/mcp. Then tap Connect on the card it shows and sign in, or add your key.

### Grok Bot

In Grok Bot: In a chat with your Bot, say "Add this MCP server: https://api.furrowforms.com/mcp". It confirms the details with you and sets it up, and the tools are ready from your next message.

### Gemini

In Gemini: At gemini.google.com: Settings → Connected Apps → Add a custom app, then paste https://api.furrowforms.com/mcp

### Grok

In Grok on the web: At grok.com/connectors: New Connector → Custom, then enter https://api.furrowforms.com/mcp and sign in if it asks.

### GitHub Copilot

Add to VS Code: vscode:mcp/install?%7B%22name%22%3A%22furrow-forms%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.furrowforms.com%2Fmcp%22%7D

Copilot CLI:

```shell
copilot mcp add --transport http furrow-forms https://api.furrowforms.com/mcp
```

### Cursor

Add to Cursor: cursor://anysphere.cursor-deeplink/mcp/install?name=furrow-forms&config=eyJ1cmwiOiJodHRwczovL2FwaS5mdXJyb3dmb3Jtcy5jb20vbWNwIn0%3D

Add to .cursor/mcp.json:

```json
{
  "mcpServers": {
    "furrow-forms": {
      "url": "https://api.furrowforms.com/mcp"
    }
  }
}
```

### Claude Code

Run in your terminal:

```shell
claude mcp add --transport http furrow-forms https://api.furrowforms.com/mcp
```

### Codex

Run in your terminal:

```shell
codex mcp add furrow-forms --url https://api.furrowforms.com/mcp
```

### Antigravity

Add to ~/.gemini/config/mcp_config.json:

```json
{
  "mcpServers": {
    "furrow-forms": {
      "url": "https://api.furrowforms.com/mcp"
    }
  }
}
```

### Gemini CLI

Run in your terminal:

```shell
gemini mcp add --transport http furrow-forms https://api.furrowforms.com/mcp
```

### Replit

In Replit: At replit.com/integrations, open MCP Servers → + Add MCP server, paste https://api.furrowforms.com/mcp (add any headers under Advanced settings), then click Test & save.

### OpenClaw

Run in your terminal:

```shell
openclaw mcp add furrow-forms --url https://api.furrowforms.com/mcp --transport streamable-http
```

If it needs a key or sign-in: For https://api.furrowforms.com/mcp, add --header NAME=value for each header it needs, or --auth oauth and then run openclaw mcp login furrow-forms.

### OpenCode

Run in your terminal:

```shell
opencode mcp add furrow-forms --url https://api.furrowforms.com/mcp
```

If it needs a key: For https://api.furrowforms.com/mcp, add --header 'NAME=value' for each header it needs. Add --global to use it in every project.

### Hermes Agent

Run in your terminal:

```shell
hermes mcp add furrow-forms --url https://api.furrowforms.com/mcp
```

Add to ~/.hermes/config.yaml:

```json
{
  "mcp_servers": {
    "furrow-forms": {
      "url": "https://api.furrowforms.com/mcp"
    }
  }
}
```

If it signs in with OAuth: If https://api.furrowforms.com/mcp asks you to sign in, add --auth oauth to the command, or auth: oauth to its entry.

---
From Pluginboard (https://pluginboard.ai).
