Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Descripción del creador (original en inglés)
Local file and media tools: images, PDF, audio, video, OCR, batch and metadata. Runs locally.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"lathe": {
"command": "uvx",
"args": [
"lathe-mcp"
]
}
}
}Ejecuta esto en tu terminal
claude mcp add lathe -- uvx lathe-mcpPégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"lathe": {
"command": "uvx",
"args": [
"lathe-mcp"
]
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"lathe": {
"type": "stdio",
"command": "uvx",
"args": [
"lathe-mcp"
]
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub seayniclabs, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.4.1) llegó al registro hace 12 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.
En la misma categoría: Figma Context MCP, Claude Real Video, Figma MCP Server
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
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.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Made by [Seaynic Labs](https://seayniclabs.com). Need tools like this built around your own systems? We do that.
Lathe is an MCP bundle for anyone who handles files and media. It gives your AI assistant local tools for images, PDFs, audio and video, and OCR, plus batch runs and metadata removal. The files stay on your machine.
It is a bundle: one server made of modules, each switched on or off. Modules that arrive in an update and are off by default stay off until you turn them on.
| Security card | |
|---|---|
| Network | None. Lathe makes no network connections, and ffmpeg and ffprobe are restricted to local files (-protocol_whitelist file,pipe). --transport http listens on 127.0.0.1 only when you start it that way. |
| Files | Reads and writes files only inside the working folder (LATHE_WORKING_DIR). Reads its optional config file (~/.config/lathe/config.toml). Writes one local approval log (~/.local/state/lathe/approvals.jsonl). |
| Secrets | No keys, accounts or passwords. Nothing to store, and nothing that leaves the machine. |
| Read-only tools | 8: image_info, pdf_info, pdf_extract_text, audio_info, video_info, ocr_image, health, lathe_modules |
| Writes new files | audio_convert, batch_process, image_convert, image_crop, image_optimize, image_resize, image_thumbnail, pdf_compress, pdf_merge, pdf_split, pdf_to_images, scrub_metadata, video_thumbnail, video_to_gif, video_trim: each call writes new files in the working folder and never overwrites an existing one unless the call passes overwrite=true. batch_process asks the person once per run of two or more files, and nothing else asks. |
| Startup cost | about 7,600 tokens for a default install (21 tools, 4 skill prompts) |
| Changes | Tool descriptions are locked by hash (tool-manifest.lock.json); CI fails if they change silently. |
| Module | What it does | On by default | Needs |
|---|---|---|---|
images | Info, resize, convert, optimize, crop, thumbnail | yes | Pillow (always installed) |
pdf | Info, text (OCR for scanned pages), merge, render pages, split, compress | yes | pdf extra; ghostscript for rendering |
media | Audio and video info, audio convert, a frame, trim, GIF | yes | ffmpeg and ffprobe |
ocr | Text from an image | yes | ocr extra; tesseract |
batch | One operation over every file matching a glob, dry run first | no | per operation (see above) |
privacy | Inspect and remove GPS, camera and author metadata | no | pdf extra, for PDFs |
Lathe is free and MIT licensed. It has 21 tools by default and 23 with batch and privacy on.
Skills explain how to do a job well. Your AI assistant reads them as Agent Skills, or as MCP prompts in any MCP app.
| Skill | Use it for |
|---|---|
getting-started | Setup, the install command for each missing piece, --doctor, and the approval rules |
pdf | Turning a Markdown file into a PDF with Chrome or Chromium |
pdf-forms | Making a PDF with fillable text boxes and checkboxes |
web-image-prep | Removing location data and shrinking a folder of photos for a website |
uvx --from "lathe-mcp[pdf,ocr]" lathe --version prints the version. Needs Python 3.11 or newer and uv.LATHE_WORKING_DIR to the folder with your files.lathe --doctor (uvx --from "lathe-mcp[pdf,ocr]" lathe --doctor). It prints ok or FIX for each piece and the command that fixes it.lathe_modules. It lists every module, what is on, and what is missing.Paste these into your assistant, after setting LATHE_WORKING_DIR:
Call lathe_modules and tell me which pieces are missing.Show me the metadata in photos/trip.jpg, then make a copy without it as photos/trip-clean.jpg. (needs LATHE_PRIVACY_ENABLED=true)Dry-run image_optimize on everything in photos/ into web/, then run it. (needs LATHE_BATCH_ENABLED=true)Split report.pdf into parts of 5 pages in parts/.Cut the first 10 seconds of clip.mp4 into clip-10s.mp4, then make a 5-second GIF from it.Lathe needs Python 3.11 or newer. With uv you don't install anything ahead of time. Choose the extras for the modules you use:
uvx --from lathe-mcp lathe --version # images, media and batch
uvx --from "lathe-mcp[pdf,ocr]" lathe --version # with PDF and OCR
Pinned to this release, for a repeatable setup:
uvx --from "lathe-mcp[pdf,ocr]==0.4.1" lathe --version
Or with pip:
pip install "lathe-mcp[pdf,ocr]"
Extras: pdf (pypdf), ocr (pytesseract), full (both). The images module needs nothing extra.
The repository is also a Claude Code plugin. Its .mcp.json pins lathe-mcp[pdf,ocr]==0.4.1, and it ships the skills in skills/. The plugin is one way to install; the MCP config below works in any client.
Lathe starts without these. lathe --doctor and the lathe_modules tool list what is missing and the command for your platform.
| Program | Used by | macOS | Debian / Ubuntu |
|---|---|---|---|
| ffmpeg (includes ffprobe) | media, batch (audio) | brew install ffmpeg | sudo apt install ffmpeg |
| tesseract | ocr, and pdf_extract_text on scanned pages | brew install tesseract | sudo apt install tesseract-ocr |
| ghostscript | pdf_to_images, batch (PDF) | brew install ghostscript | sudo apt install ghostscript |
Set these as environment variables in your MCP client's config, or in a config file. Lathe starts without any of them.
| Variable | What it is |
|---|---|
LATHE_WORKING_DIR | The folder Lathe reads from and writes to. Default: the folder the server starts in. |
LATHE_MAX_FILE_MB | Largest input file, in MB. Default 500. |
LATHE_OCR_LANG | Tesseract language code(s), e.g. eng or eng+fra. Default eng. |
LATHE_ _ENABLED | true or false. Default true for images, pdf, media and ocr; false for batch and privacy. |
LATHE_BATCH_PREAPPROVED | true lets a batch run of two or more files go ahead without the approval prompt. Default false. Set it only if your client cannot show approval prompts. |
LATHE_APPROVAL_LOG | Where the approval log is written. Default ~/.local/state/lathe/approvals.jsonl. |
Config file (optional). Lathe also reads ~/.config/lathe/config.toml, or the file named by LATHE_CONFIG. Environment variables win over the file.
[core]
working_dir = "/Users/you/Pictures"
[ocr] lang = "eng"
[batch] enabled = true
[privacy] enabled = true
Every client below runs Lathe as a local process over stdio. Put the env values only where you need them.
Claude Desktop: claude_desktop_config.json (Settings, Developer, Edit Config)
{
"mcpServers": { "lathe": { "command": "uvx", "args": ["--from", "lathe-mcp[pdf,ocr]", "lathe"], "env": { "LATHE_WORKING_DIR": "/path/to/your/files", "LATHE_BATCH_ENABLED": "true", "LATHE_PRIVACY_ENABLED": "true" } } } }
Claude Code
claude mcp add lathe -e LATHE_WORKING_DIR=/path/to/your/files -- uvx --from "lathe-mcp[pdf,ocr]" lathe
Cursor: ~/.cursor/mcp.json, or .cursor/mcp.json in a project
{
"mcpServers": { "lathe": { "command": "uvx", "args": ["--from", "lathe-mcp[pdf,ocr]", "lathe"], "env": { "LATHE_WORKING_DIR": "/path/to/your/files" } } } }
VS Code: .vscode/mcp.json (note "servers", not "mcpServers")
{
"servers": { "lathe": { "type": "stdio", "command": "uvx", "args": ["--from", "lathe-mcp[pdf,ocr]", "lathe"], "env": { "LATHE_WORKING_DIR": "/path/to/your/files" } } } }
Sonique, Hermes, OpenClaw, and other clients: any client that launches a stdio MCP server. Command uvx, arguments ["--from", "lathe-mcp[pdf,ocr]", "lathe"], plus the env values above.
Over HTTP. For clients that connect to a URL instead of starting a process:
lathe --transport http --port 8765
It serves streamable HTTP at http://127.0.0.1:8765/mcp. It listens only on your own machine by default. Put authentication in front of it before exposing it anywhere else.
| Tool | Module | What it does | Asks first |
|---|---|---|---|
health | core | Server version, working folder, and whether each external program is installed | no |
lathe_modules | core | Which modules are on, what is missing (with the install command), skills, and what each tool needs | no |
image_info | images | Width, height, format, mode, size, and EXIF tags | no |
image_resize | images | Resize by width, height or percentage, keeping the aspect ratio | no |
image_convert | images | Convert to png, jpeg, webp, avif or bmp | no |
image_optimize | images | Shrink for web delivery; metadata stripped unless strip_metadata=false | no |
image_crop | images | Crop a rectangle | no |
image_thumbnail | images | Fit inside a square | no |
pdf_info | Page count, size, encryption, title, author | no | |
pdf_extract_text | Text of the pages you name, or of the whole file; OCR for pages without a text layer; long text in parts | no | |
pdf_merge | Merge PDFs in order | no | |
pdf_to_images | Render pages to PNG or JPEG at a chosen DPI | no | |
pdf_split | Split into parts of N pages | no | |
pdf_compress | Lossless smaller copy: content streams and duplicate objects | no | |
audio_info | media | Duration, format, bitrate, sample rate, channels | no |
audio_convert | media | Convert to mp3, wav, flac, aac or ogg | no |
video_info | media | Duration, resolution, codec, frame rate, audio tracks | no |
video_thumbnail | media | Save one frame at a time in seconds | no |
video_trim | media | Cut a section (stream copy; cuts land on keyframes) | no |
video_to_gif | media | Animated GIF from up to 30 seconds of video | no |
ocr_image | ocr | Text from an image; long text in parts | no |
batch_process | batch | One operation over every matching file; dry run by default | yes, for runs of 2+ files |
scrub_metadata | privacy | Inspect (default), or write a copy without GPS, camera or author metadata | no |
Every tool returns structured data with a published schema. Long text comes in parts: pass next_offset back as offset. Errors always read lathe. . : Fix: .
Only batch_process asks, and only for a run of two or more files. The client shows the person one plan: the operation, the output folder, whether existing outputs may be replaced, the file count and up to ten file names. The person approves or declines once for the whole run. The model cannot answer for the person. A client that cannot show prompts gets approval_unavailable, with the setting that fixes it (LATHE_BATCH_PREAPPROVED=true).
Every other writing tool writes one new file per call without asking. None of them overwrites an existing file unless the call passes overwrite=true.
LATHE_WORKING_DIR. Inputs and outputs must stay inside it. Symlinks that point outside are refused.overwrite=true. An output can never be the input file.batch_process refuses an output folder tSolo se muestra el principio; lee el resto en el repo