Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
作者提供的说明(英文原文)
Image and PDF toolkit: convert to AVIF/WebP/JXL, resize, crop, remove backgrounds, optimize PDFs.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://mcp.mochify.app/mcp在终端中运行这条命令
claude mcp add --transport http mochify https://mcp.mochify.app/mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"mochify": {
"url": "https://mcp.mochify.app/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"mochify": {
"type": "http",
"url": "https://mcp.mochify.app/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://mcp.mochify.app/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过域名 mochify.app 验证(注册中心会核实域名所有权)
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
两种方式都可以:安装在你的电脑上,或者连接云端版本。
GitHub 仓库最后更新于–,最新版本(1.6.2)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Figma Context MCP, Claude Real Video, Figma MCP Server
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
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.
The Figma MCP server brings Figma design context directly into your AI workflow.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
A command-line tool and MCP server for mochify.app — a fast, privacy-first image compression and conversion API powered by a native C++ engine.
Compress and convert images to modern formats (AVIF, JXL, WebP, Jpegli) from your terminal, work on PDFs, or give AI assistants like Claude direct access to the same engine over the Model Context Protocol — either as a local stdio server (mochify serve) or the hosted one at mcp.mochify.app, which needs no install at all.
Jump to: Installation · CLI usage · PDF processing · MCP server · Plans
macOS (Homebrew):
brew tap getmochify/mochify
brew install mochify
Windows (Scoop):
scoop bucket add mochify https://github.com/getmochify/scoop-mochify
scoop install mochify
Linux / WSL:
# x86_64
curl -L https://github.com/getmochify/mochify-cli/releases/latest/download/mochify-linux-x86_64 -o mochify chmod +x mochify sudo mv mochify /usr/local/bin/
curl -L https://github.com/getmochify/mochify-cli/releases/latest/download/mochify-linux-arm64 -o mochify chmod +x mochify sudo mv mochify /usr/local/bin/
Cargo (all platforms):
cargo install mochify
Requires Rust. Easiest option on Linux/WSL if you already have the toolchain.
Manual: All binaries at Releases.
From source:
cargo install --path .
Sign in with your mochify.app account to unlock your full quota:
mochify auth login
This opens your browser, where you sign in and authorize the CLI. Credentials are saved automatically to ~/.config/mochify/credentials.toml — no environment variables or manual key copying required. Both the CLI and MCP server pick them up automatically.
On a machine without a browser (over SSH, say), sign in with a code instead — open the link it prints on any device and type the code:
mochify auth login --no-browser
mochify auth status # check whether you're signed in
mochify auth logout # remove saved credentials
Without an account you get 3 images per batch (IP-based). With a free account: 25 images/month. Sign up at mochify.app.
mochify [OPTIONS] <FILES>...
| Flag | Description |
|---|---|
-t, --type | Output format: jpg, png, webp, avif, jxl |
-w, --width | Target width in pixels |
-H, --height | Target height in pixels |
--crop | Crop to exact dimensions (saliency-guided) |
--region | Crop to a rectangle, as fractions 0–1 of the upright image from the top-left |
--redact | Hide areas: faces and/or ;-separated boxes x,y,w,h (same convention as --region) |
--redact-style | fill (solid black, default) or blur (cosmetic only) |
-r, --rotation | Rotation: 0, 90, 180, 270 |
-o, --output | Output directory (default: same as input) |
-n, --name | Base name for the output file (without extension) |
--clarity | Apply clarity (midtone contrast enhancement — crisper, more detailed look) |
--remove-bg | Remove the background (AI foreground isolation) |
--background | Composite colour for --remove-bg (white, #ff0000, …) |
--keep-metadata | Preserve EXIF/metadata (stripped by default) |
-q, --quality | Output quality 1–100 (default: automatic) |
--smart-compress | Saliency-guided quality — detail keeps more, flat areas less |
--brightness | Exposure, -100 (darkest) to +100 (brightest) |
--optimize-for-web | Progressive + 4:2:0 chroma — smallest file to serve |
--lossless | Pixel-exact output (jxl, webp, png only) |
--hdr [MODE] | Ultra HDR gain map: preserve (bare flag) or generate |
-p, --prompt | Natural-language prompt — resolves all params automatically |
-j, --jobs | Files to process at once (default 4; 1 for strictly one at a time) |
-k, --api-key | API key override (or set MOCHIFY_API_KEY env var) |
# Convert to AVIF
mochify photo.jpg -t avif
mochify photo.jpg -t webp -w 800
mochify ./images/*.jpg -t avif -w 1200 -o ./compressed
mochify photo.jpg -p "convert to avif, 1200px wide" mochify photo.jpg -p "optimise for eBay" mochify photo.jpg -p "remove background and convert to WebP" mochify photo.jpg -p "resize to 50%, strip EXIF, keep as WebP"
mochify photo.jpg -t webp -n hero mochify product.jpg -p "optimise for Shopify" -n product-main
find . -name "*.jpg" | mochify -t webp -o ./out cat images.txt | mochify -p "convert to avif 1200px wide" -o ./compressed ls *.heic | mochify -t jpg
Quality is chosen automatically unless you say otherwise.
# Fixed quality
mochify photo.jpg -t webp -q 70
mochify photo.jpg -t avif --smart-compress
mochify photo.jpg -t webp --optimize-for-web
mochify photo.jpg --brightness 30
mochify scan.png -t webp --lossless
--lossless only works for jxl, webp and png — jpg and avif are rejected before the request goes out. It overrides -q and --smart-compress, and the output is usually larger than the input: lossless preserves pixels, not file size. A source that is already lossy (JPEG, AVIF, HEIC) comes back as the best lossy encode instead, since nothing can restore what that file discarded — the CLI says so when that happens.
--crop finds the subject itself. --region is for when *you* — or the AI assistant driving the MCP server — already know which part of the picture you want:
# The bottom-left quarter
mochify photo.jpg --region 0,0.5,0.5,0.5
mochify photo.jpg --region 0.2,0.1,0.6,0.8 -w 800 -t webp
The four numbers are x,y,width,height as fractions of the image (0 to 1), measured from the top-left of the picture as it displays — the right way up, even for a phone photo stored sideways. Fractions rather than pixels so the same box works whatever size the image is viewed at. A value above 1 is refused before the request goes out, since that is almost always a box in pixels. The region is cut first: -w/-H, --crop, --rotation and --remove-bg all act on it. --verbose prints the pixel rectangle that was actually cut.
Over MCP this is how an assistant can crop to *content* — "crop to the feet", "just the logo": it looks at the image itself, picks the box, and Mochify only ever receives the four numbers.
Hide faces, number plates, addresses or anything else before an image goes anywhere:
# Every face, found automatically
mochify family.jpg --redact faces
mochify car.jpg --redact 0.38,0.71,0.24,0.08
mochify street.jpg --redact "faces;0.38,0.71,0.24,0.08" --redact-style blur
Separate entries with ; — the , belongs to the box. fill (solid black) is the default and the one to use for anything that must stay secret; blur is for the look of a blurred face, and blurred text or faces can sometimes be recovered.
Redaction always strips metadata (EXIF can hold a thumbnail of the original) and removes any HDR gain map (which holds the scene's structure), even if you asked to keep them. faces is best-effort — it can miss small faces and side profiles — so the CLI says when it found none. Check the output before sharing it.
--hdr controls the Ultra HDR / ISO 21496-1 gain map that makes a photo render with real headroom on an HDR display.
| Mode | What it does |
|---|---|
--hdr (or --hdr preserve) | Keeps a gain map the source already has. Never invents one, so it does nothing to an SDR photo. |
--hdr generate | Keeps an existing gain map and synthesises one when the source is plain SDR. This is the one for "make it HDR". |
Only jpg output can carry a gain map (jxl carries HDR by a different route; avif, webp and png cannot), so pair it with -t jpg. It is also skipped alongside --clarity or --remove-bg, which change the base the gain map is a ratio to. The CLI reads the X-Mochify-HDR response header and tells you when the output ended up with no gain map.
# Keep the headroom an iPhone photo already captured, converting to JPEG
mochify IMG_1234.heic -t jpg --hdr
mochify photo.jpg --hdr generate
mochify photo.jpg -p "make this HDR"
By default, when the output format and directory match the input, the result is saved as {name}_mochified.{ext} so it's always clear something happened. If that file already exists, a numeric suffix is added (_1, _2, etc.). When the format changes (e.g. .jpg → .webp), the extension change is already unambiguous so no suffix is added.
Use -n, --name to set an explicit base name: mochify photo.jpg -t webp -n hero saves hero.webp. The prompt path also supports this: mochify *.jpg -p "optimise for Shopify, name them product" will produce product.webp, product_1.webp, etc.
PDFs are detected automatically by the .pdf extension, and --op picks what to do with them. (PDFs and images can't be mixed in a single command — run them separately.)
create is the exception: its inputs are images, so there is nothing in a .jpg to route on. Pass --op create, or just say "pdf" in a prompt — mochify *.jpg -p "convert to pdf" builds one too.
| Op | Takes | Returns | What it does |
|---|---|---|---|
optimize | a PDF | .pdf | Recompresses the images inside the PDF. Text, fonts, vector art and layout are untouched, so the document stays searchable. |
extract | a PDF | .zip | Pulls out the images somebody placed into the document, at the resolution they were stored at. |
rasterize | a PDF | .zip | Renders every page to an image, text and all. |
split | a PDF | .zip | Explodes the PDF into one single-page PDF per page. |
create | images | .pdf | Builds a PDF from images, one page per image, in the order given. |
| Flag | Applies to | Description |
|---|---|---|
--op | all | optimize, extract, rasterize, split, create |
-t, --type | rasterize, extract | png, jpg, webp, avif, jxl — plus original for extract (no re-encode) |
--dpi | rasterize, optimize, create | Render resolution (rasterize, default 150), target resolution for the images kept inside the PDF (optimize), or page sizing (create) |
-q, --quality | all but split | Output quality 1–100 (same flag as for images) |
--max-width | extract, optimize, create | Cap image width in pixels; 0 leaves sizes alone |
--min-size | extract, optimize | Skip images smaller than this on either axis; 0 takes everything |
| --page | create | fit (default), a4, `let
只显示了开头部分;其余内容请在仓库中阅读