Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ Index: README.md → table of projects

## What this repo is

A workspace for Figma plugins and design tooling, led by **Figma Limitless MCP**. Active projects:
A workspace for Figma plugins and design tooling, led by **Limitless MCP for Figma**. Active projects:

| Project | Folder | Status |
|---------|--------|--------|
| **Figma Limitless MCP** (flagship) | [`figma-limitless-mcp/`](figma-limitless-mcp/) | Active (v0.3.0) — local Figma MCP server + Desktop plugin giving AI full, unthrottled Figma access across Design/Dev/FigJam/Slides/Buzz: local fonts, variable/component/prototype authoring, crash-safe orchestration, and a bundled **design-system knowledge layer + 57-rule structure linter** (build → lint → fix). **98 tools.** |
| **Limitless MCP for Figma** (flagship) | [`figma-limitless-mcp/`](figma-limitless-mcp/) | Active (v0.3.0) — local Figma MCP server + Desktop plugin giving AI full, unthrottled Figma access across Design/Dev/FigJam/Slides/Buzz: local fonts, variable/component/prototype authoring, crash-safe orchestration, and a bundled **design-system knowledge layer + 57-rule structure linter** (build → lint → fix). **98 tools.** |
| Variables & Styles Extractor | [`variables-styles-extractor/`](variables-styles-extractor/) | Published on Figma Community ([1584331992332668732](https://www.figma.com/community/plugin/1584331992332668732/variables-and-styles-extractor)) |

Local working copies may contain extra untracked folders (references,
Expand Down
10 changes: 6 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Side-Kicks

> **Home of [Figma Limitless MCP](figma-limitless-mcp/)** — a local Figma MCP server + Desktop plugin that gives AI assistants full, unthrottled Figma access *and* a built-in design-system knowledge layer + 57-rule structure linter.
> **Home of [Limitless MCP for Figma](figma-limitless-mcp/)** — a local Figma MCP server + Desktop plugin that gives AI assistants full, unthrottled Figma access *and* a built-in design-system knowledge layer + 57-rule structure linter.

![MCP](https://img.shields.io/badge/MCP-compatible-5865F2)
![Network](https://img.shields.io/badge/network-none%20(local--only)-2ea44f)
Expand All @@ -14,12 +14,14 @@

---

## 🚀 Flagship — Figma Limitless MCP
## 🚀 Flagship — Limitless MCP for Figma

**[`figma-limitless-mcp/`](figma-limitless-mcp/)** — everything the official/remote Figma MCP can't reach, running entirely on your machine: your locally-installed fonts, variable/component/prototype authoring, the FigJam/Slides/Buzz surfaces, a crash-safe journal/checkpoint session layer, and a **build → lint → fix** design-system loop (bundled skills + a 57-rule structure linter). No REST calls, no rate limits, no plan-tier locks. **98 tools.**
**[`figma-limitless-mcp/`](figma-limitless-mcp/)** — everything the official/remote Figma MCP can't reach, running entirely on your machine: your locally-installed fonts, variable/component/prototype authoring, the FigJam/Slides/Buzz surfaces, a crash-safe journal/checkpoint session layer, and a **build → lint → fix** design-system loop (bundled skills + a 57-rule structure linter). No REST calls, no REST rate limits (it uses the local Plugin API), no plan-tier tooling locks. **98 tools.**

→ **[Read the full docs & quick start](figma-limitless-mcp/README.md).**

*Independent project — not affiliated with, endorsed, or sponsored by Figma. "Figma" is used descriptively (a tool "for Figma"). It's a local/private developer tool and is not distributed via Figma Community.*

## Also in this repo

| Project | Folder | Status |
Expand Down Expand Up @@ -163,4 +165,4 @@ Then update:

---

*Last updated: 2026-07-15 (repositioned MCP-first — Figma Limitless MCP is the flagship, 98 tools + 57-rule design-system linter)*
*Last updated: 2026-07-15 (repositioned MCP-first — Limitless MCP for Figma is the flagship, 98 tools + 57-rule design-system linter)*
5 changes: 3 additions & 2 deletions figma-limitless-mcp/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,9 @@

## What this is

A local Figma MCP server + Figma Desktop plugin. No REST calls, no rate
limits. **98 tools** across Design, Dev Mode, FigJam, Slides & Buzz: local
A local Figma MCP server + Figma Desktop plugin. No REST calls, so no REST
rate limits — it uses the Figma Plugin API locally. **98 tools** across
Design, Dev Mode, FigJam, Slides & Buzz: local
fonts, text/paint/effect styles, variable authoring, grid layout, master
components, instances, prototyping, annotations, dev resources, Motion/shaders
(beta), and the FigJam/Slides/Buzz surfaces — plus a **bundled design-system
Expand Down
2 changes: 1 addition & 1 deletion figma-limitless-mcp/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,5 +66,5 @@ served entirely over the local plugin bridge — no network, no design-tool AI c
### Added

- Initial project: a local Figma MCP server + Dev-Mode plugin bridged over `ws://localhost:1994`,
using the Figma Plugin API only (no REST, no token, no rate limits). Registered as a user-scope
using the Figma Plugin API only (no REST, no token — the Plugin API has no REST-style rate limits). Registered as a user-scope
MCP server; dev plugin imported into Figma Desktop.
12 changes: 7 additions & 5 deletions figma-limitless-mcp/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Figma Limitless MCP
# Limitless MCP for Figma

> **Your whole Figma file as an API — locally.** Give any AI assistant full, unthrottled access to Figma *and* build design systems the right way with a bundled skills + linter closed loop.

Expand All @@ -11,7 +11,9 @@

A local **Figma MCP server + Figma Desktop plugin** that gives AI assistants everything the official/remote Figma MCP can't reach — your locally-installed fonts, variable authoring, prototype wiring, component mastery, the FigJam/Slides/Buzz surfaces, and a persistent journal/checkpoint layer so AI sessions survive crashes and context loss. Plus an **offline design-system knowledge base + 57-rule structure linter** that turns "design → code always breaks" into a **build → lint → fix** loop.

No Figma REST API calls. No rate limits. No plan-tier tooling locks. Everything runs on your machine.
No Figma REST API calls — so no REST rate limits; it talks to the Figma **Plugin API** locally. No plan-tier tooling locks. Everything runs on your machine, on your own files.

> **Independent project — not affiliated with, endorsed, or sponsored by Figma.** "Figma" is a trademark of Figma, Inc., used here only descriptively (a tool *"for Figma"*). This is a **local/private developer tool** (a localhost bridge with an `execute_code` escape hatch); it is **not** distributed through Figma Community and isn't intended to be — that's by design, not a limitation.

```
AI client (Claude Code / Claude Desktop / Cursor / …)
Expand Down Expand Up @@ -43,9 +45,9 @@ Design principle: **advise, don't dictate.** Only objectively-broken things are

## Why local beats remote

| | Official/remote Figma MCP | Figma Limitless MCP |
| | Official/remote Figma MCP | Limitless MCP for Figma |
|---|---|---|
| Rate limits | Plan-tiered, shared quota | Noneit's your machine |
| REST rate limits | Plan-tiered, shared quota | N/Auses the local Plugin API |
| Locally-installed fonts | Invisible (Google/shared fonts only) | Fully visible + loadable |
| Variable authoring | None (REST variables API is Enterprise-only) | Full create/edit/bind/alias |
| Prototype wiring | Read-only context | Author reactions, flows |
Expand Down Expand Up @@ -95,7 +97,7 @@ claude mcp add figma-limitless-mcp -s user -- node "$(pwd)/server/dist/index.js"
```
</details>

**Use it:** open a Figma file, run **Plugins → Development → Figma Limitless MCP**, and ask your AI to work in Figma. The plugin window shows the connection state. Health check: `curl http://localhost:1994/ping`.
**Use it:** open a Figma file, run **Plugins → Development → Limitless MCP for Figma**, and ask your AI to work in Figma. The plugin window shows the connection state. Health check: `curl http://localhost:1994/ping`.

Multiple AI clients can register the same command — the first becomes the leader on :1994, the rest proxy through it automatically. Multiple Figma files connect at once (run the plugin in each; target by `fileKey`).

Expand Down
2 changes: 1 addition & 1 deletion figma-limitless-mcp/docs/AI-GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ next run.

| Error | Meaning | Action |
|---|---|---|
| "No plugin connected" | Plugin not running in Figma | Ask the user to run Plugins → Development → Figma Limitless MCP |
| "No plugin connected" | Plugin not running in Figma | Ask the user to run Plugins → Development → Limitless MCP for Figma |
| "Multiple files connected…" | Ambiguous target | `list_files`, pass `fileKey` |
| "Cannot write to node with unloaded font" | Font not loaded (execute_code path) | `load_fonts` with exact strings first |
| "…requires the design editor (Dev Mode is read-only)" | Figma is in Dev Mode | Ask the user to switch modes |
Expand Down
2 changes: 1 addition & 1 deletion figma-limitless-mcp/plugin/extras/manifest.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "Figma Limitless MCP — Extras (FigJam / Slides / Buzz)",
"name": "Limitless MCP for Figma — Extras (FigJam / Slides / Buzz)",
"id": "figma-limitless-mcp-extras",
"api": "1.0.0",
"main": "code.js",
Expand Down
2 changes: 1 addition & 1 deletion figma-limitless-mcp/plugin/manifest.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "Figma Limitless MCP",
"name": "Limitless MCP for Figma",
"id": "figma-limitless-mcp",
"api": "1.0.0",
"main": "dist/code.js",
Expand Down
2 changes: 1 addition & 1 deletion figma-limitless-mcp/plugin/src/ui/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ export default function App() {
<span className="badge-text">{statusLabel}</span>
</div>
<span className="served-counter">
{served > 0 ? `${served} request${served === 1 ? "" : "s"} served` : "Figma Limitless MCP"}
{served > 0 ? `${served} request${served === 1 ? "" : "s"} served` : "Limitless MCP for Figma"}
</span>
</div>
</div>
Expand Down
2 changes: 1 addition & 1 deletion figma-limitless-mcp/plugin/src/ui/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Figma Limitless MCP</title>
<title>Limitless MCP for Figma</title>
</head>
<body>
<div id="root"></div>
Expand Down
2 changes: 1 addition & 1 deletion figma-limitless-mcp/scripts/e2e-live-test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
/**
* Live end-to-end test of figma-limitless-mcp against a REAL Figma file.
*
* Prereqs: Figma Desktop open with the Figma Limitless MCP plugin running in
* Prereqs: Figma Desktop open with the Limitless MCP for Figma plugin running in
* some file. Everything is created inside a dedicated test page and removed
* afterwards — the file is left exactly as found (undo history aside).
*
Expand Down