Log in to your Framer account to give feedback

Feature Requests

Product Feedback
Make Framer truly agent-ready: full Plugin API & MCP access to code components
With Framer MCP, AI agents can build most of a site. But on real projects with code components, they hit walls that only a person in the editor can get past. Every item below hit us on a live store: Code components are only half writable Fonts: font controls can't be set, and custom fonts aren't available to plugins at all, so every agent-built text falls back to Inter. Grouped properties: Object controls (text styles, box styles, layout groups) are rejected. New properties after a library release: reported as "Unknown control" by the agent, while the editor shows them. Instance updates: library instances can only be updated by clicking Update in the editor, one by one. Slots: slot values can't be read through the plugin, aren't passed to hidden(), and inserting an instance into some components fails. Editor data: CMS link lists arrive empty on the canvas and in Preview, and components with an auto layout get no width. Branching and publishing aren't safe for agents One shared branch: all agent sessions on a project share one active branch, so two agents switch each other's work. Creating branches: branches can't be created on demand, and switching then editing can land on the wrong branch. Publish preview: on main, it publishes production. Publish diff: it lists component names, not what changed, so an agent can't judge whether a change is safe to ship. Agents can't see the result Preview: no access to the editor's Preview or its console. Library versions: no way to see which version an instance is on versus the latest. Compile errors: a code file that fails to compile gives no clear error back. Ask: what the editor can do, the Plugin API and MCP should be able to do too. That means writable fonts (custom included) and grouped controls, a programmatic instance update, branches per session, a publish preview that doesn't deploy, a readable diff, and access to Preview and its errors. Agents can already build the structure of a site. With these, they could finish and ship it without anyone fixing it by hand.
0
·
Plugins & Custom Code
Server API: expose per-deployment "Changes" (changed page paths between deployments)
Add a Server API method that returns the pages changed in a published deployment, or between two deployments. The Staging & Versions panel already shows this per version under "Changes" (page paths, "Published by", "Published at"), so the data exists; it is just not reachable from the API. Suggested shape (any equivalent is fine): framer.getDeploymentChanges(deploymentId: string): Promise<{ added: string[]; removed: string[]; modified: string[] }> // or framer.getChangedPaths({ from: deploymentId, to: deploymentId }) Why we need it We run a security scan before promoting a staging version to the custom domain. The scan must cover every page changed since the deployment currently connected to production. Today that list has to be typed by hand from the Versions panel, which is the one error-prone manual step left in an otherwise automated flow (Slack workflow → Server API → scan → approval → deploy()). What we tried with framer-api 5.1.0 getUnpublishedPageChanges() / getChangedPaths(): only unpublished changes since the last publish. Empty right after a designer publishes to staging, so the change list of that version is lost. listDeployments() / getDeployment(id): id, deployedBy, createdAt, updatedAt, versionUrl, status only. getChangeContributors(fromVersion, toVersion): returns user ids, and the version numbers it expects are not exposed anywhere we could find. Diffing the sitemaps of two version URLs: catches added and removed pages, not edited ones. Diffing rendered HTML of two version URLs: unusable, since a Framer runtime update changes every page (884 of 2048 pages differed with no content change). Framer support confirmed on 2026-10-28 that no such API exists and that there is no public roadmap date. Context Project: 2-0-New-Web (staging enabled, custom domain opensurvey.io ) Volume: roughly 10–25 production deploys per month, often 10–20 stagins Use case: pre-deploy security scan (OWASP checks via Playwright) on changed pages only; deployedBy and createdAt from listDeployments() are already enough for the "who/when" part, so the only missing piece is "which pages". Thanks for considering it.
0
·
Plugins & Custom Code
Load More
→