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)
MCP server for AI image generation via OpenAI, Stable Diffusion (SD WebUI), or placeholders.
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.
IMAGE_GENERATION_MCP_KV_STORE_URL, IMAGE_GENERATION_MCP_TOOLS_ALLOW, IMAGE_GENERATION_MCP_TOOLS_DENY, IMAGE_GENERATION_MCP_SERVER_NAME, IMAGE_GENERATION_MCP_INSTRUCTIONS, FASTMCP_LOG_LEVEL, FASTMCP_ENABLE_RICH_LOGGING, IMAGE_GENERATION_MCP_A1111_HOST, IMAGE_GENERATION_MCP_A1111_MODEL, IMAGE_GENERATION_MCP_READ_ONLY, IMAGE_GENERATION_MCP_SCRATCH_DIR, IMAGE_GENERATION_MCP_OPENAI_API_KEY, IMAGE_GENERATION_MCP_GOOGLE_API_KEY, IMAGE_GENERATION_MCP_SD_WEBUI_HOST, IMAGE_GENERATION_MCP_SD_WEBUI_MODEL, IMAGE_GENERATION_MCP_DEFAULT_PROVIDER, IMAGE_GENERATION_MCP_TRANSFORM_CACHE_SIZE, IMAGE_GENERATION_MCP_PAID_PROVIDERS, IMAGE_GENERATION_MCP_STYLES_DIR, IMAGE_GENERATION_MCP_ALLOW_LOCAL_FILE_INPUT, IMAGE_GENERATION_MCP_MAX_INPUT_IMAGE_BYTES, IMAGE_GENERATION_MCP_FETCH_TIMEOUT_S, IMAGE_GENERATION_MCP_TRANSFER_TTL_DEFAULT_S, IMAGE_GENERATION_MCP_TRANSFER_TTL_MAX_S, IMAGE_GENERATION_MCP_TRANSFER_GRACE_TTL_S, IMAGE_GENERATION_MCP_TRANSFER_LEASE_S, IMAGE_GENERATION_MCP_TRANSFER_MAX_UPLOAD_BYTESLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
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": {
"image-generation": {
"command": "uvx",
"args": [
"image-generation-mcp"
],
"env": {
"IMAGE_GENERATION_MCP_KV_STORE_URL": "your-value",
"IMAGE_GENERATION_MCP_TOOLS_ALLOW": "your-value",
"IMAGE_GENERATION_MCP_TOOLS_DENY": "your-value",
"IMAGE_GENERATION_MCP_SERVER_NAME": "your-value",
"IMAGE_GENERATION_MCP_INSTRUCTIONS": "your-value",
"FASTMCP_LOG_LEVEL": "your-value",
"FASTMCP_ENABLE_RICH_LOGGING": "your-value",
"IMAGE_GENERATION_MCP_A1111_HOST": "your-value",
"IMAGE_GENERATION_MCP_A1111_MODEL": "your-value",
"IMAGE_GENERATION_MCP_READ_ONLY": "your-value",
"IMAGE_GENERATION_MCP_SCRATCH_DIR": "your-value",
"IMAGE_GENERATION_MCP_OPENAI_API_KEY": "your-value",
"IMAGE_GENERATION_MCP_GOOGLE_API_KEY": "your-value",
"IMAGE_GENERATION_MCP_SD_WEBUI_HOST": "your-value",
"IMAGE_GENERATION_MCP_SD_WEBUI_MODEL": "your-value",
"IMAGE_GENERATION_MCP_DEFAULT_PROVIDER": "your-value",
"IMAGE_GENERATION_MCP_TRANSFORM_CACHE_SIZE": "your-value",
"IMAGE_GENERATION_MCP_PAID_PROVIDERS": "your-value",
"IMAGE_GENERATION_MCP_STYLES_DIR": "your-value",
"IMAGE_GENERATION_MCP_ALLOW_LOCAL_FILE_INPUT": "your-value",
"IMAGE_GENERATION_MCP_MAX_INPUT_IMAGE_BYTES": "your-value",
"IMAGE_GENERATION_MCP_FETCH_TIMEOUT_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_TTL_DEFAULT_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_TTL_MAX_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_GRACE_TTL_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_LEASE_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_MAX_UPLOAD_BYTES": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add image-generation --env IMAGE_GENERATION_MCP_KV_STORE_URL=your-value --env IMAGE_GENERATION_MCP_TOOLS_ALLOW=your-value --env IMAGE_GENERATION_MCP_TOOLS_DENY=your-value --env IMAGE_GENERATION_MCP_SERVER_NAME=your-value --env IMAGE_GENERATION_MCP_INSTRUCTIONS=your-value --env FASTMCP_LOG_LEVEL=your-value --env FASTMCP_ENABLE_RICH_LOGGING=your-value --env IMAGE_GENERATION_MCP_A1111_HOST=your-value --env IMAGE_GENERATION_MCP_A1111_MODEL=your-value --env IMAGE_GENERATION_MCP_READ_ONLY=your-value --env IMAGE_GENERATION_MCP_SCRATCH_DIR=your-value --env IMAGE_GENERATION_MCP_OPENAI_API_KEY=your-value --env IMAGE_GENERATION_MCP_GOOGLE_API_KEY=your-value --env IMAGE_GENERATION_MCP_SD_WEBUI_HOST=your-value --env IMAGE_GENERATION_MCP_SD_WEBUI_MODEL=your-value --env IMAGE_GENERATION_MCP_DEFAULT_PROVIDER=your-value --env IMAGE_GENERATION_MCP_TRANSFORM_CACHE_SIZE=your-value --env IMAGE_GENERATION_MCP_PAID_PROVIDERS=your-value --env IMAGE_GENERATION_MCP_STYLES_DIR=your-value --env IMAGE_GENERATION_MCP_ALLOW_LOCAL_FILE_INPUT=your-value --env IMAGE_GENERATION_MCP_MAX_INPUT_IMAGE_BYTES=your-value --env IMAGE_GENERATION_MCP_FETCH_TIMEOUT_S=your-value --env IMAGE_GENERATION_MCP_TRANSFER_TTL_DEFAULT_S=your-value --env IMAGE_GENERATION_MCP_TRANSFER_TTL_MAX_S=your-value --env IMAGE_GENERATION_MCP_TRANSFER_GRACE_TTL_S=your-value --env IMAGE_GENERATION_MCP_TRANSFER_LEASE_S=your-value --env IMAGE_GENERATION_MCP_TRANSFER_MAX_UPLOAD_BYTES=your-value -- uvx image-generation-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"image-generation": {
"command": "uvx",
"args": [
"image-generation-mcp"
],
"env": {
"IMAGE_GENERATION_MCP_KV_STORE_URL": "your-value",
"IMAGE_GENERATION_MCP_TOOLS_ALLOW": "your-value",
"IMAGE_GENERATION_MCP_TOOLS_DENY": "your-value",
"IMAGE_GENERATION_MCP_SERVER_NAME": "your-value",
"IMAGE_GENERATION_MCP_INSTRUCTIONS": "your-value",
"FASTMCP_LOG_LEVEL": "your-value",
"FASTMCP_ENABLE_RICH_LOGGING": "your-value",
"IMAGE_GENERATION_MCP_A1111_HOST": "your-value",
"IMAGE_GENERATION_MCP_A1111_MODEL": "your-value",
"IMAGE_GENERATION_MCP_READ_ONLY": "your-value",
"IMAGE_GENERATION_MCP_SCRATCH_DIR": "your-value",
"IMAGE_GENERATION_MCP_OPENAI_API_KEY": "your-value",
"IMAGE_GENERATION_MCP_GOOGLE_API_KEY": "your-value",
"IMAGE_GENERATION_MCP_SD_WEBUI_HOST": "your-value",
"IMAGE_GENERATION_MCP_SD_WEBUI_MODEL": "your-value",
"IMAGE_GENERATION_MCP_DEFAULT_PROVIDER": "your-value",
"IMAGE_GENERATION_MCP_TRANSFORM_CACHE_SIZE": "your-value",
"IMAGE_GENERATION_MCP_PAID_PROVIDERS": "your-value",
"IMAGE_GENERATION_MCP_STYLES_DIR": "your-value",
"IMAGE_GENERATION_MCP_ALLOW_LOCAL_FILE_INPUT": "your-value",
"IMAGE_GENERATION_MCP_MAX_INPUT_IMAGE_BYTES": "your-value",
"IMAGE_GENERATION_MCP_FETCH_TIMEOUT_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_TTL_DEFAULT_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_TTL_MAX_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_GRACE_TTL_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_LEASE_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_MAX_UPLOAD_BYTES": "your-value"
}
}
}
}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": {
"image-generation": {
"type": "stdio",
"command": "uvx",
"args": [
"image-generation-mcp"
],
"env": {
"IMAGE_GENERATION_MCP_KV_STORE_URL": "your-value",
"IMAGE_GENERATION_MCP_TOOLS_ALLOW": "your-value",
"IMAGE_GENERATION_MCP_TOOLS_DENY": "your-value",
"IMAGE_GENERATION_MCP_SERVER_NAME": "your-value",
"IMAGE_GENERATION_MCP_INSTRUCTIONS": "your-value",
"FASTMCP_LOG_LEVEL": "your-value",
"FASTMCP_ENABLE_RICH_LOGGING": "your-value",
"IMAGE_GENERATION_MCP_A1111_HOST": "your-value",
"IMAGE_GENERATION_MCP_A1111_MODEL": "your-value",
"IMAGE_GENERATION_MCP_READ_ONLY": "your-value",
"IMAGE_GENERATION_MCP_SCRATCH_DIR": "your-value",
"IMAGE_GENERATION_MCP_OPENAI_API_KEY": "your-value",
"IMAGE_GENERATION_MCP_GOOGLE_API_KEY": "your-value",
"IMAGE_GENERATION_MCP_SD_WEBUI_HOST": "your-value",
"IMAGE_GENERATION_MCP_SD_WEBUI_MODEL": "your-value",
"IMAGE_GENERATION_MCP_DEFAULT_PROVIDER": "your-value",
"IMAGE_GENERATION_MCP_TRANSFORM_CACHE_SIZE": "your-value",
"IMAGE_GENERATION_MCP_PAID_PROVIDERS": "your-value",
"IMAGE_GENERATION_MCP_STYLES_DIR": "your-value",
"IMAGE_GENERATION_MCP_ALLOW_LOCAL_FILE_INPUT": "your-value",
"IMAGE_GENERATION_MCP_MAX_INPUT_IMAGE_BYTES": "your-value",
"IMAGE_GENERATION_MCP_FETCH_TIMEOUT_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_TTL_DEFAULT_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_TTL_MAX_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_GRACE_TTL_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_LEASE_S": "your-value",
"IMAGE_GENERATION_MCP_TRANSFER_MAX_UPLOAD_BYTES": "your-value"
}
}
}
}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.
IMAGE_GENERATION_MCP_KV_STORE_URL envIMAGE_GENERATION_MCP_TOOLS_ALLOW envIMAGE_GENERATION_MCP_TOOLS_DENY envIMAGE_GENERATION_MCP_SERVER_NAME envIMAGE_GENERATION_MCP_INSTRUCTIONS envFASTMCP_LOG_LEVEL envFASTMCP_ENABLE_RICH_LOGGING envIMAGE_GENERATION_MCP_A1111_HOST envIMAGE_GENERATION_MCP_A1111_MODEL envIMAGE_GENERATION_MCP_READ_ONLY envIMAGE_GENERATION_MCP_SCRATCH_DIR envIMAGE_GENERATION_MCP_SD_WEBUI_HOST envIMAGE_GENERATION_MCP_SD_WEBUI_MODEL envIMAGE_GENERATION_MCP_DEFAULT_PROVIDER envIMAGE_GENERATION_MCP_TRANSFORM_CACHE_SIZE envIMAGE_GENERATION_MCP_PAID_PROVIDERS envIMAGE_GENERATION_MCP_STYLES_DIR envIMAGE_GENERATION_MCP_ALLOW_LOCAL_FILE_INPUT envIMAGE_GENERATION_MCP_MAX_INPUT_IMAGE_BYTES envIMAGE_GENERATION_MCP_FETCH_TIMEOUT_S envIMAGE_GENERATION_MCP_TRANSFER_TTL_DEFAULT_S envIMAGE_GENERATION_MCP_TRANSFER_TTL_MAX_S envIMAGE_GENERATION_MCP_TRANSFER_GRACE_TTL_S envIMAGE_GENERATION_MCP_TRANSFER_LEASE_S envIMAGE_GENERATION_MCP_TRANSFER_MAX_UPLOAD_BYTES envEsta 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 pvliesdonk, 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.
Debes completar: IMAGE_GENERATION_MCP_OPENAI_API_KEY, IMAGE_GENERATION_MCP_GOOGLE_API_KEY
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 (1.12.1) llegó al registro hace 2 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv), Docker 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:★ 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.
Multi-provider image generation MCP server built on FastMCP. Generate images from Claude Desktop, Claude Code, or any MCP client using OpenAI, Google Gemini, Stable Diffusion (SD WebUI), or a zero-cost placeholder provider.
[Documentation](https://pvliesdonk.github.io/image-generation-mcp/) | [Config wizard](https://pvliesdonk.github.io/image-generation-mcp/latest/configuration-generator/) | [PyPI](https://pypi.org/project/image-generation-mcp/) | [Docker](https://github.com/pvliesdonk/image-generation-mcp/pkgs/container/image-generation-mcp)
gpt-image-2, gpt-image-1.5, dall-e-3), Google Gemini (gemini-3.1-flash-image, gemini-3-pro-image, gemini-3.1-flash-lite-image), SD WebUI (Stable Diffusion / Forge / reForge), and a zero-cost placeholder for testing.style_profile (strengths, prompt grammar, lifecycle); list_providers includes a top-level warnings array for deprecated models. See Model Catalog.provider="auto" routes by prompt content (text/logo → OpenAI, photoreal/anime → SD WebUI, draft → placeholder).image://{id}/view?format=webp&width=512&crop_x=... resizes / re-encodes / crops on demand without re-generating.task=True (poll for status); short OpenAI calls stream progress in the foreground.app: resources..deb/.rpm with hardened systemd, OIDC + bearer auth, persistent EventStore for HTTP session resumability.With this server mounted in an MCP client, you can ask:
gpt-image-1.5 for typography-aware photorealism.generate_image with provider="sd_webui" and a stylised checkpoint like dreamshaperXL.image://{id}/view?width=512&height=512&crop_x=... resource transforms.image://list resource and the MCP Apps gallery viewer.transform_image with the gallery image_id as a reference (image-to-image via Gemini).pip install image-generation-mcp
If you add optional extras via the PROJECT-EXTRAS-START / PROJECT-EXTRAS-END sentinels in pyproject.toml, document them below:
| Extra | Includes | Use when |
|---|---|---|
mcp | fastmcp[tasks]>=3.0,<4 | Background-task support (task=True), required for long SD generations. |
openai | openai>=1.0 | Enables the OpenAI provider. |
google-genai | google-genai>=1.0 | Enables the Gemini provider. |
all | fastmcp[tasks] + openai + google-genai | Everything except SD WebUI (which is HTTP-only, no extra needed). |
Example: pip install image-generation-mcp[all].
git clone https://github.com/pvliesdonk/image-generation-mcp.git
cd image-generation-mcp uv sync --all-extras --all-groups
docker pull ghcr.io/pvliesdonk/image-generation-mcp:latest
To run the newest merged code instead of the newest release, use the rolling edge tag. It is rebuilt on every merge to main and carries no version identity. See Image tags for the full tag list.
docker pull ghcr.io/pvliesdonk/image-generation-mcp:edge
A compose.yml ships at the repo root as a starting point. Copy .env.example to .env, edit, and docker compose up -d.
To attach a remote Python debugger (development only; the protocol is unauthenticated), see Remote debugging.
Download .deb or .rpm packages from the GitHub Releases page. Both install a hardened systemd unit; env configuration is sourced from /etc/image-generation-mcp/env (copy from the shipped /etc/image-generation-mcp/env.example).
Download the .mcpb bundle from the GitHub Releases page and double-click to install, or run:
mcpb install image-generation-mcp-<version>.mcpb
Claude Desktop prompts for required env vars via a GUI wizard, with no manual JSON editing needed.
For manual Claude Desktop configuration and setup options, see Claude Desktop deployment.
Artifacts ship on three channels. Each row lists exactly what that channel publishes.
| Channel | Version identity | Artifacts |
|---|---|---|
edge (rolling) | None; the commit is the identity | Docker image :edge rebuilt on every merge to main; .mcpb bundle as the mcpb-bundle-edge workflow artifact; Claude Code plugin .zip as the plugin-zip-edge artifact; rolling unstable docs version. It leaves no git tag, GitHub release, or PyPI entry behind. |
| Pre-release | vX.Y.Z-rc.N, computed and reviewed in its release pull request | PyPI (as the pre-release X.Y.ZrcN); GitHub release with wheels, sdist, .deb/.rpm packages, .mcpb bundle, plugin .zip, and SBOM attached; Docker image under its immutable vX.Y.Z-rc.N tag plus the ordering-aware rolling rc tag. Skips the plugin marketplace, the MCP registry, and the docs deploy. |
| Stable | vX.Y.Z | Everything: PyPI, Docker (version tag plus ordering-aware latest / vX / vX.Y), .deb/.rpm, GitHub release assets (wheels, sdist, .mcpb bundle, plugin .zip, SBOM), plugin marketplace and MCP registry entries (when the release is the newest stable), versioned docs with an ordering-aware latest alias. |
Pre-releases reach PyPI so that a candidate's .mcpb bundle installs: the bundle points at PyPI rather than carrying the code. Ordinary installers never see them, because a PEP 440 resolver skips pre-releases unless the requirement pins one or you pass --pre. Ask for a candidate by name with pip install image-generation-mcp==X.Y.ZrcN. PyPI spells it in the PEP 440 canonical form, while tags use SemVer. Rolling pointers are ordering-aware, so a patch release cut from an old release/X.Y branch never moves latest-style tags back to older content, and a candidate for an already-released version never moves rc. See Release process for the full model.
image-generation-mcp serve # stdio transport
image-generation-mcp serve --transport http --port 8000 # streamable HTTP
For library usage (embedding the domain logic without the MCP transport), import from the image_generation_mcp package directly. See the project's domain modules under src/image_generation_mcp/ for entry points.
The server registers a built-in get_server_info tool (via fastmcp_pvl_core.register_server_info_tool) so operators can confirm the deployed version with a single MCP call. The default response carries server_name, server_version, and core_version. Servers that talk to a remote upstream wire upstream version reporting inside the DOMAIN-UPSTREAM-START / DOMAIN-UPSTREAM-END sentinel in src/image_generation_mcp/server.py; see CLAUDE.md for the wiring pattern.
Core environment variables shared across all fastmcp-pvl-core-based services:
| Variable | Default | Description |
|---|---|---|
IMAGE_GENERATION_MCP_KV_STORE_URL | file:///data/state | Persistent-state backend URL shared by every pvl-core subsystem that needs state. memory:// is in-process and lost on restart; file:///path persists on one server; redis://, dynamodb:// and mongodb:// each need their matching extra. When unset, defaults to file:///data/state (the volume family Docker images mount), or to memory://; with a warning; on a host where that directory is not usable. |
FASTMCP_LOG_LEVEL | INFO | Log level for FastMCP internals and app loggers (DEBUG / INFO / WARNING / ERROR / CRITICAL). The -v CLI flag overrides to DEBUG. |
FASTMCP_ENABLE_RICH_LOGGING | true | Set false for plain or structured JSON log output. |
Domain-specific variables go below under Domain configuration.
Callers authenticate via a bearer token or OIDC (mutually exclusive). See the Authentication guide for setup, mapped multi-subject tokens, OIDC, and troubleshooting.
After copier copy and gh repo create --push:
DOMAIN sentinel comment) in this README and in CLAUDE.md. The GENERATED-ENV-TABLE-* regions are not DOMAIN blocks; the config generator owns them and rewrites them on every run.uv sync --all-extras --all-groups.uv run pre-commit install.uv run pytest -x -q && uv run ruff check --fix . && uv run ruff format . && uv run mypy src/ tests/.CI workfl
Solo se muestra el principio; lee el resto en el repo