Skip to content

Connectors · Marketing & media

Formstack MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Formstack and the rest of your systems. It gives your agent 100 Formstack actions (40 reads, 40 writes and 20 that wait for a confirmation) and holds the Formstack credential itself, so the agent never does. It paces Formstack's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "formstack.folders.list",  intent: "check which Formstack account is connected"}# List folders · read · 1 upstream call
  • 100actionsin one signed file
  • 40readlook, never change
  • 40writecreate and update
  • 20wait for a yesdestructive, confirmed first

Set up

Connect Formstack in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect Formstack.

    Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.

    • access_tokenFormstack personal access token (starts fs_pat_): sign in at https://admin.formstack.com, open Personal Access…
    account { op: "connections.requirements", service: "formstack" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "formstack.folders.list" }# list folders · read · 1 upstream callcheck { action: "formstack.folders.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

Formstack at a glance

Sign-in
Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
You provide
access_token
Limits we pace to
14,400 calls a day, per connection
API covered
Formstack API v2025.0 (OpenAPI 3.0.0) + Partner API v1www.formstack.com/api/v2025
Built from
Formstack's documentation, read 23 October 2026developers.formstack.comdevelopers.formstack.comdevelopers.formstack.com
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
37 of 40 reads, for up to 5 minutes; a write clears what it affects
Shared entities
3, so ask can line Formstack up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in Formstack.

100 actions in 20 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 40readlook, never change
  • 40writecreate and update
  • 20destructivewait for a confirmation
  1. Forms

    10

    3 read · 6 write · 1 destructive

    List forms · Create a form · Get a form · Update a form

  2. Partner subaccounts

    8

    6 read · 2 write · 0 destructive

    List partner subaccounts · Create a partner subaccount · Preview charges partner subaccount · Get a partner subaccount

  3. Smart list options

    8

    2 read · 3 write · 3 destructive

    Create a smart list option · Create bulk smart list option · List smart list options · Get a smart list option

  4. Submissions

    8

    4 read · 3 write · 1 destructive

    List submissions · Create a submission · Get a submission · Delete a submission

  5. Portals

    6

    2 read · 2 write · 2 destructive

    Create the portal copy · List portals · Get a portal · Update a portal

  6. Webhooks

    6

    3 read · 2 write · 1 destructive

    Create a webhook · List webhooks · Update a webhook · Get a webhook

  7. Confirmations

    5

    2 read · 2 write · 1 destructive

    Create a confirmation email · List confirmation emails · Get a confirmation email · Update a confirmation email

  8. Fields

    5

    2 read · 2 write · 1 destructive

    Create a form field · List form fields · Get a form field · Update a form field

12 more areas · 44 actions
  • Folders 5
  • Notifications 5
  • Smart lists 5
  • Submit actions 5
  • Subaccount themes 4
  • Partial submissions 3
  • Partner personal access tokens 3
  • Portal forms 3
  • Portal users 3
  • Subaccounts 3
  • Themes 3
  • Partner memberships 2

Top actions

The Formstack API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 25 of Formstack's 25 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
formstack.folders.listList foldersGet all folders on your account and their subfolders.readcontent.folder.list62 connectors
formstack.partner_memberships.listList subaccount membershipsList memberships for a subaccount.readidentity.user.list474 connectors
formstack.folders.createCreate a folderCreate a new folder.writecontent.folder.create62 connectors
formstack.folders.deleteDelete a folderDelete the specified folder.destructivecontent.folder.delete46 connectors
formstack.partner_memberships.updateUpdate a subaccount membershipUpdate membership for a subaccount.writeidentity.user.update280 connectors
formstack.forms.listList formsRetrieve a paginated list of forms with optional filtering and sorting.readcontent.form.list36 connectors
formstack.forms.createCreate a formCreate a new form with optional fields.writecontent.form.create26 connectors
formstack.submissions.listList submissionsRetrieve a paginated list of submissions for a specific form.readcontent.form_response.list20 connectors
formstack.submissions.createCreate a submissionCreate a new submission for the specified form.writecontent.form_response.create9 connectors
formstack.webhooks.createCreate a webhookCreate a new webhook for a form.writeautomation.webhook.create209 connectors
formstack.webhooks.listList webhooksList webhooks for a form.readautomation.webhook.list202 connectors
formstack.partner_subaccounts.listList partner subaccountsGet a list of subaccounts.readthis connector

Try it

Prompts to paste into Claude.

Each one names the Formstack actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Who has access in Formstack? List every user and their role.

    callsformstack.partner_memberships.list

  2. Writewrite

    Create a folder in Formstack. Show me exactly what you will send before you save it.

    callsformstack.folders.create

Governance for Formstack

Destructive actions wait for a yes.

20 Formstack actions are destructive. These are all of them:

  • Delete a folderformstack.folders.delete
  • Delete a formformstack.forms.delete
  • Delete a submissionformstack.submissions.delete
  • Delete a webhookformstack.webhooks.delete
  • Delete a form fieldformstack.fields.delete
  • Delete a themeformstack.themes.delete
  • Delete a portalformstack.portals.delete
  • Delete a smart listformstack.smart_lists.delete
  • Delete a portal formformstack.portal_forms.delete
  • Delete a portal userformstack.portal_users.delete
  • Delete a confirmation emailformstack.confirmations.delete
  • Delete a notification emailformstack.notifications.delete
  • Delete the portal avatarformstack.portals.delete_avatar
  • Delete a submit actionformstack.submit_actions.delete
  • Delete a subaccount themeformstack.subaccount_themes.delete
  • Delete a smart list optionformstack.smart_list_options.delete
  • Delete a partial submissionformstack.partial_submissions.delete
  • Delete all smart list optionformstack.smart_list_options.delete_all
  • Delete image smart list optionformstack.smart_list_options.delete_image
  • Revoke a Personal Access Token belonging to a subaccount userformstack.partner_personal_access_tokens.revoke

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

doformstack.folders.deleteconfirm_policy: human

Delete a folder?

intent: the user asked me to delete a folder

run suspended · waiting for a named person · key formstack-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "formstack-agent",  allowed_actions: ["formstack.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "formstack.folders.delete", approver: "[email protected]" },    { match: "formstack.forms.delete", approver: "[email protected]" },    { match: "formstack.submissions.delete", approver: "[email protected]" }  ]}
Illustrative. Scoped to Formstack only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What Formstack costs on actionlake.

Every Formstack action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Formstack refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 100 Formstack actions
  • 100actions pageeach page of a long list is one call
  • 37reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every Formstack action.

100 actions by area: the id your agent calls, what it does, and its effect.

Forms10
  • formstack.forms.assign_themeAssign a theme to a specific form in the current accountwrite
  • formstack.forms.copyCreate a copy of an existing form with optional configurationswrite
  • formstack.forms.createCreate a formwrite
  • formstack.forms.create_documents_integrationCreate a form WebMerge integrationwrite
  • formstack.forms.create_prefill_urlGenerate a prefilled form URL with specified field valueswrite
  • formstack.forms.deleteDelete a formdestructive
  • formstack.forms.getGet a formread
  • formstack.forms.get_htmlRetrieve HTML markup for a specific formread
  • formstack.forms.listList formsread
  • formstack.forms.updateUpdate a formwrite
Partner subaccounts8
  • formstack.partner_subaccounts.createCreate a partner subaccountwrite
  • formstack.partner_subaccounts.getGet a partner subaccountread
  • formstack.partner_subaccounts.get_app_api_keysGet app API keys for a subaccountread
  • formstack.partner_subaccounts.get_sso_configReturns current Organization's SSO configread
  • formstack.partner_subaccounts.listList partner subaccountsread
  • formstack.partner_subaccounts.list_productsGet a list of products available for provisioningread
  • formstack.partner_subaccounts.preview_chargesPreview charges partner subaccountread
  • formstack.partner_subaccounts.updateUpdate a partner subaccountwrite
Smart list options8
  • formstack.smart_list_options.createCreate a smart list optionwrite
  • formstack.smart_list_options.create_bulkCreate bulk smart list optionwrite
  • formstack.smart_list_options.deleteDelete a smart list optiondestructive
  • formstack.smart_list_options.delete_allDelete all smart list optiondestructive
  • formstack.smart_list_options.delete_imageDelete image smart list optiondestructive
  • formstack.smart_list_options.getGet a smart list optionread
  • formstack.smart_list_options.listList smart list optionsread
  • formstack.smart_list_options.updateUpdate a smart list optionwrite
Submissions8
  • formstack.submissions.countCounting form submissionsread
  • formstack.submissions.createCreate a submissionwrite
  • formstack.submissions.create_file_upload_urlsGenerate presigned S3 upload URLs for a file fieldwrite
  • formstack.submissions.deleteDelete a submissiondestructive
  • formstack.submissions.getGet a submissionread
  • formstack.submissions.listList submissionsread
  • formstack.submissions.searchRetrieve a paginated list of submissions across all formsread
  • formstack.submissions.updateUpdate a submissionwrite
Portals6
  • formstack.portals.copyCreate the portal copywrite
  • formstack.portals.deleteDelete a portaldestructive
  • formstack.portals.delete_avatarDelete the portal avatardestructive
  • formstack.portals.getGet a portalread
  • formstack.portals.listList portalsread
  • formstack.portals.updateUpdate a portalwrite
Webhooks6
  • formstack.webhooks.createCreate a webhookwrite
  • formstack.webhooks.deleteDelete a webhookdestructive
  • formstack.webhooks.getGet a webhookread
  • formstack.webhooks.get_payload_schemaGet OpenAPI definition for a form's webhookread
  • formstack.webhooks.listList webhooksread
  • formstack.webhooks.updateUpdate a webhookwrite
Confirmations5
  • formstack.confirmations.createCreate a confirmation emailwrite
  • formstack.confirmations.deleteDelete a confirmation emaildestructive
  • formstack.confirmations.getGet a confirmation emailread
  • formstack.confirmations.listList confirmation emailsread
  • formstack.confirmations.updateUpdate a confirmation emailwrite
Fields5
  • formstack.fields.createCreate a form fieldwrite
  • formstack.fields.deleteDelete a form fielddestructive
  • formstack.fields.getGet a form fieldread
  • formstack.fields.listList form fieldsread
  • formstack.fields.updateUpdate a form fieldwrite
Folders5
  • formstack.folders.createCreate a folderwrite
  • formstack.folders.deleteDelete a folderdestructive
  • formstack.folders.getGet a folderread
  • formstack.folders.listList foldersread
  • formstack.folders.updateUpdate a folderwrite
Notifications5
  • formstack.notifications.createCreate a notification emailwrite
  • formstack.notifications.deleteDelete a notification emaildestructive
  • formstack.notifications.getGet a notification emailread
  • formstack.notifications.listList notification emailsread
  • formstack.notifications.updateUpdate a notification emailwrite
Smart lists5
  • formstack.smart_lists.createCreate a smart listwrite
  • formstack.smart_lists.deleteDelete a smart listdestructive
  • formstack.smart_lists.getGet a smart listread
  • formstack.smart_lists.listList smart listsread
  • formstack.smart_lists.updateUpdate a smart listwrite
Submit actions5
  • formstack.submit_actions.createCreate a submit actionwrite
  • formstack.submit_actions.deleteDelete a submit actiondestructive
  • formstack.submit_actions.getGet a submit actionread
  • formstack.submit_actions.listList submit actionsread
  • formstack.submit_actions.updateUpdate a submit actionwrite
Subaccount themes4
  • formstack.subaccount_themes.copyCopies a theme from the current account to a specified subaccountwrite
  • formstack.subaccount_themes.deleteDelete a subaccount themedestructive
  • formstack.subaccount_themes.listList subaccount themesread
  • formstack.subaccount_themes.list_formsGet a paginated list of forms using the specified theme in the subaccountread
Partial submissions3
  • formstack.partial_submissions.deleteDelete a partial submissiondestructive
  • formstack.partial_submissions.getGet a partial submissionread
  • formstack.partial_submissions.listList partial submissionsread
Partner personal access tokens3
  • formstack.partner_personal_access_tokens.createCreate a membership personal access tokenwrite
  • formstack.partner_personal_access_tokens.listList membership personal access tokensread
  • formstack.partner_personal_access_tokens.revokeRevoke a Personal Access Token belonging to a subaccount userdestructive
Portal forms3
  • formstack.portal_forms.createCreate a portal formwrite
  • formstack.portal_forms.deleteDelete a portal formdestructive
  • formstack.portal_forms.updateUpdate a portal formwrite
Portal users3
  • formstack.portal_users.createCreate a portal userwrite
  • formstack.portal_users.deleteDelete a portal userdestructive
  • formstack.portal_users.updateUpdate a portal userwrite
Subaccounts3
  • formstack.subaccounts.assign_form_themeAssign a theme to a specific form in the subaccountwrite
  • formstack.subaccounts.copy_formCopies a form from the current account to a specified subaccountwrite
  • formstack.subaccounts.listList subaccountsread
Themes3
  • formstack.themes.copyCopies a theme within the current account (creates a duplicate)write
  • formstack.themes.deleteDelete a themedestructive
  • formstack.themes.listList themesread
Partner memberships2
  • formstack.partner_memberships.listList subaccount membershipsread
  • formstack.partner_memberships.updateUpdate a subaccount membershipwrite

Questions

The Formstack MCP server, answered.

Is there a Formstack MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 100 Formstack actions across forms, partner subaccounts, smart list options and submissions, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Formstack.

What do I need to connect Formstack?

Formstack personal access token (starts fs_pat_): sign in at https://admin.formstack.com, open Personal Access…. The free call account { op: "connections.requirements", service: "formstack" } lists exactly what to paste.

Can an AI agent delete or change things in Formstack?

Only if its key allows it, and only with an explicit confirmation. 20 Formstack actions are destructive, including delete a folder, delete a form and delete a submission. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my Formstack API limit?

actionlake paces every call to the limits in the Formstack service file: 14,400 calls a day per connection. Repeated reads are answered from cache (37 Formstack actions can be), which never reaches Formstack.

What does a Formstack action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (100 Formstack actions page). Cache hits, searches, dry runs and calls Formstack refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which Formstack API does it cover?

The Formstack API v2025.0 (OpenAPI 3.0.0) + Partner API v1 at www.formstack.com/api/v2025. It is built from Formstack's documentation as read on 23 October 2026. 100 actions in 20 areas, each one in the signed service file (version 1.0.0).

Does actionlake keep my Formstack data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Formstack credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent Formstack today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.