This is an overview of the changes to the Webflow APIs and related tools. To filter the list, select one or more tags.
MCP v1.2.1 - Improved connection reliability and Gemini compatibility
MCP v1.2.1 - Improved connection reliability and Gemini compatibility
Version 1.2.1 of the Webflow MCP server improves connection reliability and fixes compatibility with Gemini-based AI clients. If you are already using the MCP server, your agents and prompts automatically use this version.
Reliability
- Fixed connection drops: The MCP server now maintains open connections during idle periods instead of dropping them. Previously, agents could lose their session mid-task and require a full reconnect after a period of inactivity. Sessions now survive idle periods without interruption.
Bug fixes
- Gemini compatibility: Fixed an HTTP 400 error that prevented Gemini-based AI clients from using the
element_builderandcomponent_buildertools. Gemini’s strict OpenAPI 3.0 validation rejected array schemas that were missing anitemstype definition. Claude-based clients were unaffected.
Resources
- Getting started guide — Setup instructions
- How it works — Tool reference and capabilities
- Skills — Agent skills
- Prompt library — Example prompts
v1.21.0: Forms commands
v1.21.0: Forms commands
v1.21.0 adds a forms command group for reading form data and exporting submissions.
webflow forms list
Lists all forms on a site with their ID, display name, and slug. Supports --fields to customize columns and --json for machine-readable output.
webflow forms submissions
Lists all submissions for a specific form. Submissions can be output as a formatted table, JSON, or exported directly to CSV with --output.
Required OAuth scope: forms:read
v1.20.2: CMS error handling improvements and auth fix
v1.20.2: CMS error handling improvements and auth fix
v1.20.2 is a patch release with CMS UX improvements and a small auth output fix.
CMS error handling improvements
- Cleaner user errors — Invalid collection or item IDs now display a clean message and exit with code 1 instead of throwing a CLI error with a stack trace.
- Structured API error bodies — When the Webflow API returns an error, the full structured error body from the response is now included in the output, not just the HTTP status code.
- Next-steps hint after
collections create— After successfully creating a collection, the CLI now prints a hint showing how to add fields to it:
Fix: duplicate “Credentials saved” output
Running webflow auth login no longer prints the “Credentials saved” line twice. Previously, both ensureAuthenticated and the auth login command handler logged the message independently.
AI-generated code components
AI-generated code components
The Webflow AI Assistant can now generate and modify code components based on plain-language prompts. You can use the AI Assistant to generate visual and interactive components for your site, like custom sliders, pricing menus, calculators, The AI Assistant can access the styles and CMS collections from the current site and can make changes with further prompts.
For more information, limitations, and example prompts, see Quick start: Generating code components.
v1.20.1: DevLink export integration and JSX extension default
v1.20.1: DevLink export integration and JSX extension default
v1.20.1 is a patch release with two improvements.
cloud init updated to use devlink export
The webflow cloud init command now scaffolds projects using the new webflow devlink export command. The Astro and Next.js scaffold templates have been updated to take advantage of the latest DevLink features.
JSX default for DevLink component files
The deprecated webflow devlink sync command now defaults to generating component files with a .jsx extension instead of .js. You can still override the extension using the fileExtensions property in your webflow.json manifest file.
v1.19.0: DevLink export
v1.19.0: DevLink export
v1.19.0 adds webflow devlink export, a new command that generates a static, self-contained DevLink bundle of your Webflow components as local React code that runs without a build-time connection to Webflow.
webflow devlink export
Key features
- Filter exports — Use
componentsandcomponentGroupsregex patterns inwebflow.jsonto control what gets exported. - TypeScript or JavaScript — Output language is auto-detected from your project. Override with the
tsoption inwebflow.json. - CSS scoping — Optional CSS style isolation via
cssScopesto prevent style leakage. - Configurable output — Set the output location with
rootDir, and rewrite link targets viarelativeHrefRootto fit any project layout. - CI-friendly — Authenticate via OAuth interactively, or set
WEBFLOW_API_TOKEN/--api-tokenfor non-interactive use. Target a site with--siteor viawebflow.json.
Also in this release: code library selection in library share is now searchable and sorted alphabetically.
v1.20.0: Global session auth and new auth commands
v1.20.0: Global session auth and new auth commands
v1.20.0 introduces global session storage so a single webflow auth login covers all CLI commands, plus two new commands for inspecting and clearing your session.
Global session storage
Running webflow auth login now saves your credentials in two places:
- Global session file —
~/.config/webflow/auth.jsonon macOS/Linux or%APPDATA%\webflow\auth.jsonon Windows. This is shared across all projects and survives outside any specific project directory. - Project
.envfile —WEBFLOW_API_TOKENcontinues to be written for compatibility with existing 1.x workflows.
The WEBFLOW_API_TOKEN environment variable still takes precedence over the session file, so CI/CD pipelines that set it explicitly continue to work without changes.
New auth commands
webflow auth status— Shows the currently authenticated user (name and email) and the active OAuth scopes for the stored token.webflow auth logout— Removes the global session file and logs you out of the CLI.
Version flag shorthand
The version flag has been changed from -V to -v for convenience.
Updates to DevLink Export
DevLink Export ships a major upgrade. A new webflow devlink export command replaces webflow devlink sync and walks you through setup the first time you run it. Exported components are fully-typed TSX by default, and the generated CSS is now isolated to your DevLink components via CSS @scope so it won’t leak into the rest of your app. Webflow’s native Slot element replaces DevLink Slots (with an in-canvas Convert action), and the new Attributes prop replaces Runtime Props (auto-conversion coming soon).
DevLink Export requires @webflow/webflow-cli v1.19.0 or later, on Node.js v22+.
New export workflow
- New
webflow devlink exportcommand replaceswebflow devlink sync. See Quickstart: DevLink Export. - The first run walks you through an interactive setup and saves your settings to
webflow.json, so subsequent runs — manual or in CI — execute without prompts. - New
componentsandcomponentGroupsregex filters inwebflow.jsonlet you scope the export to a subset of your library. See Configuration options. - The
webflow devlink exportcommand now requires the DevLink Export read permission on OAuth and Site API tokens.
TypeScript by default
- Exported components ship as fully-typed
.tsxfiles with JSDoc comments. Setts: falseinwebflow.jsonto opt out and emit.jsxinstead.
Style isolation and CSS structure
- New
cssScopesoption (enabled by default) wraps the exported styles in a CSS@scoperule tied to each component’s wrapper, so DevLink styles can’t leak into the rest of your app. - Categorized CSS files (
normalize,defaults,variables,tags,classes,fonts) are imported from a singleglobal.cssyou load once at your app root.
New Designer primitives
- DevLink Export now supports Webflow’s native Slot element — the recommended replacement for DevLink Slots. Existing DevLink Slots continue to work but show a deprecation warning in the Designer; use the in-canvas Convert action to migrate. See Slots.
- DevLink Export now supports the new Attributes prop — the recommended replacement for Runtime Props. Existing Runtime Props will be automatically converted soon. See Attributes.
- New supported elements: Iframe, Inline Code, and Code Block. See Supported elements.
Broader component coverage
- Nested components and any library components they depend on are automatically included in the export.
- Conditional visibility settings on elements are compiled into the exported React code (Boolean, Enum, Number, Text, and Style Variant conditions).
Defaults and cleanup
- The default export folder is now
webflow/at the root of the project (wasdevlink/). - The following options are no longer supported:
cssModules,skipTagSelectors,envVariables,overwriteModule,fileExtensions.
Migration
Existing DevLink Sync projects can upgrade by following the Migrating to DevLink Export guide. It walks through the CLI bump, .env rename, webflow.json restructure, tsconfig and import-path updates, and the Designer-side migration of Runtime Props and DevLink Slots.
v1.18.0: Sites commands and sort controls
v1.18.0: Sites commands and sort controls
v1.18.0 adds a new sites command group for managing Webflow sites from the CLI, plus --sort-by and --order flags for assets list and cms collections list.
Sites commands
A new webflow sites command group lets you list, inspect, and publish sites without leaving the terminal.
sites list— List all sites in your workspace. Supports--fieldsto choose which columns to display and--jsonfor machine-readable output.sites get <siteId>— Get details for a specific site, including display name, short name, time zone, and publish timestamps.sites domains --site <siteId>— List the custom domains configured for a site.sites publish --site <siteId>— Publish a site to the Webflow subdomain or to specific custom domains. Supports--page <pageId>to publish a single page and--dry-runto preview what would be published without triggering a build.
Sort flags for assets and CMS
assets list and cms collections list now accept --sort-by and --order flags so you can control how results are returned.
assets listsupports--sort-by displayName | originalFileName | contentType | size | lastUpdatedand--order asc | desc(default:asc).cms collections listsupports--sort-by displayName | slug | lastUpdatedand--order asc | desc(default:asc).- The site picker now defaults to alphabetical order by display name.
- Invalid flag values produce a clear error message listing the valid options.
DevLink global stylesheet moves into the css/ subfolder
DevLink global stylesheet moves into the css/ subfolder
When you re-sync your site with DevLink, the global.css stylesheet is now written to the css/ subfolder alongside the other DevLink stylesheets instead of at the root of the export.
What changed
global.css now lives at css/global.css alongside classes.module.css, instead of at the root of <rootDir>.
Action required
Update the path in the file that imports global.css (usually a layout or entry file) to add the css/ segment.
Before:
After:
The same change applies if you use a different alias or relative path — add css/ before global.css.
For more information, see What DevLink Exports.