KosmoKrator

productivity

Webflow CLI for AI Agents

Use the Webflow CLI from KosmoKrator to call Webflow tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.

Webflow CLI Setup

Webflow can be configured headlessly with `kosmokrator integrations:configure webflow`.

Install, configure, and verify
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash

# Configure and verify this integration.
kosmokrator integrations:configure webflow --set access_token="$WEBFLOW_ACCESS_TOKEN" --enable --read allow --write ask --json
kosmokrator integrations:doctor webflow --json
kosmokrator integrations:status --json

Credentials

Authentication type: Manual OAuth token oauth2_manual_token. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.

KeyEnv varTypeRequiredLabel
access_token WEBFLOW_ACCESS_TOKEN Secret secret yes Access Token
url WEBFLOW_URL URL url no API Base URL

Command Patterns

The generic command is stable across every integration. The provider shortcut is shorter for humans.

Generic CLI call
kosmo integrations:call webflow.webflow_list_sites '{}' --json
Provider shortcut
kosmo integrations:webflow webflow_list_sites '{}' --json

Discovery

These commands return structured output for coding agents that need to inspect capabilities before choosing a function.

Discovery commands
kosmo integrations:docs webflow --json
kosmo integrations:docs webflow.webflow_list_sites --json
kosmo integrations:schema webflow.webflow_list_sites --json
kosmo integrations:search "Webflow" --json
kosmo integrations:list --json

Automation Contexts

The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.

CLI Functions

Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.

webflow.webflow_list_sites

List all Webflow sites the authenticated user has access to. Returns site IDs, names, and domains needed for further CMS operations.

Read read
Parameters
none
Generic call
kosmo integrations:call webflow.webflow_list_sites '{}' --json
Shortcut
kosmo integrations:webflow webflow_list_sites '{}' --json

webflow.webflow_get_site

Get details for a specific Webflow site by its ID. Returns site name, domain, publishing status, and other metadata.

Read read
Parameters
id
Generic call
kosmo integrations:call webflow.webflow_get_site '{"id":"example_id"}' --json
Shortcut
kosmo integrations:webflow webflow_get_site '{"id":"example_id"}' --json

webflow.webflow_list_collections

List CMS collections for a Webflow site. Collections are content models (e.g., "Blog Posts", "Team Members") that hold structured items.

Read read
Parameters
site_id, limit, offset
Generic call
kosmo integrations:call webflow.webflow_list_collections '{"site_id":"example_site_id","limit":1,"offset":1}' --json
Shortcut
kosmo integrations:webflow webflow_list_collections '{"site_id":"example_site_id","limit":1,"offset":1}' --json

webflow.webflow_list_items

List items in a Webflow CMS collection. Returns paginated results with item IDs, field data, and draft/publish status.

Read read
Parameters
collection_id, limit, offset
Generic call
kosmo integrations:call webflow.webflow_list_items '{"collection_id":"example_collection_id","limit":1,"offset":1}' --json
Shortcut
kosmo integrations:webflow webflow_list_items '{"collection_id":"example_collection_id","limit":1,"offset":1}' --json

webflow.webflow_get_item

Get a single CMS item from a Webflow collection by its ID. Returns full field data including rich text, images, and references.

Read read
Parameters
collection_id, id
Generic call
kosmo integrations:call webflow.webflow_get_item '{"collection_id":"example_collection_id","id":"example_id"}' --json
Shortcut
kosmo integrations:webflow webflow_get_item '{"collection_id":"example_collection_id","id":"example_id"}' --json

webflow.webflow_create_item

Create a new item in a Webflow CMS collection. Pass field data as key-value pairs matching the collection's schema. Set live to true to publish immediately.

Write write
Parameters
collection_id, fields, live
Generic call
kosmo integrations:call webflow.webflow_create_item '{"collection_id":"example_collection_id","fields":"example_fields","live":true}' --json
Shortcut
kosmo integrations:webflow webflow_create_item '{"collection_id":"example_collection_id","fields":"example_fields","live":true}' --json

webflow.webflow_get_current_user

Get the currently authenticated Webflow user. Returns user profile including name, email, and account details.

Read read
Parameters
none
Generic call
kosmo integrations:call webflow.webflow_get_current_user '{}' --json
Shortcut
kosmo integrations:webflow webflow_get_current_user '{}' --json

Function Schemas

Use these parameter tables when building CLI payloads without calling integrations:schema first.

webflow.webflow_list_sites 0 parameters
Schema command
kosmo integrations:schema webflow.webflow_list_sites --json
ParameterTypeRequiredDescription
No parameters.
webflow.webflow_get_site 1 parameters
Schema command
kosmo integrations:schema webflow.webflow_get_site --json
ParameterTypeRequiredDescription
id string yes The unique identifier of the Webflow site (e.g., "641d84b8f0bca14670785897").
webflow.webflow_list_collections 3 parameters
Schema command
kosmo integrations:schema webflow.webflow_list_collections --json
ParameterTypeRequiredDescription
site_id string yes The unique identifier of the Webflow site.
limit integer no Maximum number of collections to return (default: 100).
offset integer no Number of collections to skip for pagination (default: 0).
webflow.webflow_list_items 3 parameters
Schema command
kosmo integrations:schema webflow.webflow_list_items --json
ParameterTypeRequiredDescription
collection_id string yes The unique identifier of the CMS collection.
limit integer no Maximum number of items to return (default: 100).
offset integer no Number of items to skip for pagination (default: 0).
webflow.webflow_get_item 2 parameters
Schema command
kosmo integrations:schema webflow.webflow_get_item --json
ParameterTypeRequiredDescription
collection_id string yes The unique identifier of the CMS collection the item belongs to.
id string yes The unique identifier of the CMS item.
webflow.webflow_create_item 3 parameters
Schema command
kosmo integrations:schema webflow.webflow_create_item --json
ParameterTypeRequiredDescription
collection_id string yes The unique identifier of the CMS collection to add the item to.
fields object yes Field data as key-value pairs matching the collection schema. Common fields: name, slug, _archived, _draft.
live boolean no Whether to publish the item immediately (default: false). Set to true to make the item live on the site.
webflow.webflow_get_current_user 0 parameters
Schema command
kosmo integrations:schema webflow.webflow_get_current_user --json
ParameterTypeRequiredDescription
No parameters.

Permissions

Headless calls still follow the integration read/write permission policy. Configure read/write defaults with integrations:configure. Add --force only for trusted automation that should bypass that policy.