Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Description from the maker (original English)
Sign and explain crabcrop image URLs, fetch processed-image metadata, and purge cached results.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
CRABCROP_BASE, CRABCROP_SECRETValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"crabcrop": {
"command": "npx",
"args": [
"-y",
"@crabcrop/mcp"
],
"env": {
"CRABCROP_BASE": "your-value",
"CRABCROP_SECRET": "your-value"
}
}
}
}Run this in your terminal
claude mcp add crabcrop --env CRABCROP_BASE=your-value --env CRABCROP_SECRET=your-value -- npx -y @crabcrop/mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"crabcrop": {
"command": "npx",
"args": [
"-y",
"@crabcrop/mcp"
],
"env": {
"CRABCROP_BASE": "your-value",
"CRABCROP_SECRET": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"crabcrop": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@crabcrop/mcp"
],
"env": {
"CRABCROP_BASE": "your-value",
"CRABCROP_SECRET": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
CRABCROP_BASE envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The publisher (crabcrop) is not the repo owner (dayvson); someone else may have listed it
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 0 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: CRABCROP_SECRET
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.1.0) reached the registry 13 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Figma Context MCP, Claude Real Video, Figma MCP Server
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Let any LLM watch a video locally — and search everything it has ever watched.
Figma’s official server gives AI your design data so it can turn designs into code or describe them accurately. Connects to Figma’s cloud.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Website · Documentation · Playground
Blazing fast, on-demand images.
crabcrop is a Rust-built, lightning-fast on-demand image API supporting all major formats in and out, with over 50 filters and AI features like background removal. It resizes, crops, converts, and filters your images straight from a signed URL. One binary, no pre-generated thumbnails, no build step: the URL is the API.
Everything an image pipeline does, in one signed URL: resize, crop, adjust, shape, overlay, and encode, chained in the order written, plus background removal, studio mode, smart face-safe crops, redaction, and content provenance. Ask for JSON instead of an image and the meta endpoint describes the picture: dimensions, detections, OCR text, and more.
crabcrop is for sites and apps that serve the same images at many sizes and want signed, cacheable image URLs in front of an origin image store.
Shell installer (macOS and Linux):
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dayvson/crabcrop/releases/latest/download/crabcrop-installer.sh | sh
Docker: the base image, and the AI variant with background removal and face detection on board:
docker pull ghcr.io/dayvson/crabcrop:0.9.9
docker pull ghcr.io/dayvson/crabcrop-ai:0.9.9 docker run -e CRABCROP_SECRET=your-secret-change-me -p 3000:3000 ghcr.io/dayvson/crabcrop:0.9.9
A secret of at least 16 bytes is the only required configuration; the server will not start without one. By default the loader fetches public sources and refuses sources that resolve to private addresses, and an allowlist names any exceptions. See Configuration.
Release binaries: prebuilt tarballs for macOS and Linux, on x86_64 and arm64, are on the releases page.
crates.io: cargo install crabcrop builds the current release from source; the prerequisites are in Deployment.
1. Start the server. For local development, also allow unsigned URLs:
CRABCROP_SECRET=local-dev-secret CRABCROP_ALLOW_UNSAFE=1 cargo run --release
2. Request an image. This resizes a source photo to 300x200:
curl "http://localhost:3000/unsafe/300x200/https://example.com/photo.jpg" --output photo.jpg
Replace example.com/photo.jpg with the URL of an image you control. You get back a 300x200 JPEG.
3. Sign your URLs in production. Drop CRABCROP_ALLOW_UNSAFE and put an HMAC signature in the first path segment:
curl "http://localhost:3000/9e24ae8bf61c0d40cb6f1ca9f9e1d3e771f6c8bc8b8ab7270e6d15458d4c14ab/300x200/https://example.com/photo.jpg" --output photo.jpg
That signature is HMAC-SHA256 of 300x200/https://example.com/photo.jpg under the secret from step 1. The SDKs and the crabcrop sign command compute it for you; the full signing rules are in URL grammar and signing.
Every image request has three parts:
GET /<signature>/<operations>/<source-url>
The signature is an HMAC-SHA256 (hex) of everything after it, or the literal unsafe on a server that allows it. Operations are zero or more segments, applied in path order. The source is a full URL, a bucket or file locator, or a short root: reference the server expands against origins it keeps to itself.
A signed URL names a transformation of a source locator, not the source's contents: the cache key is built from the operations and the locator, so if the image at a source changes, a purged entry re-renders the new image under the same URL. Because successful responses carry a one year immutable cache lifetime, a source that must stay fixed under its URL should be versioned or immutable itself (a content hash in the source path is the usual way). A render is cached under the canonical form of its operations, so equivalent spellings share one entry. A preset: segment names an operation string held on the server, so templates stay short and the transformation menu stays operator controlled.
https://img.example.com/<signature>/crop:1200x630:smart/filters:format(webp):quality(80)/https://example.com/photo.jpg
Smart-crops the photo to the 1200x630 social card size, keeping the subject and any detected faces whole, then encodes it as WebP at quality 80. Sign it with the TypeScript or Python SDK, the crabcrop-url Rust crate, the CLI, or plain curl: same inputs, same URL.
Send Accept: application/json with the same URL and the answer is the render's meta document instead of its bytes: dimensions, format, byte size, and provenance, with richer annotations as opt-ins.
format(...) always wins.root: reference. Originals can also arrive through the signed upload endpoint, off by default.filters: segment, everything running in the order written.studio(scene) reframes the photo on its subject and corrects the light and color.explain/ in front of any signed URL and the server reports on it instead of serving the image.This README is the front door. The full reference lives on the website and in this repo's docs folder:
Build and sign URLs from code: @crabcrop/url for TypeScript, crabcrop_url for Python, and the crabcrop-url Rust crate, all running the same spec test vectors, so client and server cannot drift. Loaders and integrations cover Next.js, Nuxt, Hydrogen, Astro, and SvelteKit, plus a WordPress plugin. For coding agents, a first-party MCP server exposes signing, explaining, meta, and purge over the same surface. Details in Clients and SDKs.
The server binary doubles as its own operator CLI: crabcrop sign, explain, meta, purge, seal, upload, and convert-thumbor run against a server (or offline, for the grammar-only verbs) with the same configuration conventions.
Migrating from another service: guides for Thumbor, imgproxy, Cloudinary, imgix, Cloudflare Images, ImageKit, and Gumlet.
Every recipe runs the same server, configured entirely through the environment. Release images are published to GHCR as ghcr.io/dayvson/crabcrop, with the AI variant at ghcr.io/dayvson/crabcrop-ai. Recipes ship for Kubernetes (Helm and Kustomize), ECS Fargate, Cloud Run, Container Apps, Docker Compose, and a binary on a VM, plus CDN guides for Cloudflare, CloudFront, Fastly, BunnyCDN, and Akamai. See Deployment.
cargo build --locked
bash scripts/test_all.sh
Found a security vulnerability? Please report it privately: see SECURITY.md. Please do not open a public issue, pull request, or discussion for security problems.
MIT. See LICENSE.