Skip to main content
Glama
Penpot MCP Server

Penpot MCP Server

by Mart1M

Penpot MCP Server

A Model Context Protocol (MCP) server for integrating Penpot with AI assistants.

Installation & Publishing

For development

npm install
npm start

For publishing to npm

npm publish

For users (via npx)

No installation needed - use directly with npx in your MCP configuration.

Related MCP server: F-MCP (Figma MCP Bridge)

Configuration

Penpot Configuration

To use the Penpot API, you need to configure:

  1. Access Token: Log in to Penpot → Profile → Access tokens → Create new token

  2. API URL (optional): For self-hosted Penpot instances

Add both to your MCP configuration environment variables:

  • PENPOT_ACCESS_TOKEN: Your access token

  • PENPOT_API_URL: API base URL (defaults to https://design.penpot.app/api)

Available Tools

get_board

Retrieves a Penpot board.

Parameters:

  • url (string, required): Complete Penpot board URL with board-id

Returns: HTML, JSON object, tokens used, and CSS variables

debug_board

Retrieves a Penpot board and displays the raw JSON for debugging.

Parameters:

  • url (string, required): Complete Penpot board URL with board-id

get_tokens

Retrieves design tokens from a Penpot file.

Parameters:

  • url (string, required): Complete Penpot file URL (only needs file-id)

Returns: DTCG formatted tokens, CSS variables, and summary

Project Structure

penpot-mcp/
├── index.js                 # Main server
├── src/
│   └── tools/
│       ├── get-board.js     # get_board tool
│       ├── debug-board.js   # debug_board tool
│       └── get-tokens.js    # get_tokens tool
├── package.json
└── README.md

MCP Client Configuration

Add this configuration to your MCP client:

{
  "mcpServers": {
    "penpot": {
      "command": "npx",
      "args": [
        "-y",
        "penpot-mcp-server@latest"
      ],
      "env": {
        "PENPOT_ACCESS_TOKEN": "your_penpot_token_here",
        "PENPOT_API_URL": "https://design.penpot.app/api"
      }
    }
  }
}

Or for local development:

{
  "mcpServers": {
    "penpot": {
      "command": "node",
      "args": ["/path/to/penpot-mcp/index.js"],
      "env": {
        "PENPOT_ACCESS_TOKEN": "your_penpot_token_here",
        "PENPOT_API_URL": "https://design.penpot.app/api"
      }
    }
  }
}

Available Tools

3 tools
debug_boardA

Retrieves a Penpot board and displays raw JSON for debugging

Inputs: url (required).

get_boardB

Retrieves a Penpot board and converts it to Tailwind CSS code

Inputs: url (required).

get_tokensA

Retrieves design tokens from a Penpot file and formats them according to DTCG standard

Inputs: url (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: debug_board returns raw JSON, get_board converts to Tailwind CSS, and get_tokens retrieves design tokens. No ambiguity between them.

    Naming Consistency4/5

    All tool names follow verb_noun pattern (debug_board, get_board, get_tokens), but one uses 'debug' while the other two use 'get', showing slight inconsistency in verb choice.

    Tool Count4/5

    Three tools is on the lower side but still reasonable for a focused server. It covers core retrieval operations without being overly minimal.

    Completeness3/5

    The tool surface covers board retrieval and token extraction but lacks operations like listing files, projects, or creating/updating content, which are notable gaps for a design server.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI agents to programmatically access self-hosted Penpot instances to read, create, modify, and export design elements through natural language. It provides 66 tools for managing projects, shapes, design tokens, and comments using a dual-access strategy of direct database reads and RPC API writes.
      12
      Apache 2.0
    • A
      license
      B
      quality
      B
      maintenance
      Enables AI assistants to read, analyze, and modify Figma designs, manage design tokens, and create prototype connections, all while keeping data local.
      63
      44 npm
      10
      MIT
    • A
      license
      C
      quality
      D
      maintenance
      Enables AI assistants to create, modify, and manage Penpot designs programmatically, providing full manipulation capabilities for the open-source design tool.
      81
      54 npm
      20
      MIT
    • A
      license
      Not graded
      quality
      F
      maintenance
      Enables LLMs to query, transform, and create design elements in Penpot via the Model Context Protocol and Penpot's Plugin API.
      535
      Mozilla Public 2.0