---
title: "Adobe Frame.io (V4) MCP server for AI agents - actionlake"
description: "Give Claude 98 Adobe Frame.io (V4) actions through one MCP server: files, shares, folders. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/adobe-frame-io-v4
updated: 2026-10-23
---

Connectors · Marketing & media

# Adobe Frame.io (V4) MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Adobe Frame.io (V4) and the rest of your systems. It gives your agent 98 Adobe Frame.io (V4) actions (41 reads, 42 writes and 15 that wait for a confirmation) and holds the Adobe Frame.io (V4) credential itself, so the agent never does. It paces Adobe Frame.io (V4)'s limits and records every call. Connecting Adobe Frame.io (V4) needs your own Adobe Frame.io (V4) OAuth app and one admin sign-in.

[Connect Adobe Frame.io (V4) 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: "frame_io.accounts.list",
  intent: "check which Adobe Frame.io (V4) account is connected"
}
# List accounts · read · 1 upstream call
```

- 98 actions in one signed file
- 41 read look, never change
- 42 write create and update
- 15 wait for a yes destructive, confirmed first

Set up

## Connect Adobe Frame.io (V4) 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 Adobe Frame.io (V4).
   OAuth 2.0, authorization code. You register your own OAuth app with Adobe Frame.io (V4), an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on. actionlake stores what you paste write-only, sealed under your tenant's key.
   Before the first sign-in, Adobe Frame.io (V4) needs an OAuth app of your own, registered in its developer portal. actionlake has no Adobe Frame.io (V4) app to lend you.
   - `access_token` Access token from one sign-in with your own OAuth app
   - `refresh_token` Refresh token from the same sign-in; the access token is renewed from it
   - `client_id` Adobe Developer Console client ID: developer.adobe.com/console > your project > Add API > Frame.io API > User…
   - `client_secret` Client secret of the same OAuth Web App credential (Retrieve client secret)
   ```
   account { op: "connections.requirements", service: "frame_io" }
   # 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: "frame_io.accounts.list" }
   # list accounts · read · 1 upstream call
   check { action: "frame_io.folders.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Adobe Frame.io (V4) at a glance

**Sign-in**

OAuth 2.0, authorization code. You register your own OAuth app with Adobe Frame.io (V4), an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on.

**You provide**

`access_token` `refresh_token` `client_id` `client_secret`

**Limits we pace to**

10 calls a second, per connection

**API covered**

Frame.io V4 API (accounts, workspaces, projects, folders, files, version stacks, comments, shares, metadata, webhooks) API Frame.io v4.0`api.frame.io`

**Built from**

Adobe Frame.io (V4)'s documentation, read 23 October 2026[api.frame.io](https://api.frame.io/v4/openapi.json) [developer.adobe.com](https://developer.adobe.com/frameio/api/current/)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

39 of 41 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

8, so ask can line Adobe Frame.io (V4) up with your other systems

**Data**

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

Capabilities

## What an AI agent can do in Adobe Frame.io (V4).

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

- **41** read look, never change
- **42** write create and update
- **15** destructive wait for a confirmation

1. ### Files
   13
   3 read · 9 write · 1 destructive
   List files · Show file · Delete file · Update file
2. ### Shares
   12
   5 read · 4 write · 3 destructive
   List shares · List share activity · List share assets · List share reviewers
3. ### Folders
   10
   3 read · 6 write · 1 destructive
   List folders · Show folder · Create folder · Update folder
4. ### Comments
   7
   2 read · 3 write · 2 destructive
   List comments · Show comment · Create comment · Update comment
5. ### Projects
   7
   4 read · 2 write · 1 destructive
   List projects · Show project · Create project · Update project
6. ### Version stacks
   6
   3 read · 3 write · 0 destructive
   List version stacks · List version stack children · Show version stack · Copy version stack
7. ### Custom actions
   5
   2 read · 2 write · 1 destructive
   List actions · Show custom action details · Create custom action · Update custom action
8. ### Webhooks
   5
   2 read · 2 write · 1 destructive
   List webhooks · Show webhook · Create webhook · Update webhook

**14 more areas · 33 actions**

- Workspaces **5**
- Groups **4**
- Metadata field definitions **4**
- Folder user roles **3**
- Project user roles **3**
- Workspace user roles **3**
- Account user roles **2**
- Collections **2**
- Metadata **2**
- Accounts **1**
- Audit logs **1**
- Invited projects **1**
- Search **1**
- Users **1**

Top actions

## The Adobe Frame.io (V4) API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 36 of Adobe Frame.io (V4)'s 36 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `frame_io.files.list` List files | List files. | read | `content.file.list` 77 connectors |
| `frame_io.folders.list` List folders | List folders. | read | `content.folder.list` 62 connectors |
| `frame_io.account_user_roles.list` List account user roles | List account user roles. | read | `identity.user.list` 474 connectors |
| `frame_io.projects.list` List projects | List projects. | read | `work.project.list` 109 connectors |
| `frame_io.groups.list` List groups | List groups. | read | `identity.group.list` 262 connectors |
| `frame_io.workspaces.list` List workspaces | List workspaces. | read | `work.workspace.list` 50 connectors |
| `frame_io.comments.list` List comments | List comments. | read | `content.file_comment.list` 12 connectors |
| `frame_io.users.me` Show user | Show user. | read | `identity.current_user.get` 307 connectors |
| `frame_io.folders.create` Create folder | Create folder. | write | `content.folder.create` 62 connectors |
| `frame_io.projects.create` Create project | Create project. | write | `work.project.create` 102 connectors |
| `frame_io.folders.update` Update folder | Update folder. | write | `content.folder.update` 48 connectors |
| `frame_io.files.delete` Delete file | Delete file. | destructive | `content.file.delete` 68 connectors |

Try it

## Prompts to paste into Claude.

Each one names the Adobe Frame.io (V4) actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Give me a one-line status for every active Adobe Frame.io (V4) project.
   calls `frame_io.projects.list`
2. Write write
   Create folder in Adobe Frame.io (V4). Show me exactly what you will send before you save it.
   calls `frame_io.folders.create`

Governance for Adobe Frame.io (V4)

## Destructive actions wait for a yes.

15 Adobe Frame.io (V4) actions are destructive. These are all of them:

- Delete file `frame_io.files.delete`
- Delete folder `frame_io.folders.delete`
- Delete project `frame_io.projects.delete`
- Delete comment `frame_io.comments.delete`
- Delete workspace `frame_io.workspaces.delete`
- Delete share `frame_io.shares.delete`
- Delete webhook `frame_io.webhooks.delete`
- Remove asset from share `frame_io.shares.remove_asset`
- Delete custom action `frame_io.custom_actions.delete`
- Removes reviewers from secure share `frame_io.shares.remove_reviewers`
- Remove a user from a given folder `frame_io.folder_user_roles.delete`
- Remove a user from a given project `frame_io.project_user_roles.delete`
- Delete comment attachment `frame_io.comments.delete_attachment`
- Remove a user from a given workspace `frame_io.workspace_user_roles.delete`
- Delete account level custom field definitions `frame_io.metadata_field_definitions.delete`

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 frame_io.files.delete confirm_policy: **human**

Delete file?

**intent:** the user asked me to delete file

run suspended · waiting for a named person · key _frame-io-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "frame-io-agent",
  allowed_actions: ["frame_io.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "frame_io.files.delete", approver: "lead@example.com" },
    { match: "frame_io.folders.delete", approver: "lead@example.com" },
    { match: "frame_io.projects.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Adobe Frame.io (V4) only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What Adobe Frame.io (V4) costs on actionlake.

Every Adobe Frame.io (V4) action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Adobe Frame.io (V4) 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 98 Adobe Frame.io (V4) actions
- 25 actions page each page of a long list is one call
- 39 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 Adobe Frame.io (V4) action.

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

**Files 13**

- `frame_io.files.bulk_copy` Copy files write
- `frame_io.files.bulk_move` Move files write
- `frame_io.files.copy` Copy file write
- `frame_io.files.create` Create file write
- `frame_io.files.create_local_upload` Create file (local upload) write
- `frame_io.files.create_remote_upload` Create file (remote upload) write
- `frame_io.files.delete` Delete file destructive
- `frame_io.files.get` Show file read
- `frame_io.files.get_upload_status` Show file upload status read
- `frame_io.files.import` Import file write
- `frame_io.files.list` List files read
- `frame_io.files.move` Move file write
- `frame_io.files.update` Update file write

**Shares 12**

- `frame_io.shares.add_asset` Add new asset to share write
- `frame_io.shares.add_reviewers` Add reviewers to share write
- `frame_io.shares.create` Create share write
- `frame_io.shares.delete` Delete share destructive
- `frame_io.shares.get` Show Share read
- `frame_io.shares.list` List shares read
- `frame_io.shares.list_activities` List share activity read
- `frame_io.shares.list_assets` List share assets read
- `frame_io.shares.list_reviewers` List share reviewers read
- `frame_io.shares.remove_asset` Remove asset from share destructive
- `frame_io.shares.remove_reviewers` Removes reviewers from secure share destructive
- `frame_io.shares.update` Update share write

**Folders 10**

- `frame_io.folders.bulk_copy` Copy folders write
- `frame_io.folders.bulk_move` Move folders write
- `frame_io.folders.copy` Copy folder write
- `frame_io.folders.create` Create folder write
- `frame_io.folders.delete` Delete folder destructive
- `frame_io.folders.get` Show folder read
- `frame_io.folders.list` List folders read
- `frame_io.folders.list_children` List folder children read
- `frame_io.folders.move` Move folder write
- `frame_io.folders.update` Update folder write

**Comments 7**

- `frame_io.comments.create` Create comment write
- `frame_io.comments.create_attachment` Create comment attachment write
- `frame_io.comments.delete` Delete comment destructive
- `frame_io.comments.delete_attachment` Delete comment attachment destructive
- `frame_io.comments.get` Show comment read
- `frame_io.comments.list` List comments read
- `frame_io.comments.update` Update comment write

**Projects 7**

- `frame_io.projects.create` Create project write
- `frame_io.projects.delete` Delete project destructive
- `frame_io.projects.get` Show project read
- `frame_io.projects.list` List projects read
- `frame_io.projects.list_account` List projects by account read
- `frame_io.projects.recently_deleted` List recently deleted assets read
- `frame_io.projects.update` Update project write

**Version stacks 6**

- `frame_io.version_stacks.copy` Copy version stack write
- `frame_io.version_stacks.create` Create version stack write
- `frame_io.version_stacks.get` Show version stack read
- `frame_io.version_stacks.list` List version stacks read
- `frame_io.version_stacks.list_children` List version stack children read
- `frame_io.version_stacks.move` Move version stack write

**Custom actions 5**

- `frame_io.custom_actions.create` Create custom action write
- `frame_io.custom_actions.delete` Delete custom action destructive
- `frame_io.custom_actions.get` Show custom action details read
- `frame_io.custom_actions.list` List actions read
- `frame_io.custom_actions.update` Update custom action write

**Webhooks 5**

- `frame_io.webhooks.create` Create webhook write
- `frame_io.webhooks.delete` Delete webhook destructive
- `frame_io.webhooks.get` Show webhook read
- `frame_io.webhooks.list` List webhooks read
- `frame_io.webhooks.update` Update webhook write

**Workspaces 5**

- `frame_io.workspaces.create` Create workspace write
- `frame_io.workspaces.delete` Delete workspace destructive
- `frame_io.workspaces.get` Show workspace read
- `frame_io.workspaces.list` List workspaces read
- `frame_io.workspaces.update` Update workspace write

**Groups 4**

- `frame_io.groups.create` Create group write
- `frame_io.groups.get` Show group read
- `frame_io.groups.list` List groups read
- `frame_io.groups.update` Update group write

**Metadata field definitions 4**

- `frame_io.metadata_field_definitions.create` Create account level field definitions write
- `frame_io.metadata_field_definitions.delete` Delete account level custom field definitions destructive
- `frame_io.metadata_field_definitions.list` List account level field definitions read
- `frame_io.metadata_field_definitions.update` Update account level custom field definitions write

**Folder user roles 3**

- `frame_io.folder_user_roles.delete` Remove a user from a given folder destructive
- `frame_io.folder_user_roles.list` List folder user roles read
- `frame_io.folder_user_roles.update` Update user roles for the given folder write

**Project user roles 3**

- `frame_io.project_user_roles.delete` Remove a user from a given project destructive
- `frame_io.project_user_roles.list` List project user roles read
- `frame_io.project_user_roles.update` Update user roles for the given project write

**Workspace user roles 3**

- `frame_io.workspace_user_roles.delete` Remove a user from a given workspace destructive
- `frame_io.workspace_user_roles.list` List workspace user roles read
- `frame_io.workspace_user_roles.update` Update user roles for the given workspace write

**Account user roles 2**

- `frame_io.account_user_roles.list` List account user roles read
- `frame_io.account_user_roles.update` Update user role for the account write

**Collections 2**

- `frame_io.collections.get` Show collection read
- `frame_io.collections.list` List collections read

**Metadata 2**

- `frame_io.metadata.bulk_update_values` Update metadata across multiple files write
- `frame_io.metadata.get` Show metadata read

**Accounts 1**

- `frame_io.accounts.list` List accounts read

**Audit logs 1**

- `frame_io.audit_logs.list` List audit logs read

**Invited projects 1**

- `frame_io.invited_projects.list` List invited projects read

**Search 1**

- `frame_io.search.query` Search account read

**Users 1**

- `frame_io.users.me` Show user read

Questions

## The Adobe Frame.io (V4) MCP server, answered.

**Is there an Adobe Frame.io (V4) MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 98 Adobe Frame.io (V4) actions across files, shares, folders and comments, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Adobe Frame.io (V4).

**What do I need to connect Adobe Frame.io (V4)?**

Your own Adobe Frame.io (V4) OAuth app, registered with Adobe Frame.io (V4) (its client id and client secret), and the access and refresh tokens from one admin sign-in. actionlake has no Adobe Frame.io (V4) app of its own, so this is not a one-step consent. actionlake renews the access token as it expires. The free call account { op: "connections.requirements", service: "frame_io" } lists exactly what to paste.

**Can an AI agent delete or change things in Adobe Frame.io (V4)?**

Only if its key allows it, and only with an explicit confirmation. 15 Adobe Frame.io (V4) actions are destructive, including delete file, delete folder and delete project. 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 Adobe Frame.io (V4) API limit?**

actionlake paces every call to the limits in the Adobe Frame.io (V4) service file: 10 calls a second per connection. Repeated reads are answered from cache (39 Adobe Frame.io (V4) actions can be), which never reaches Adobe Frame.io (V4).

**What does an Adobe Frame.io (V4) action cost?**

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

The Frame.io V4 API (accounts, workspaces, projects, folders, files, version stacks, comments, shares, metadata, webhooks) API Frame.io v4.0 at api.frame.io. It is built from Adobe Frame.io (V4)'s documentation as read on 23 October 2026. 98 actions in 22 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my Adobe Frame.io (V4) 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 Adobe Frame.io (V4) 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 Adobe Frame.io (V4)

Shares the most action names with

- [YouTube 14](https://actionlake.com/connectors/youtube)
- [Frontify 12](https://actionlake.com/connectors/frontify)
- [Phrase Strings 11](https://actionlake.com/connectors/phrase-strings)
- [Tally 10](https://actionlake.com/connectors/tally)
- [Lokalise 10](https://actionlake.com/connectors/lokalise)
- [Acquia DAM (Widen) 6](https://actionlake.com/connectors/acquia-dam-widen)

Joins with, on shared entities

- [Zoho WorkDrive 6](https://actionlake.com/connectors/zoho-workdrive)
- [Filevine 5](https://actionlake.com/connectors/filevine)
- [Mistral AI 5](https://actionlake.com/connectors/mistral-ai)
- [Toggl Track 5](https://actionlake.com/connectors/toggl-track)
- [Box 5](https://actionlake.com/connectors/box)
- [Clockify 5](https://actionlake.com/connectors/clockify)

Browse

- [All Marketing & media connectors](https://actionlake.com/connectors/category/marketing-and-media)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Adobe Frame.io (V4); the name is the vendor's own. Counts are from the Adobe Frame.io (V4) service file, version 1.0.0.

## Give your agent Adobe Frame.io (V4) today.

[Connect Adobe Frame.io (V4) 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/adobe-frame-io-v4
More: https://actionlake.com/llms.txt
