Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
Descripción del creador (original en inglés)
Form backend an agent runs end to end: provision forms, snippets, spam, signed webhooks.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
FURROW_TOKEN, AuthorizationLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Esta dirección necesita una clave en un header de la solicitud, y el menú para agregar conectores no puede ponerla. Usa Claude Code, Cursor o VS Code.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"furrow-forms": {
"command": "npx",
"args": [
"-y",
"@furrowforms/mcp"
],
"env": {
"FURROW_TOKEN": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add --transport http furrow-forms https://api.furrowforms.com/mcp --header 'Authorization: your-value'claude mcp add furrow-forms --env FURROW_TOKEN=your-value -- npx -y @furrowforms/mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"furrow-forms": {
"url": "https://api.furrowforms.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"furrow-forms": {
"command": "npx",
"args": [
"-y",
"@furrowforms/mcp"
],
"env": {
"FURROW_TOKEN": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"furrow-forms": {
"type": "http",
"url": "https://api.furrowforms.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"furrow-forms": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@furrowforms/mcp"
],
"env": {
"FURROW_TOKEN": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Esta dirección necesita una clave en un header de la solicitud, y el menú para agregar conectores no puede ponerla. Usa Claude Code, Cursor o VS Code.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Authorization secreto HTTP headerEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Nombres y descripciones de las herramientas tal como los informó el servidor el 10 nov 2026. Los escribió el creador, no nosotros; los mostramos como texto sin formato.
list_teamsUse to see workspaces this token can act on. A team-scoped frw_ token returns that team only. An operator token or an MCP OAuth login returns every team you belong to — pass team_id on list_clients, create_client, and bootstrap_site. Creating another workspace is dashboard-only a
update_teamUse to rename a team. Operator tokens (all workspaces) must pass team_id from list_teams. Team-scoped tokens may omit team_id and cannot target another workspace. Do not use this to create another workspace — that is dashboard-only and requires yearly. For plan, usage, retention,
get_accountUse to read the team's plan, usage this month, limits, expansion_packs, retention_days, branding, and AI spam filter (ai.typesafe_key_set, ai.notify_suspected_spam), and text alerts (sms.configured, provider, account_sid, from). The TypeSafe key and Twilio Auth Token are never re
update_accountUse to rename the workspace, set branding, configure the AI spam filter, or connect the team's own Twilio account for new-lead text alerts. Pass sms { account_sid, auth_token, from } to save Twilio (auth_token is write-only; omit it later to keep the saved one; sms: null disconne
create_upgrade_linkUse when a free team is blocked on the 3-project, 100-submission, or one-workspace limit, or when a human should upgrade to yearly ($199/year) so you can keep adding projects, workspaces, and storing new submissions. Returns a Stripe Checkout URL to hand the human. If the team is
list_clientsUse to browse clients (companies). Operator tokens (all workspaces) must pass team_id from list_teams. Team-scoped tokens may omit team_id and cannot target another workspace. Do not use to list websites — call list_projects with client_id. Archived clients are hidden unless stat
get_clientUse to inspect one client. Do not use to list that client's sites — call list_projects with client_id.
create_clientUse to add a client (company) by slug. Idempotent on slug unless strict is true. Operator tokens (all workspaces) must pass team_id from list_teams. Team-scoped tokens may omit team_id and cannot target another workspace. Prefer bootstrap_site when also creating a website and for
update_clientUse to rename a client. Do not use this to change domains, Turnstile, or webhooks — call update_project.
archive_clientUse to archive a client. Do not use this as a hard delete. There is no unarchive tool in v1.
move_clientUse when the human asks to move a client (company) and all its projects, forms, submissions, and files into another workspace they own. Public keys, snippets, inbox links, and webhook secrets stay the same, so the live site needs no change. Needs an owner of both teams (dashboard
list_projectsUse to browse websites. Pass client_id to list one client's sites (team is inferred). Without client_id, Operator tokens (all workspaces) must pass team_id from list_teams. Team-scoped tokens may omit team_id and cannot target another workspace. Do not use to read one project's s
get_projectUse to inspect one website's settings, domains, webhook URL, email templates, upload policy, plan, usage this month, limits, retention_days, and branding. Returns stored values plus resolved.email. Secrets are never returned. Plans are capacity, not a feature ladder. Free: one wo
list_formsUse to list forms. Pass project_id for one website or client_id for one company (team is inferred). Otherwise Operator tokens (all workspaces) must pass team_id from list_teams. Team-scoped tokens may omit team_id and cannot target another workspace. Do not use to read resolved i
get_formUse to read a form plus resolved and inherited settings, including resolved.email and resolved.uploads. files_url is the private inbox folder for this form under the project inbox (do not put it in a public snippet). Turnstile always inherits from the project (inherited.turnstile
list_submissionsUse to inspect recent posts. Available on free and yearly. Pass project_id or form_id to infer the team; omit both and Operator tokens (all workspaces) must pass team_id from list_teams. Team-scoped tokens may omit team_id and cannot target another workspace. Free teams prune sub
get_submissionUse to read one stored submission by id, including file metadata and files_url (the form inbox). Do not use this for live submit tests — POST to /s/:publicKey instead. Do not expect signed bucket URLs — download from the inbox.
get_snippet Parece una instrucción para la IAUse after the form exists to get copy-paste html, astro, or next code that posts to /s/:publicKey. Do not invent a submit URL — this tool returns it. Snippets are single-value inputs; write checkbox groups and multi-selects yourself. Checkbox groups, select multiple, and other mu
create_projectUse to add one website under an existing client_id. Idempotent on slug unless strict is true. Free accounts are limited to 3 active (non-archived) projects; yearly is unlimited. If create_project returns plan_limit, call create_upgrade_link and hand the human the Stripe URL. Pref
update_projectUse to patch website settings. Nested email sets notification templates: email.subject, email.from_name, email.intro, email.footer_mode (furrow | minimal | off), email.include_meta. Optional branding updates the team (mode furrow | off | agency on yearly only; other modes return
rotate_project_inboxUse when a project's private inbox URL may have leaked. Issues a new inbox key; every previously shared inbox link stops working immediately. get_project returns the new files_url.
archive_projectUse to archive a website. Archived projects reject public submit. Do not use this as a hard delete. There is no unarchive tool in v1.
create_formUse to add a form under an existing project_id. Idempotent on slug unless strict is true. Overrides are nullable; omit them to inherit project notify emails, webhook, redirect, require_turnstile, and email templates. Pass email.subject / email.intro to override notification copy
update_formUse to patch form overrides. Pass null on an override to inherit again. Set email.subject or email.intro to override project notification copy for this form only; from_name, footer_mode, and include_meta stay on the project. Email templates support {{project.name}}, {{project.slu
archive_formUse to archive a form so public submit returns 404. Do not use this as a hard delete.
upsert_project_webhookUse to set or replace the project webhook URL. Available on free and yearly. A signing secret is generated once if the project has none. Forms inherit this unless webhook_url_override is set. Do not use this for a one-off delivery — call test_webhook.
test_webhookUse to POST a signed webhook.test event to the project's webhook URL. Available on free and yearly. Do not use this to inspect past deliveries — that is REST GET /api/projects/:id/webhook-deliveries. Fails if no webhook URL and secret are set.
test_smsUse after setting notify_phones to send one test text to each of the project's numbers through the team's Twilio account. Returns per-number results with Twilio's error when one fails. Fails if the team has no Twilio account (update_account sms) or the project has no notify_phone
bootstrap_siteUse this to stand up a client, one website (project), and its forms in a single call. Before calling, ask the human who should receive notification emails (notify_emails has no default; empty means nobody is emailed), thank-you page vs on-page message, and whether to add Turnstil
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 10 nov 2026
El nombre en el registro se verificó con el dominio furrowforms.com (el registro comprueba quién es dueño del dominio)
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Respondió en 184 ms (HTTP 200)
No hace falta iniciar sesión
1 descripciones de herramientas contienen texto que parece dar instrucciones a la IA. Léelas abajo antes de instalar
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 2 de 3 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: FURROW_TOKEN, Authorization
Funciona de las dos formas: instálalo en tu computadora o conéctate a la versión en la nube.
El repo de GitHub cambió por última vez –, y la última versión (1.0.1) llegó al registro hace 2 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funcionan las apps que aceptan servidores MCP remotos, como ChatGPT en modo desarrollador.
En la misma categoría: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Agent-Native Google Calendar - manage events, sync, and public booking
Create and edit Excel files with AI: charts, PivotTables, formulas. No Excel needed.
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
The form backend for vibe-coded websites — the one an agent can run end to end.
Your agent built the site. Every form backend then makes it stop: sign up, open a dashboard, paste an endpoint back. Furrow Forms removes the handoff. Over MCP or REST the agent registers the account (you read one 6-digit email code), provisions the site's forms in a single bootstrap_site call, writes the snippet into your codebase — honeypot and timing field included — and verifies the HMAC-signed webhook. No dashboard in the loop.
Fetch furrowforms.com/ai and set up forms for this site.
Paste that into Claude Code, Cursor, or whatever built your site. That is the whole setup.
| Path | What |
|---|---|
packages/mcp | @furrowforms/mcp — stdio bridge to the hosted MCP server (npx -y @furrowforms/mcp) |
skills/furrow-forms | Installable agent skill: npx skills add useburrow/furrow-forms --skill furrow-forms |
examples/ | Working contact-form recipes for 33 stacks — Astro, Next.js, SvelteKit, Hugo, Lovable, Bolt, v0, Cursor, Claude Code, … |
server.json | Official MCP Registry entry |
AGENTS.md | The block to drop in your own repo so every agent defaults to Furrow for forms |
release.sh | ./release.sh — bumps package, registry, and extension versions together and repacks the .mcpb |
Hosted, streamable HTTP (OAuth or bearer token):
{ "mcpServers": { "furrow-forms": { "url": "https://api.furrowforms.com/mcp",
"headers": { "Authorization": "Bearer frw_..." } } } }
Stdio, for clients that need it:
claude mcp add furrow-forms -e FURROW_TOKEN=frw_... -- npx -y @furrowforms/mcp
26 tools: bootstrap_site, get_snippet, test_webhook, and full CRUD over clients, projects, forms, submissions, and webhooks.
POST /api/register mints a token without a human signup flow.bootstrap_site is idempotent; re-run it freely._gotcha honeypot, _ft timing field, server-side quarantine; Turnstile, domain allowlist, and rate limits at the project./ai.md, /llms.txt)MIT