# How to integrate Fillout forms MCP with Atomic Agent

```json
{
  "title": "How to integrate Fillout forms MCP with Atomic Agent",
  "toolkit": "Fillout forms",
  "toolkit_slug": "fillout_forms",
  "framework": "Atomic Agent",
  "framework_slug": "atomic-agent",
  "url": "https://composio.dev/toolkits/fillout_forms/framework/atomic-agent",
  "markdown_url": "https://composio.dev/toolkits/fillout_forms/framework/atomic-agent.md",
  "updated_at": "2026-08-11T13:09:33.283Z"
}
```

## Introduction

Atomic Agent is an open-source AI agent that runs on your machine and supports local models through llama.cpp. Connect it to 1,500+ apps through Composio, including Fillout forms.
This guide uses Atomic Agent's built-in Composio integration. You need Atomic Agent v0.5.6 or later, your own Composio API key, and a Fillout forms account. See the [Atomic Agent documentation](https://atomicagent.io/docs/?cta_placement=atomic-agent-docs) for installation instructions.

## Also integrate Fillout forms with

- [OpenAI Agents SDK](https://composio.dev/toolkits/fillout_forms/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/fillout_forms/framework/claude-agents-sdk)
- [Claude Code](https://composio.dev/toolkits/fillout_forms/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/fillout_forms/framework/claude-cowork)
- [Codex](https://composio.dev/toolkits/fillout_forms/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/fillout_forms/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/fillout_forms/framework/hermes-agent)
- [Google ADK](https://composio.dev/toolkits/fillout_forms/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/fillout_forms/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/fillout_forms/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/fillout_forms/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/fillout_forms/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/fillout_forms/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/fillout_forms/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/fillout_forms/framework/autogen)

## TL;DR

### How Atomic Agent connects to Fillout forms
Atomic Agent connects to Composio's Tool Router over Streamable HTTP MCP. It discovers the tools needed for your request, and Composio handles account authentication.
Execution and account-connection tools follow Atomic Agent's configured approval policy. Review any approval prompt before allowing an action on your connected account.

## Connect Fillout forms to Atomic Agent

### Connect Fillout forms to Atomic Agent
- Sign up or sign in to the [Composio dashboard](https://dashboard.composio.dev/?cta_placement=atomic-agent-api-key). Copy your API key.
- In Atomic Agent, open the Integrations tab and select Composio. Select API key, press e, paste the key, and press Enter. The tools become available immediately, without a restart.
- Ask Atomic Agent to do something in Fillout forms. It searches Composio for the right tool.
- On first use, open the sign-in link returned in the chat. Connect your Fillout forms account, then return to Atomic Agent to continue.
### Headless setup
Add the following line to ~/.atomic-agent/.env, replacing YOUR_COMPOSIO_API_KEY with your key. Start Atomic Agent after saving the file.

```bash
COMPOSIO_API_KEY=YOUR_COMPOSIO_API_KEY
```

## What is the Fillout forms MCP server, and what's possible with it?

The Fillout forms MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Fillout account. It provides structured and secure access to your forms and form management tools, so your agent can fetch form data, list all your forms, manage authorization, and help automate form workflows on your behalf.
- Comprehensive form listing: Instantly retrieve and display a list of all forms in your Fillout account, making it easy to review and manage your surveys and data collection tools.
- Seamless authorization management: Let your agent handle the OAuth authorization flow for securely connecting third-party applications to your Fillout account—no manual steps required.
- Token revocation and security: Instruct your agent to programmatically invalidate or revoke access tokens, ensuring that only trusted applications and users have access to your Fillout data.
- Automated workflow integration: Use your agent to connect Fillout forms with other apps or workflows, streamlining data collection and processing without manual intervention.

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `FILLOUT_FORMS_AUTHORIZE_O_AUTH` | Authorize OAuth | Tool to initiate the OAuth authorization process for third-party applications. Use when you need to generate the URL to redirect your users to the Fillout consent page. |
| `FILLOUT_FORMS_CREATE_DATABASE` | Create Database | Tool to create a new Zite database instance with tables and fields. Use when you need to create a structured database in Fillout with custom tables and field definitions. Each database must have at least one table, and each table must have at least one field. |
| `FILLOUT_FORMS_CREATE_DATABASE_WEBHOOK` | Create Database Webhook | Tool to create a webhook subscription for a Fillout database. The webhook will receive HTTP POST notifications when subscribed events occur (e.g., record.created, record.updated, record.deleted). Use when you need to set up real-time notifications for database changes. Maximum 100 webhooks per database. |
| `FILLOUT_FORMS_CREATE_FIELD` | Create field | Tool to add a new field to an existing table with specified type, name, and configuration. Use when you need to extend a database table with additional columns. |
| `FILLOUT_FORMS_CREATE_RECORD` | Create record | Tool to create a new record in a Fillout table with the provided field data. Use when you need to add a new entry to a specific table in your Fillout database. The record parameter should be a dictionary where keys are field names (or field IDs) from your table schema, and values are the data to store in those fields. |
| `FILLOUT_FORMS_CREATE_TABLE` | Create table | Tool to add a new table with custom schema to an existing database. Use when you need to create a structured table in a Fillout database with specific field definitions. Each table must have at least one field. |
| `FILLOUT_FORMS_DELETE_DATABASE` | Delete database | Tool to permanently delete a database and all its data including tables, fields, views, and records. Use when you need to completely remove a database. Warning: This action cannot be undone. |
| `FILLOUT_FORMS_DELETE_DATABASE_WEBHOOK` | Delete database webhook | Tool to remove a webhook subscription from a Fillout database. Use when you need to delete an existing webhook from a specific database. |
| `FILLOUT_FORMS_DELETE_FIELD` | Delete field | Tool to permanently delete a field from a table. Use when you need to remove a field from a Fillout database table. Note: Cannot delete the primary field. |
| `FILLOUT_FORMS_DELETE_RECORD` | Delete record | Tool to permanently delete a record from a table in Fillout Database. Use when you need to remove a specific record. This action cannot be undone. |
| `FILLOUT_FORMS_DELETE_TABLE` | Delete table | Tool to permanently delete a table and all its data including fields, views, and records from a Fillout database. Use when you need to remove a table. This action cannot be undone. |
| `FILLOUT_FORMS_GET_DATABASE_BY_ID` | Get database by ID | Tool to retrieve detailed information about a specific database including all tables, fields, and views. Use when you need to get comprehensive database structure and metadata by database ID. |
| `FILLOUT_FORMS_GET_DATABASES` | Get databases | Tool to retrieve a list of all databases for your organization. Use when you need to list available databases after authenticating with Fillout. |
| `FILLOUT_FORMS_GET_FORMS` | Get forms | Tool to retrieve a list of all forms in your account. Use when you need to list your forms after authenticating with Fillout. |
| `FILLOUT_FORMS_GET_RECORD_BY_ID` | Get record by ID | Tool to retrieve a single record by its UUID with all field data. Use when you need to fetch detailed information for a specific record from a Fillout table. |
| `FILLOUT_FORMS_INVALIDATE_ACCESS_TOKEN` | Invalidate Access Token | Revokes an OAuth access token obtained from Fillout's OAuth authorization flow. Use this action when a user logs out, disconnects their account, or when you need to programmatically revoke a third-party app's access to Fillout data. Important notes: - This action is for OAuth tokens only, NOT for API keys - OAuth tokens are obtained via the OAuth flow (authorize -> token exchange) - The operation is idempotent: invalidating an already-invalidated token succeeds - After invalidation, the token can no longer be used for API requests Example: A user disconnects your app from Fillout - call this to revoke their access token. |
| `FILLOUT_FORMS_LIST_DATABASE_WEBHOOKS` | List database webhooks | Tool to retrieve all webhook subscriptions configured for a specific database. Use when you need to list, audit, or manage existing webhooks for a database. |
| `FILLOUT_FORMS_LIST_RECORDS` | List Records | Tool to retrieve records from a Fillout table with filtering, sorting, and pagination. Supports complex filter conditions using AND/OR logic and 14 operators (equals, contains, greater_than, in, is_empty, etc.). Use when you need to query table data with specific conditions or retrieve paginated results. |
| `FILLOUT_FORMS_REMOVE_FORM_WEBHOOK` | Remove form webhook | Tool to remove a webhook by its ID. Use when you need to delete an existing webhook from your Fillout account. |
| `FILLOUT_FORMS_UPDATE_FIELD` | Update field | Tool to modify field properties and configuration for an existing field in a Fillout database table. Use when you need to update field names or change field configuration settings. |
| `FILLOUT_FORMS_UPDATE_RECORD` | Update record | Tool to update specific fields of an existing record in a Fillout table. Use when you need to modify particular fields without affecting other fields in the record. Only the fields specified in the request will be updated. |
| `FILLOUT_FORMS_UPDATE_TABLE` | Update table | Tool to update table properties like name. Use when you need to modify table metadata such as renaming a table in a Fillout database. |

## Supported Triggers

None listed.

## Troubleshooting

### Why is my API key rejected?

Copy the key directly from the Composio dashboard. Atomic Agent requires ASCII characters because it sends the key in an HTTP header. Remove any extra characters introduced when copying.

### Why are Composio tools unavailable after saving a key?

Check that you use Atomic Agent v0.5.6 or later and that Composio is enabled in your configuration. A "composio": { "enabled": false } setting disables the integration while keeping the saved key on disk.

### Does Composio have a free plan?

The Hobby plan includes 100,000 tool calls per month. Composio-managed OAuth apps have a lower included allowance. See [Composio pricing](/pricing) for the current limits that apply to your connection.

## Complete Code

None listed.

## Conclusion

### Use Fillout forms from Atomic Agent
With your account connected, ask Atomic Agent to work with Fillout forms in natural language. You can connect more apps through the same Composio integration as you need them.
Visit the [Atomic Agent website](https://atomicagent.io/?cta_placement=atomic-agent-site) or inspect the [Atomic Agent source code](https://github.com/AtomicBot-ai/atomic-agent?cta_placement=atomic-agent-repo).

## How to build Fillout forms MCP Agent with another framework

- [OpenAI Agents SDK](https://composio.dev/toolkits/fillout_forms/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/fillout_forms/framework/claude-agents-sdk)
- [Claude Code](https://composio.dev/toolkits/fillout_forms/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/fillout_forms/framework/claude-cowork)
- [Codex](https://composio.dev/toolkits/fillout_forms/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/fillout_forms/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/fillout_forms/framework/hermes-agent)
- [Google ADK](https://composio.dev/toolkits/fillout_forms/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/fillout_forms/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/fillout_forms/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/fillout_forms/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/fillout_forms/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/fillout_forms/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/fillout_forms/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/fillout_forms/framework/autogen)

## Related Toolkits

- [0CodeKit](https://composio.dev/toolkits/0codekit) - 0CodeKit is a utility API platform for AI, document, image, and data workflows. Use it to convert, validate, generate, store, and automate data without custom backend code.
- [Airtop](https://composio.dev/toolkits/airtop) - Airtop is a cloud browser platform for AI-powered web automation. Use it to navigate sites, extract data, and run reusable browser workflows.
- [Apify MCP](https://composio.dev/toolkits/apify_mcp) - Apify MCP is the official MCP server for Apify's web scraping and browser automation platform. Use it to run actors, collect structured web data, and automate crawling workflows.
- [Apilio](https://composio.dev/toolkits/apilio) - Apilio is a home automation platform that lets you connect and control smart devices from different brands. It helps you build flexible automations with complex conditions, schedules, and integrations.
- [Basin](https://composio.dev/toolkits/basin) - Basin is a no-code form backend for quickly setting up reliable contact forms. It lets you collect and manage form submissions without writing any server-side code.
- [Bika.ai](https://composio.dev/toolkits/bika) - Bika.ai is an AI automation database platform for managing spaces, teams, records, automations, and outgoing webhooks. It helps teams organize structured data and automate database-driven workflows in one place.
- [Botster](https://composio.dev/toolkits/botster) - Botster is a web automation service for running configurable data collection bots. Use it to collect structured web data without building and maintaining scrapers yourself.
- [Bouncer](https://composio.dev/toolkits/bouncer) - Bouncer is an email validation platform that verifies the authenticity of email addresses in real-time and batch. It helps boost deliverability and reduce bounce rates for your communications.
- [BrowserAct](https://composio.dev/toolkits/browseract) - BrowserAct is a hosted browser-automation service for running web workflows. Use it to execute repeatable browser tasks with templates, proxies, and APIs.
- [Celigo](https://composio.dev/toolkits/celigo) - Celigo is an integration platform as a service for connecting apps, data, and business workflows. It helps teams automate cross-system processes without building every integration from scratch.
- [CheckFlow](https://composio.dev/toolkits/checkflow) - CheckFlow is a workflow and checklist platform for repeatable processes, tasks, templates, teams, data sets, and automation. Use it to standardize operations, track process execution, and keep teams aligned.
- [Conveyor](https://composio.dev/toolkits/conveyor) - Conveyor is a platform that automates security reviews with a Trust Center and AI-driven questionnaire automation. It streamlines compliance and vendor security processes for faster, hassle-free reviews.
- [Cronfree Time Scheduler](https://composio.dev/toolkits/cronfree_time_scheduler) - Cronfree Time Scheduler is an API-based scheduler for recurring webhook calls. Use it to create and remove timezone-aware schedules without running cron.
- [Crowdin](https://composio.dev/toolkits/crowdin) - Crowdin is a localization management platform that streamlines translation workflows and collaboration. It helps teams centralize multilingual content, boost productivity, and automate translation processes.
- [Databox](https://composio.dev/toolkits/databox) - Databox is a business analytics platform that connects your data from any tool and device. It helps you track KPIs, build dashboards, and discover actionable insights.
- [Detrack](https://composio.dev/toolkits/detrack) - Detrack is a delivery management platform for real-time tracking and proof of delivery. It helps businesses automate notifications and keep customers updated every step of the way.
- [Dify](https://composio.dev/toolkits/dify) - Dify is a platform for running and managing published workflow apps via a Service API. Use it to execute workflows and inspect configuration and run history quickly.
- [Digital Humani](https://composio.dev/toolkits/digital_humani) - Digital Humani is a reforestation API for browsing planting projects, submitting tree requests, and tracking planted trees. It helps teams connect climate action directly to products, campaigns, and customer experiences.
- [Dnsfilter](https://composio.dev/toolkits/dnsfilter) - Dnsfilter is a cloud-based DNS security and content filtering solution. It helps organizations block online threats and manage safe internet access with ease.
- [EnforcedFlow](https://composio.dev/toolkits/enforcedflow) - EnforcedFlow is a work routing platform for advanced round-robin groups, agent criteria, availability, and email assignments. It helps teams distribute work fairly and quickly using configurable assignment rules.

## Frequently Asked Questions

### What are the differences in Tool Router MCP and Fillout forms MCP?

With a standalone Fillout forms MCP server, the agents and LLMs can only access a fixed set of Fillout forms tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Fillout forms and many other apps based on the task at hand, all through a single MCP endpoint.

### Can I use Tool Router MCP with Atomic Agent?

Yes, you can. Atomic Agent fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Fillout forms tools.

### Can I manage the permissions and scopes for Fillout forms while using Tool Router?

Yes, absolutely. You can configure which Fillout forms scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

### How safe is my data with Composio Tool Router?

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Fillout forms data and credentials are handled as safely as possible.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
