MCP 服务器概览
# Figma MCP Server
An MCP (Model Context Protocol) server for analyzing Figma file structures.
Features
- Analyze Figma files to extract node hierarchies
- Supports both REST API and MCP protocol
- Configurable node tree depth
Prerequisites
- Node.js 16+
- npm or yarn
- A Figma API key
Installation
From npm
```bash npm install -g figma-mcp-server ```
From source
```bash git clone https://github.com/yourusername/mcp-figma.git cd mcp-figma npm install npm run build ```
Configuration
Copy the example environment file and add your Figma API key:
```bash cp .env.example .env ```
Then edit the `.env` file and add your Figma API key:
``` FIGMA_API_KEY=your_figma_api_key_here ```
You can get a Figma API key from your Figma account settings: https://www.figma.com/developers/api#access-tokens
Usage
As a REST API Server
Start the server:
```bash npm start ```
This will start an Express server on port 3000 (or the port specified in your `.env` file).
API Endpoints
- `GET /health` - Health check endpoint
- `GET /openapi.json` - OpenAPI specification
- `GET /mcp.json` - MCP manifest
- `POST /analyze` - Analyze a Figma file
Example request to the analyze endpoint:
```bash curl -X POST http://localhost:3000/analyze \ -H “Content-Type: application/json” \ -d ‘{“figmaUrl”: “https://www.figma.com/file/FILE\_ID/PROJECT\_NAME?node-id=NODE\_ID”, “depth”: 2}’ ```
As an MCP Server
The server can be used directly by an LLM through the MCP protocol:
```bash figma-mcp-server --cli ```
Or if running from source:
```bash npm run start – --cli ```
Client Example
A simple client example is included. To use it:
```bash node client-example.js https://www.figma.com/file/FILE\_ID/PROJECT\_NAME?node-id=NODE\_ID 2 ```
The last parameter is the optional depth parameter.
Development
Running in Development Mode
```bash npm run dev ```
Testing
```bash npm test ```
Docker
A Dockerfile is provided for containerized deployment:
```bash docker build -t figma-mcp-server . docker run -p 3000:3000 --env-file .env figma-mcp-server ```
License
MIT