---
title: "fal.ai MCP server for AI agents - actionlake"
description: "Give Claude 86 fal.ai actions through one MCP server: asset collections, models. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/fal-ai
updated: 2026-10-23
---

Connectors · Accounting & finance

# fal.ai MCP server for AI agents.

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

[Connect fal.ai free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

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: "fal_ai.assets.list",
  intent: "check which fal.ai account is connected"
}
# Browse assets · read · 1 upstream call
```

- 86 actions in one signed file
- 47 read look, never change
- 27 write create and update
- 12 wait for a yes destructive, confirmed first

Set up

## Connect fal.ai 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 fal.ai.
   API key. 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.
   - `api_key` fal API key: fal.ai dashboard > Keys > Add key (shown once, `[key_id]:[secret]`)
   ```
   account { op: "connections.requirements", service: "fal_ai" }
   # 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: "fal_ai.assets.list" }
   # browse assets · read · 1 upstream call
   check { action: "fal_ai.asset_collections.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

fal.ai at a glance

**Sign-in**

API key. 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**

`api_key`

**Limits we pace to**

600 calls a minute, per connection

**API covered**

Fal Model APIs (queue, sync) + Platform API v1`api.fal.ai`

**Built from**

fal.ai's documentation, read 23 October 2026[api.fal.ai](https://api.fal.ai/v1/openapi.json) [fal.ai](https://fal.ai/docs/api-reference/inference-api/openapi/queue.json) [fal.ai](https://fal.ai/docs/api-reference/inference-api/openapi/sync.json)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

45 of 47 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

2, so ask can line fal.ai up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in fal.ai.

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

- **47** read look, never change
- **27** write create and update
- **12** destructive wait for a confirmation

1. ### Asset collections
   12
   4 read · 6 write · 2 destructive
   List asset collections · Get asset collection · Create asset collection · Update asset collection
2. ### Models
   8
   7 read · 1 write · 0 destructive
   Billing Events · Estimate cost · Published model insights and weekly statistics (beta) · Model search
3. ### Asset characters
   7
   2 read · 4 write · 1 destructive
   List asset characters · Get asset character · Create asset character · Favorite asset character
4. ### Asset tags
   7
   1 read · 4 write · 2 destructive
   List asset tags · Create asset tag · Assign tag to asset · Set tags for an asset
5. ### Assets
   7
   4 read · 3 write · 0 destructive
   Browse assets · Get asset · List tags for an asset · Get asset lineage
6. ### Serverless apps
   6
   5 read · 0 write · 1 destructive
   List Applications · Application Events · Application Revisions · Runner State History
7. ### Asset entities
   5
   2 read · 2 write · 1 destructive
   List asset entities · Get asset entity · Create asset entity · Update asset entity
8. ### Storage
   5
   2 read · 3 write · 0 destructive
   Get file ACL · Get storage settings · Sign file URL · Set file ACL

**12 more areas · 29 actions**

- Keys **4**
- Queue **4**
- Compute instances **3**
- Organization **3**
- Requests **3**
- Serverless files **3**
- Workflows **3**
- Serverless **2**
- Account **1**
- Platform **1**
- Serverless logs **1**
- Serverless requests **1**

Top actions

## The fal.ai API, shaped for agents.

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

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `fal_ai.assets.list` Browse assets | Browse assets. | read | `content.file.list` 77 connectors |
| `fal_ai.assets.get` Get asset | Get asset. | read | `content.file.get` 74 connectors |
| `fal_ai.asset_collections.list` List asset collections | List asset collections. | read | `content.folder.list` 62 connectors |
| `fal_ai.asset_collections.get` Get asset collection | Get asset collection. | read | `content.folder.get` 47 connectors |
| `fal_ai.workflows.list` List user workflows | List user workflows. | read | `automation.workflow.list` 51 connectors |
| `fal_ai.asset_collections.create` Create asset collection | Create asset collection. | write | `content.folder.create` 62 connectors |
| `fal_ai.keys.list` List API Keys | List API Keys. | read | `identity.api_key.list` 96 connectors |
| `fal_ai.workflows.get` Get workflow details | Get workflow details. | read | `automation.workflow.get` 51 connectors |
| `fal_ai.asset_collections.update` Update asset collection | Update asset collection. | write | `content.folder.update` 48 connectors |
| `fal_ai.asset_collections.delete` Delete asset collection | Delete asset collection. | destructive | `content.folder.delete` 46 connectors |
| `fal_ai.keys.create` Create API Key | Create API Key. | write | `identity.api_key.create` 100 connectors |
| `fal_ai.organization.teams` Organization Teams | Organization Teams. | read | this connector |

Try it

## Prompts to paste into Claude.

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

1. Read read
   Which fal.ai files changed this week, and who changed them?
   calls `fal_ai.assets.list`
2. Write write
   Create asset collection in fal.ai. Show me exactly what you will send before you save it.
   calls `fal_ai.asset_collections.create`

Governance for fal.ai

## Destructive actions wait for a yes.

12 fal.ai actions are destructive. These are all of them:

- Delete asset collection `fal_ai.asset_collections.delete`
- Delete API Key `fal_ai.keys.delete`
- Revoke API Key `fal_ai.keys.revoke`
- Delete asset tag `fal_ai.asset_tags.delete`
- Unassign tag from asset `fal_ai.asset_tags.unassign`
- Delete asset entity `fal_ai.asset_entities.delete`
- Delete asset character `fal_ai.asset_characters.delete`
- Delete Compute Instance `fal_ai.compute_instances.delete`
- Delete request payloads `fal_ai.requests.delete_payloads`
- Flush Application Queue `fal_ai.serverless_apps.flush_queue`
- Remove asset from collection `fal_ai.asset_collections.remove_asset`
- Cancel a request `fal_ai.queue.cancel`

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.

do fal_ai.asset_collections.delete confirm_policy: **human**

Delete asset collection?

**intent:** the user asked me to delete asset collection

run suspended · waiting for a named person · key _fal-ai-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "fal-ai-agent",
  allowed_actions: ["fal_ai.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "fal_ai.asset_collections.delete", approver: "lead@example.com" },
    { match: "fal_ai.keys.delete", approver: "lead@example.com" },
    { match: "fal_ai.keys.revoke", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to fal.ai only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What fal.ai costs on actionlake.

Every fal.ai action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call fal.ai 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.

- 1 upstream call per action all 86 fal.ai actions
- 86 actions page each page of a long list is one call
- 45 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every fal.ai action.

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

**Asset collections 12**

- `fal_ai.asset_collections.add_asset` Add asset to collection write
- `fal_ai.asset_collections.create` Create asset collection write
- `fal_ai.asset_collections.delete` Delete asset collection destructive
- `fal_ai.asset_collections.favorite` Favorite asset collection write
- `fal_ai.asset_collections.get` Get asset collection read
- `fal_ai.asset_collections.hierarchy` Get asset collection hierarchy read
- `fal_ai.asset_collections.list` List asset collections read
- `fal_ai.asset_collections.list_assets` Browse assets in a collection read
- `fal_ai.asset_collections.move` Move asset collection write
- `fal_ai.asset_collections.remove_asset` Remove asset from collection destructive
- `fal_ai.asset_collections.unfavorite` Unfavorite asset collection write
- `fal_ai.asset_collections.update` Update asset collection write

**Models 8**

- `fal_ai.models.analytics` Analytics read
- `fal_ai.models.billing_events` Billing Events read
- `fal_ai.models.estimate_cost` Estimate cost read
- `fal_ai.models.insights` Published model insights and weekly statistics (beta) read
- `fal_ai.models.list` Model search read
- `fal_ai.models.pricing` Pricing read
- `fal_ai.models.run` Run a model write
- `fal_ai.models.usage` Usage read

**Asset characters 7**

- `fal_ai.asset_characters.create` Create asset character write
- `fal_ai.asset_characters.delete` Delete asset character destructive
- `fal_ai.asset_characters.favorite` Favorite asset character write
- `fal_ai.asset_characters.get` Get asset character read
- `fal_ai.asset_characters.list` List asset characters read
- `fal_ai.asset_characters.unfavorite` Unfavorite asset character write
- `fal_ai.asset_characters.update` Update asset character write

**Asset tags 7**

- `fal_ai.asset_tags.assign` Assign tag to asset write
- `fal_ai.asset_tags.create` Create asset tag write
- `fal_ai.asset_tags.delete` Delete asset tag destructive
- `fal_ai.asset_tags.list` List asset tags read
- `fal_ai.asset_tags.set_for_asset` Set tags for an asset write
- `fal_ai.asset_tags.unassign` Unassign tag from asset destructive
- `fal_ai.asset_tags.update` Update asset tag write

**Assets 7**

- `fal_ai.assets.favorite` Favorite asset write
- `fal_ai.assets.get` Get asset read
- `fal_ai.assets.lineage` Get asset lineage read
- `fal_ai.assets.list` Browse assets read
- `fal_ai.assets.list_tags` List tags for an asset read
- `fal_ai.assets.unfavorite` Unfavorite asset write
- `fal_ai.assets.upload_from_url` Upload asset write

**Serverless apps 6**

- `fal_ai.serverless_apps.flush_queue` Flush Application Queue destructive
- `fal_ai.serverless_apps.list` List Applications read
- `fal_ai.serverless_apps.list_events` Application Events read
- `fal_ai.serverless_apps.list_revisions` Application Revisions read
- `fal_ai.serverless_apps.queue_size` Queue Size read
- `fal_ai.serverless_apps.runner_history` Runner State History read

**Asset entities 5**

- `fal_ai.asset_entities.create` Create asset entity write
- `fal_ai.asset_entities.delete` Delete asset entity destructive
- `fal_ai.asset_entities.get` Get asset entity read
- `fal_ai.asset_entities.list` List asset entities read
- `fal_ai.asset_entities.update` Update asset entity write

**Storage 5**

- `fal_ai.storage.get_file_acl` Get file ACL read
- `fal_ai.storage.get_settings` Get storage settings read
- `fal_ai.storage.set_file_acl` Set file ACL write
- `fal_ai.storage.sign_file_url` Sign file URL write
- `fal_ai.storage.update_settings` Update storage settings write

**Keys 4**

- `fal_ai.keys.create` Create API Key write
- `fal_ai.keys.delete` Delete API Key destructive
- `fal_ai.keys.list` List API Keys read
- `fal_ai.keys.revoke` Revoke API Key destructive

**Queue 4**

- `fal_ai.queue.cancel` Cancel a request destructive
- `fal_ai.queue.result` Get request result read
- `fal_ai.queue.status` Get request status read
- `fal_ai.queue.submit` Submit a request write

**Compute instances 3**

- `fal_ai.compute_instances.delete` Delete Compute Instance destructive
- `fal_ai.compute_instances.get` Get Compute Instance read
- `fal_ai.compute_instances.list` List Compute Instances read

**Organization 3**

- `fal_ai.organization.billing_events` Organization Billing Events read
- `fal_ai.organization.teams` Organization Teams read
- `fal_ai.organization.usage` Organization Usage read

**Requests 3**

- `fal_ai.requests.delete_payloads` Delete request payloads destructive
- `fal_ai.requests.list_by_endpoint` List requests by endpoint(s) read
- `fal_ai.requests.search` Search Requests read

**Serverless files 3**

- `fal_ai.serverless_files.list_directory` List files (directory) read
- `fal_ai.serverless_files.list_root` List files (root) read
- `fal_ai.serverless_files.upload_from_url` Upload file from URL write

**Workflows 3**

- `fal_ai.workflows.create` Create a workflow write
- `fal_ai.workflows.get` Get workflow details read
- `fal_ai.workflows.list` List user workflows read

**Serverless 2**

- `fal_ai.serverless.analytics` Analytics read
- `fal_ai.serverless.usage` Usage read

**Account 1**

- `fal_ai.account.billing` Account Billing read

**Platform 1**

- `fal_ai.platform.meta` Get platform metadata read

**Serverless logs 1**

- `fal_ai.serverless_logs.history` Logs history (paginated) read

**Serverless requests 1**

- `fal_ai.serverless_requests.list_by_endpoint` List requests by endpoint(s) read

Questions

## The fal.ai MCP server, answered.

**Is there a fal.ai MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 86 fal.ai actions across asset collections, models, asset characters and asset tags, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by fal.ai.

**What do I need to connect fal.ai?**

Fal API key: fal.ai dashboard > Keys > Add key (shown once, `[key_id]:[secret]`). The free call account { op: "connections.requirements", service: "fal_ai" } lists exactly what to paste.

**Can an AI agent delete or change things in fal.ai?**

Only if its key allows it, and only with an explicit confirmation. 12 fal.ai actions are destructive, including delete asset collection, delete API Key and revoke API Key. 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 fal.ai API limit?**

actionlake paces every call to the limits in the fal.ai service file: 600 calls a minute per connection. Repeated reads are answered from cache (45 fal.ai actions can be), which never reaches fal.ai.

**What does a fal.ai action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (86 fal.ai actions page). Cache hits, searches, dry runs and calls fal.ai 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 fal.ai API does it cover?**

The fal Model APIs (queue, sync) + Platform API v1 at api.fal.ai. It is built from fal.ai's documentation as read on 23 October 2026. 86 actions in 20 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my fal.ai 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 fal.ai 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.

## More connectors like fal.ai

Shares the most action names with

- [Healthie 8](https://actionlake.com/connectors/healthie)
- [Smokeball 5](https://actionlake.com/connectors/smokeball)
- [Clio Manage 5](https://actionlake.com/connectors/clio-manage)
- [Actionstep 4](https://actionlake.com/connectors/actionstep)
- [IRIS Staffology Payroll 3](https://actionlake.com/connectors/iris-staffology-payroll)
- [Kinde Management API 3](https://actionlake.com/connectors/kinde-management-api)

Joins with, on shared entities

- [Mistral AI 2](https://actionlake.com/connectors/mistral-ai)
- [Botpress 2](https://actionlake.com/connectors/botpress)
- [OpenRouter 2](https://actionlake.com/connectors/openrouter)
- [Adobe Frame.io (V4) 2](https://actionlake.com/connectors/adobe-frame-io-v4)
- [Slack 1](https://actionlake.com/connectors/slack)
- [Adobe Workfront 1](https://actionlake.com/connectors/adobe-workfront)

Browse

- [All Accounting & finance connectors](https://actionlake.com/connectors/category/accounting-and-finance)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by fal.ai; the name is the vendor's own. Counts are from the fal.ai service file, version 1.0.0.

## Give your agent fal.ai today.

[Connect fal.ai free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

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

---

Source: https://actionlake.com/connectors/fal-ai
More: https://actionlake.com/llms.txt
