Docs & Support

Learn about all the Formidable features and get support from our amazing customer success team.

Add-onsAutomation
Connect Formidable Forms to Your AI Agent with MCP

Connect Formidable Forms to Your AI Agent with MCP

Formidable Forms includes a Model Context Protocol (MCP) server, so you can connect your AI agent with MCP to your site. MCP lets a compatible AI agent, such as Claude Code or Codex, discover and run Formidable abilities with the permissions of a WordPress user.

The MCP server is built into Formidable Forms, including Formidable Forms Lite. You don't need the API add-on, a separate MCP Adapter plugin, or Composer on the WordPress site.

The MCP server is part of Formidable Forms 7.0 and newer. Earlier versions included it in the Formidable API add-on.

Requirements

  • Formidable Forms 7.0 or newer. Formidable Forms Lite is enough for the MCP server and the core abilities. No license or add-on is needed.
  • Formidable Forms Pro with an active license for the Pro abilities, and Formidable Views 5.13 or later for the View and View layout abilities.
  • Formidable Coupons 1.1 or later for the coupon abilities, and Formidable Landing Pages 1.0.04 or later for the landing page abilities.
  • WordPress 6.9 or later, which includes the WordPress Abilities API.
  • PHP 7.4 or newer.
  • A compatible MCP client. The setup prompt on the MCP tab supports Claude Code and Codex.
  • For a connection file or another HTTP connection: Application Passwords turned on for your WordPress account, and HTTPS on a public site.
  • For an HTTP connection: permalinks set to any structure other than Plain under Settings → Permalinks.
  • For a local standard input and output connection: PHP and WP-CLI on the computer that runs the client.

Formidable Forms makes advanced site building simple. Launch forms, directories, dashboards, and custom WordPress apps faster than ever before.

Turn on the MCP server

The MCP server is off until you turn it on, so no AI client can use it until you allow it.

Important: Use a staging site while you configure and test MCP. An MCP client can run every Formidable operation that its WordPress user can run.
  1. Go to Formidable → Global Settings and click the MCP tab.
    MCP - Global Settings menu item and MCP tab
  2. Toggle on Enable the Formidable MCP server.
    MCP - Enable the Formidable MCP server toggle
  3. Click Update to save your changes.

This setting controls AI access for the whole site. It turns on both the Formidable MCP server and the Formidable abilities. When it's off, no MCP server can use the Formidable abilities, and they aren't registered for the WordPress Abilities API either.

After you save, the MCP tab shows 2 setup steps, Download your connection file and Connect your AI assistant, and the MCP Connections table.

If the Formidable API add-on is active, update it to version 2.0.2 or newer. With version 2.0.1 or older active, the MCP tab doesn't appear. Versions 2.0 and 2.0.1 keep their own MCP setting under Global Settings → API. If the MCP tab shows "This setting comes from the Formidable API add-on", click Update once. From then on, the MCP tab manages the setting.

Choose a connection method

SituationRecommended connectionCredential
You use Claude Code or Codex and want the quickest setup.Connection file and setup prompt (HTTP)An Application Password that Formidable creates for your account. It only works with the Formidable MCP server.
The AI client runs on the WordPress host or local development machine.WP-CLI standard input and outputWordPress username, user ID, or email. No Application Password.
Another client, or a dedicated WordPress user, connects to a remote site.HTTPS MCP endpoint with your own Application PasswordWordPress username and Application Password.

Connect a remote site through HTTP

A connection file holds everything the Formidable skill needs to reach your site over HTTP. It contains the site URL, your WordPress username, and a new Application Password.

Protect your credentials: Keep the connection file private and out of version control. Never paste its contents or an Application Password into an AI conversation, shared document, browser URL, or source repository.

Download your connection file

  1. On the MCP tab, under 1. Download your connection file, click Download frm-mcp.env. Your browser saves a file named frm-mcp.env.
    MCP - Download your connection file

Each download creates a new Application Password for your WordPress account. The password only works with the Formidable MCP server: it's refused on other REST API routes and outside the REST API. After the first download, the button changes to Download a new file.

The file belongs to the account that downloads it, and only users who can access the Formidable settings page can download one. To connect as a dedicated user with fewer permissions, use your own Application Password or a WP-CLI connection instead.

Connect your AI assistant

The setup prompt installs the Formidable skill, adds your connection file, and tests the connection.

  1. Under 2. Connect your AI assistant, select Claude Code or Codex.
  2. Click Copy setup prompt. To read the prompt first, click Show the setup prompt.
    MCP - Connect your AI assistant with the setup prompt
  3. Paste the prompt into Claude Code or Codex on the computer where you downloaded the file.

The prompt asks the assistant to:

  1. Install the Formidable skill, or update it if it's already installed.
  2. Move the newest frm-mcp*.env file from your Downloads folder into the installed skill's scripts folder, next to the frm-mcp helper, as frm-mcp.env. It replaces any older file there and never opens or prints it.
  3. Run the skill's scripts/frm-mcp-setup script to confirm the connection. After that, use the scripts/frm-mcp helper for your Formidable requests.

The helper reads frm-mcp.env from its own scripts folder. A skill update installs the helper in a new version folder, so move the file beside the current helper after each update.

In Codex, approve running frm-mcp outside the sandbox when Codex asks. Its default sandbox blocks network access, so the helper can't reach your site until you approve.

While the MCP tab waits, it shows "Waiting for your assistant to connect…". When the assistant connects with the file, both steps are marked complete and the tab shows when the connection was last active.

To install the skill yourself, click Install the skill manually and then Download the skill, or follow Install the Formidable skill.

Manage connection files

Revoke a connection file when its assistant no longer needs access, or when you download a newer file.

  1. Under Download your connection file, click Manage 1 connection file. The number shows how many of your connection files are still active, such as Manage 3 connection files. The list shows when each file was created and last used.
  2. Click Revoke next to a file to delete its Application Password and disconnect its assistant.
    MCP - Manage 1 connection file link and Revoke button, numbered 1 and 2

The list and its number update when the page loads. If a file you just downloaded isn't listed, reload the MCP tab.

Revoke all connection files before you deactivate Formidable Forms. Without Formidable, their passwords keep working as regular Application Passwords.

Use your own Application Password

Use this method for a dedicated WordPress user, or for a client that doesn't use the setup prompt.

Create the Application Password as the WordPress user the client will act as.

  1. Sign in as the dedicated WordPress user.
  2. Go to Profile and scroll to Application Passwords. An administrator finds it under Users → Profile.
  3. Enter a name under New Application Password Name.
  4. Click Add Application Password.
  5. Copy the password immediately. WordPress shows it only once.

The complete MCP endpoint is https://example.com/wp-json/mcp/formidable-mcp. A setup helper can ask for the base site URL and add the MCP path itself.

To use the skill's helper with your own password, create the connection file yourself:

  1. In the installed skill's scripts folder, copy frm-mcp.env.example to frm-mcp.env and restrict its permissions.
  2. Edit the file yourself and add the site URL, WordPress username, and Application Password.
  3. Run the setup check from the same folder.
cd /absolute/path/to/formidable-mcp/scripts
cp frm-mcp.env.example frm-mcp.env
chmod 600 frm-mcp.env
# Edit frm-mcp.env and set these three lines to your own values:
# SITE_URL="https://example.com"
# WP_USERNAME="your-username"
# APPLICATION_PASSWORD="xxxx xxxx xxxx xxxx xxxx xxxx"
bash ./frm-mcp-setup

When the setup check succeeds, it prints Connected. and a sample call. Use bash ./frm-mcp-setup because some download tools don't preserve the executable file permission.

A compatible MCP client or the supplied helper manages the HTTP session automatically.

A custom client must manage the session itself. It initializes a session, saves the Mcp-Session-Id response header, and sends notifications/initialized. It then includes the same session ID on later requests and closes the session when it finishes.

Store credentials in the client's protected credential storage or a protected local configuration file. Don't put credentials in a prompt.

Install the Formidable skill

The Formidable MCP skill gives an AI client Formidable workflows, payload shapes, and verification rules. A working MCP connection doesn't teach the client how to use complex Formidable operations safely, so install the skill too. The setup prompt installs it for you in Claude Code and Codex.

On the MCP tab, Install the skill manually → Download the skill downloads the current release as a ZIP. It shows Download the skill update when a newer release is out.

The ZIP doesn't install the skill, connect the MCP server, or grant WordPress access. For a manual installation, extract the ZIP and install the skills/formidable-mcp directory in your client.

Install in Claude Code

Choose the installation method that matches where you use Claude. Use the terminal commands for Claude Code in a shell. Use the Directory instructions for the Claude Desktop app.

Don't enter the terminal /plugin commands in a Claude Desktop chat.

Claude Code in a terminal

Run these commands in the Claude Code terminal:

/plugin marketplace add Strategy11/formidable-mcp-skill
/plugin install formidable-mcp@formidable

The setup prompt runs the same installation from your shell:

claude plugin marketplace add https://github.com/Strategy11/formidable-mcp-skill.git
claude plugin install formidable-mcp@formidable

The install command doesn't prove that automatic updates are on. Enable automatic updates in the marketplace settings, or update the skill manually:

claude plugin marketplace update formidable
claude plugin update formidable-mcp@formidable

Reload Claude Code after installation if the skill doesn't appear.

Claude Desktop

Use these steps in the Claude Desktop app:

  1. Open a chat in the Code tab.
  2. Click the + button next to the prompt.
  3. Select Add plugins….
  4. In Directory, select Plugins if it isn't already selected.
  5. Click the + button in the Plugins view.
  6. In Add marketplace, enter https://github.com/Strategy11/formidable-mcp-skill/.
  7. Click Sync and wait for the marketplace to load.
  8. Search for Formidable Forms MCP. In some versions, select the Code tab to see marketplaces added from a repository.
  9. Open Formidable Forms MCP by Strategy11, then click Install.
  10. Click Manage and confirm that the Skills list includes /formidable-mcp.

After installation, you can enter /formidable-mcp in the chat to use the skill directly. Claude can also use the skill automatically for relevant tasks. Continue with the MCP configuration and verification steps in this article.

To update the Desktop installation, click Manage. Then click Update when it's available. The control labels can differ between Claude Desktop versions.

Install in Codex

Use this section for Codex CLI. The setup prompt installs the skill as a Codex plugin with these commands:

codex plugin marketplace add Strategy11/formidable-mcp-skill
codex plugin add formidable-mcp@formidable

To update it, run codex plugin marketplace upgrade formidable and then codex plugin add formidable-mcp@formidable.

You can also ask the built-in Skill Installer to install the skill from the public repository in a new Codex task:

$skill-installer Install the formidable-mcp skill from https://github.com/Strategy11/formidable-mcp-skill/tree/main/skills/formidable-mcp

Codex reads user skills from $HOME/.agents/skills. It also scans .agents/skills in the current working directory and parent directories up to the repository root.

Start a new Codex task after installation. Restart Codex only if the installed skill doesn't appear. Don't use the Claude /plugin commands for this installation.

See the official OpenAI skill documentation for the current locations and controls.

Install manually

To install the skill manually for Codex CLI, run:

git clone https://github.com/Strategy11/formidable-mcp-skill.git
mkdir -p "$HOME/.agents/skills"
cp -R formidable-mcp-skill/skills/formidable-mcp "$HOME/.agents/skills/"

Use one installation method only. Don't install the same skill twice with different methods.

Use the ChatGPT desktop app

The ChatGPT desktop app supports standalone skills. On the same Codex host, it shares local MCP configuration with Codex CLI.

Use the Skills sidebar for a skill available through a ChatGPT-supported route. Then follow the MCP setup in this article. If the Formidable skill isn't available in the sidebar, you can still use the configured MCP server.

ChatGPT on the web

Current limitation: ChatGPT on the web can't use the local Codex configuration or start the local WP-CLI MCP server. Use Codex CLI, the ChatGPT desktop app with a local MCP configuration, or a supported Claude client.

Configure a dedicated WordPress user

For routine MCP work over WP-CLI or your own Application Password, use a dedicated WordPress user instead of a personal administrator account.

  1. Create a dedicated WordPress user for the integration.
  2. Assign the user to a WordPress role that you reserve for this integration. If you need a custom role, create it with a WordPress role-management plugin or custom code.
  3. Go to Formidable → Global Settings → Permissions.
  4. Under View Forms List, select the integration user's role. This permission is required for the first list-forms test.
  5. Click Update to save your changes.
  6. If you created a custom role, use your WordPress role-management tool to confirm that the role has the standard WordPress Read permission. This permission doesn't appear on the Formidable Permissions screen.
Role-based access: Each selection on the Formidable Permissions screen applies to all users with that WordPress role. Use a dedicated custom role when other users in the selected role must not receive the same Formidable access.

Grant each permission setting only when the planned tasks need it, so the integration user has no more access than its work requires:

Task familyPermission setting
View forms and fieldsView Forms List
Create or update forms and fieldsAdd and Edit Forms
Delete forms and fieldsDelete Forms
View entriesView Entries from Admin Area
View statisticsView Entries from Admin Area (not View Reports)
Create entriesAdd Entries from Admin Area
Update entriesEdit Entries from Admin Area
Delete entriesDelete Entries from Admin Area
List or get stylesView Forms List
Create, update, or delete stylesAccess this Settings Page
Assign a style to a formAdd and Edit Forms
List or get form actionsView Forms List
Create or update form actionsAdd and Edit Forms
Delete form actionsDelete Forms
List or get payments and subscriptionsView Entries from Admin Area
Refund a payment or cancel a subscriptionEdit Entries from Admin Area
Delete a payment or subscriptionThe WordPress administrator role
List or get applications and their itemsView Forms List
Create applications, or add and remove their itemsAdd and Edit Forms
Delete applicationsDelete Forms
List, get, or change Views and View layoutsAdd/Edit Views
List, get, or change couponsAccess this Settings Page
List or get landing pagesView Forms List
Save or update landing pagesAccess this Settings Page
Delete landing pagesAccess this Settings Page, and a WordPress role that can delete posts

The MCP abilities don't use the Add/Edit Applications and Access Application Dashboard settings. Application tasks use the form permissions in the table above.

The Global Settings overview explains the site-wide permission settings.

Connect a local site with WP-CLI

Prefer the WP-CLI connection for a local site. It doesn't create a reusable password. From the WordPress directory, list the available MCP servers:

wp mcp-adapter list

The list must include formidable-mcp. It appears only while the MCP server is turned on.

Start the server for the dedicated WordPress user:

wp mcp-adapter serve --server=formidable-mcp --user=YOUR_WORDPRESS_USERNAME

Your MCP client normally starts this process. Use the full paths to PHP, wp-cli.phar, the PHP configuration, and WordPress when wp isn't available in the client's environment.

On a Local by Flywheel site, a regular terminal can show "Error establishing a database connection". In the Local app, select the site and click Site shell under its name.

Run the wp commands in the terminal that opens. It uses that site's PHP, PHP configuration, database, and WP-CLI.

For the client configuration below, which php in that terminal shows the PHP path. The PHPRC variable shows the folder that holds the site's php.ini. On a Mac, Local's WP-CLI file is /Applications/Local.app/Contents/Resources/extraResources/bin/wp-cli/wp-cli.phar.

Configure the local server in Codex

By default, the ChatGPT desktop app, Codex CLI, and the Codex IDE extension share ~/.codex/config.toml on the same computer. A trusted project can instead use a project .codex/config.toml file.

To add the server with the command line, open a terminal on the machine where Codex runs.

In this example, formidable is the Codex connection name. You can use a different connection name. Keep formidable-mcp as the fixed Formidable server ID.

Replace each placeholder with a value from your environment:

codex mcp add formidable -- \
  /absolute/path/to/php \
  -c /absolute/path/to/php.ini \
  /absolute/path/to/wp-cli.phar \
  --path=/absolute/path/to/wordpress \
  mcp-adapter serve \
  --server=formidable-mcp \
  --user=YOUR_WORDPRESS_USERNAME

Verify the saved configuration:

codex mcp get formidable

To add the same server in the ChatGPT desktop app instead:

  1. Go to Settings → MCP servers and click Add server.
  2. Select STDIO and enter formidable as the server name.
  3. Set the server command to /absolute/path/to/php.
  4. Enter the values after the PHP path in the code example above as the server arguments, in the same order. Don't enter codex mcp add formidable -- in the desktop app.
  5. Click Save. Then click Restart.

Start a new Codex task after adding the server so the client can load it. Other MCP clients can use the same executable and arguments in their local process configuration.

Verify the connection

Verify each layer separately:

  1. Confirm that the client can see the installed formidable-mcp skill.
  2. Confirm that the client shows the MCP connection name that you configured and that the connection provides the Formidable MCP tools.
  3. Ask the client to run formidable-forms/list-forms without changing data.
  4. Confirm that the result matches the forms the WordPress user can view.
  5. For an HTTP connection, go to Formidable → Global Settings → MCP. In MCP Connections, find the client and the WordPress user, and confirm the expected operation under Recent Requests.
    MCP - MCP Connections table with a Claude Code row and a setup row

The MCP Connections table shows one row for each user and client, with the time of the last request and the most recent abilities called. It records HTTP MCP requests only, so a WP-CLI connection doesn't appear there. The skill's setup check shows as its own row, named setup.

Use a safe first prompt

Keep installation, connection, verification, and the real task as separate prompts. This makes failures easier to identify.

Install

Install the Formidable MCP skill from https://github.com/Strategy11/formidable-mcp-skill. Use the supported installation method for this client. Tell me how updates work. Do not ask for or accept credentials. Stop after the skill is available.

Connect and verify

Connect to SITE_URL with the Formidable MCP skill. For a local site, prefer the WP-CLI connection. For a remote site, tell me which protected local configuration file I must edit myself. Never request or show its contents. Verify the connection with formidable-forms/list-forms. Do not change data.

Run a Formidable task

Use the Formidable MCP skill on SITE_URL. Confirm the target site. Inspect the relevant ability schemas before use. Show the planned objects and fields before a destructive operation. After each change, verify the saved result with a separate get or list ability.

Understand the Formidable MCP server

Formidable registers this server:

  • Server ID: formidable-mcp
  • HTTP route: /wp-json/mcp/formidable-mcp
  • Local transport: standard input and output through WP-CLI
  • HTTP transport: authenticated JSON-RPC requests
  • Latest supported MCP protocol version: 2025-11-25
  • Also supported: 2025-06-18 and 2024-11-05

The server exposes 3 tools. Each Formidable operation runs through one of them.

MCP toolPurpose
mcp-adapter-discover-abilitiesList the public abilities registered with the server.
mcp-adapter-get-ability-infoGet the description, input schema, output schema, and annotations for one ability.
mcp-adapter-execute-abilityRun one ability with validated parameters.

Formidable Forms Lite registers 28 abilities for forms, fields, entries, styles, form actions, payments, and subscriptions. Formidable Forms Pro adds 13 for creating and updating entries, managing styles, statistics, and Applications.

Formidable Views adds 10 for Views and View layouts. Formidable Coupons 1.1 and Formidable Landing Pages 1.0.04 add 5 each for coupons and landing pages.

See the Formidable Abilities API for the full list.

An authenticated user with the standard WordPress Read permission can discover the public catalog. Each ability checks the required Formidable permission when the user tries to run it. When a client asks for an ability from a plugin the site doesn't have, the server names the plugin it needs.

Limitations

  • The Pro abilities need Formidable Forms Pro with an active license, and the View abilities need Formidable Views. The coupon and landing page abilities need the Formidable Coupons and Formidable Landing Pages add-ons.
  • When a license expires past its grace period, the Pro, Views, Coupons, and Landing Pages abilities are removed. The Formidable Forms Lite abilities keep working.
  • The Enable the Formidable MCP server setting turns off both MCP and Formidable ability registration.
  • A connection file's Application Password only works with the Formidable MCP server. It can list the MCP tools and get or run Formidable abilities. It can't run mcp-adapter-discover-abilities or reach any other REST API route.
  • View schemas accept draft for compatibility with older data. Use private for unpublished Views and publish for public Views.
  • The MCP Connections table shows HTTP activity only. It keeps a short recent request history rather than a complete audit log.
  • A local process configuration can reveal private paths and WordPress user IDs. Share a generic template instead of a personal configuration.
  • HTTP connections add credential, session, and network risk. Prefer WP-CLI when the client and WordPress site are on the same trusted machine.

Troubleshooting

The MCP tab is missing

Update the Formidable API add-on to version 2.0.2 or newer. The MCP tab doesn't appear while version 2.0.1 or older is active. Versions 2.0 and 2.0.1 run their own MCP server and keep their MCP setting under Formidable → Global Settings → API.

To create this file, your account needs Application Passwords, and public sites need HTTPS.

The MCP tab shows this message instead of Download frm-mcp.env.

Confirm that Application Passwords are turned on for your account and that the site uses HTTPS. A security plugin or your host can turn off Application Passwords. A local development site doesn't need HTTPS.

MCP is turned on but not running

The MCP tab names the reason after this message. Common reasons are a PHP version older than 7.4, a WordPress version without the Abilities API, or an incompatible MCP adapter loaded by another plugin.

Fix the reason shown. Then reload the MCP tab.

The Formidable MCP server is turned off

Toggle on Enable the Formidable MCP server under Formidable → Global Settings → MCP. Then click Update. The server returns HTTP 403 with this message while the setting is off.

This application password can only access Formidable MCP abilities.

A connection file's password was used for another REST API route or another plugin's ability. Use the file only with the Formidable MCP server. For other REST API requests, create a separate Application Password.

The client cannot find the skill

Confirm that one installed skill directory contains SKILL.md. Remove conflicting older copies. Restart the client if it doesn't detect the new skill.

'mcp-adapter' is not a registered wp command

WP-CLI shows this message while the MCP server is turned off. Toggle on Enable the Formidable MCP server under Formidable → Global Settings → MCP and click Update. Then run wp mcp-adapter list again.

The client cannot find the MCP server

Confirm that Enable the Formidable MCP server is on. Run wp mcp-adapter list for a local connection. Restart the client after you change its MCP configuration.

For an HTTP connection, confirm that permalinks aren't set to Plain.

Set SITE_URL (env or …/frm-mcp.env)

The helper can't find its connection file. This often happens after a skill update, because the helper now runs from a new version folder.

Move frm-mcp.env into the current helper's scripts folder, or download a new file and put it there. The message names the path the helper expects.

curl: (7) Failed to connect

Codex shows this message when its sandbox blocks the helper's network access. The same setup check works in a regular terminal.

Approve running frm-mcp outside the sandbox when Codex asks.

Discovery returns fewer abilities than expected

The catalog depends on the active plugins: 28 abilities with Formidable Forms Lite, 13 more with Formidable Forms Pro, and 10 more with Formidable Views. Formidable Coupons and Formidable Landing Pages add 5 more each. Confirm which products are active and licensed before you treat the difference as an error.

When a license expires past its grace period, only the 28 Formidable Forms Lite abilities stay.

An execution call is denied

Inspect the ability with mcp-adapter-get-ability-info. Then go to Formidable → Global Settings → Permissions and confirm that the user's role is selected under the required permission setting.

Use the permission table in this article to find the setting. Don't assign the administrator role unless the integration needs administrator access.

The connection works but MCP Connections is empty

The table records authenticated HTTP MCP traffic. It doesn't record the WP-CLI standard input and output transport.

WP-CLI cannot connect to the database

Use the PHP binary, PHP configuration, WordPress path, and database socket for the active site. A generic shell environment can use a different PHP or database host. On a Local by Flywheel site, run WP-CLI from the site's Site shell in the Local app.

Was this article helpful? *

This article may contain affiliate links. Once in a while, we earn commissions from those links. But we only recommend products we like, with or without commissions.

In this article

    We have a small, but amazing team of dedicated people who are committed to helping you achieve your goals and project requirements.


    Copyright © 2026 Strategy11, LLC. Formidable Forms® is a registered trademark Strategy11, LLC.

    Complete your purchase
    Don't forget your purchase!
    Complete Purchase
    Join 400,000+ using Formidable Forms to create form-focused solutions fast. Get Formidable Forms