# Formdesk — how to use (mcp.ai)

Connect your Formdesk account and use 20 tools for forms and surveys straight from your AI agent. Connect with your own API key. Formdesk is an online form builder that allows users to create and manage professional online forms with flexible features and integrations.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_formdesk?ms=1787293500000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `formdesk_automatic_login`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/formdesk`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/formdesk/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/formdesk/automatic/login` — Validates the Formdesk API bearer token and returns authentication details. This action confirms that your connected Formdesk account credentials are valid by making a test API call to the /forms endp
  - body: { password?: string, username?: string }
- `POST https://api.mcp.ai/api/formdesk/create/entry` — Submit a new entry (result) to a Formdesk form. This action creates a new form submission with the provided field values. Before using this action: 1. Use FORMDESK_GET_FORM_LIST to find the form ID 2.
  - body: { fields: object, formId: string }
- `POST https://api.mcp.ai/api/formdesk/create/field` — Creates a new field in a Formdesk form. Use this action to add fields like text inputs, email fields, textareas, checkboxes, date pickers, etc. to an existing form. You must have the form ID from FORM
  - body: { field: object, formId: string }
- `POST https://api.mcp.ai/api/formdesk/create/visitor` — Tool to add a new visitor to a specific Formdesk form. Use when you need to register a visitor's metadata before submitting entries.
  - body: { formId: string, visitor: object }
- `POST https://api.mcp.ai/api/formdesk/delete/entry` — Deletes a specific entry (form submission/result) from a Formdesk form. This action is idempotent - it will succeed even if the entry doesn't exist (404), making it safe to call multiple times. Use th
  - body: { formId: string, entryId: string }
- `POST https://api.mcp.ai/api/formdesk/delete/field` — Tool to delete a specific field in a Formdesk form. Use after confirming formId and fieldId.
  - body: { form_id: string, field_id: string }
- `POST https://api.mcp.ai/api/formdesk/delete/form` — Delete a specific form from Formdesk. This action permanently removes a form from the Formdesk account. Use with caution as this operation is destructive and cannot be undone. If the form ID does not 
  - body: { form_id: string }
- `POST https://api.mcp.ai/api/formdesk/delete/visitor` — Deletes a specific visitor from a Formdesk form. This action is idempotent - it will succeed even if the visitor doesn't exist (404), making it safe to call multiple times. Use this to remove a visito
  - body: { form_id: string, visitor_id: string }
- `POST https://api.mcp.ai/api/formdesk/get/field/details` — Retrieves comprehensive details about a specific field in a Formdesk form. Returns structured information including field ID, name, type (e.g., text, email, number), label, validation rules, and wheth
  - body: { formId: string, fieldId: string }
- `POST https://api.mcp.ai/api/formdesk/get/form/details` — Retrieves comprehensive details about a specific Formdesk form by its ID. Returns form metadata including name, description, active status, timestamps, public URL, and configuration settings. Use this
  - body: { formId: string }
- `POST https://api.mcp.ai/api/formdesk/get/form/fields` — Tool to retrieve all fields of a specific form. Use after obtaining the formId to inspect its field definitions.
  - body: { formId: string }
- `POST https://api.mcp.ai/api/formdesk/get/form/list` — Retrieve a list of all forms in the Formdesk account. This action returns basic information about each form including its ID and name. Use the form ID with other actions (like Get Form Details, Get Fo
- `POST https://api.mcp.ai/api/formdesk/get/form/visitors` — Retrieves all visitors registered to access a specific Formdesk form. Visitors are users who have been granted access to view or complete a form. This action returns visitor details including their cr
  - body: { form_id: string }
- `POST https://api.mcp.ai/api/formdesk/get/visitor/details` — Retrieve complete details of a specific visitor in a Formdesk form. A visitor represents a unique person or entity who can submit entries to a form. Visitors have attributes (name, email, custom field
  - body: { form_id: string, visitor_id: string }
- `POST https://api.mcp.ai/api/formdesk/kvk/handelsregister/lookup` — Tool to lookup company details from the Dutch KVK Handelsregister. Use when auto-filling company address fields.
  - body: { street?: string, kvkNumber?: string, postalCode?: string, companyName?: string }
- `POST https://api.mcp.ai/api/formdesk/manage/visitor/entries` — Retrieve form entries (submissions) from a Formdesk form. This action fetches submission data from a form's results database. You can: - List all entries in a form - Filter entries by visitor ID - Ret
  - body: { form_id: string, entry_id?: string, visitor_id?: string }
- `POST https://api.mcp.ai/api/formdesk/multiple/pages/form` — Tool to create a multi-page Formdesk form. Use when you need forms split into multiple pages for better user experience.
  - body: { form: object }
- `POST https://api.mcp.ai/api/formdesk/update/field` — Updates properties of an existing field in a Formdesk form. This action modifies field configuration such as labels, types, validation rules, required status, placeholder text, help text, and default 
  - body: { formId: string, fieldId: string, properties: object }
- `POST https://api.mcp.ai/api/formdesk/update/form` — Updates properties of an existing form in Formdesk. Use this action to: - Rename a form - Activate or deactivate a form (control whether it accepts responses) - Update other form metadata At least one
  - body: { name?: string, formId: string, isActive?: boolean }
- `POST https://api.mcp.ai/api/formdesk/update/visitor` — Update an existing visitor's attributes in a Formdesk form. A visitor represents a unique person or entity who can submit entries to a form. This action modifies visitor attributes such as name, email
  - body: { formId: string, visitor: object, visitorId: string }

## Example prompts
- "What can I do in Formdesk?"
- "Show me a summary of my Formdesk account"

## More
- Page: https://mcp.ai/formdesk
- Agent spec (llms.txt): https://mcp.ai/formdesk/llms.txt
- Postman collection: https://mcp.ai/formdesk/postman.json
