Figma REST API client: files, nodes, images, styles, components, projects and comments.
MCPpedia last refreshed this data
io.github.CloudCorpRecords/designport is an MCP server that figma REST API client: files, nodes, images, styles, components, projects and comments. Its tool list has not been published yet over stdio and sse, requires no API key, and scores 57/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"designport": {
"env": {
"FIGMA_PERSONAL_ACCESS_TOKEN": "your-token"
},
"args": [
"-y",
"@reneturcios/designport",
"mcp"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Figma REST API client: files, nodes, images, styles, components, projects and comments.
Run this in your terminal to verify the server starts. Then let us know if it worked - your result helps other developers.
npx -y '@reneturcios/designport' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked @reneturcios/designport against OSV.dev.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in developer-tools / design
XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.
Manage Supabase projects — databases, auth, storage, and edge functions
MCP server for using the GitLab API
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
MCP Security Weekly
Get CVE alerts and security updates for io.github.CloudCorpRecords/designport and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
designport is a compatible client for the Figma REST API, packaged
as an MCP server and a small CLI. It is an independent client for
the same public upstream API (https://api.figma.com/v1) — it is
not a copy of Figma's hosted OAuth remote MCP server, and none of
that server's OAuth tool surface (design context, screenshots,
metadata, variable definitions, code-connect, FigJam, or
design-system rules) is reproduced here.
The subset covers reading design files: fetch a file or specific nodes, render nodes to images, list image fills, styles, and components, browse team projects and project files, and read or post comments on a file.
Authentication is a Figma personal access token, sent as the
X-Figma-Token header. Set FIGMA_PERSONAL_ACCESS_TOKEN before
starting the server; a call made without it fails with an error
naming the variable. The API base can be overridden with
FIGMA_API_BASE.
npx @reneturcios/designport get_file <file_key>
docker run -i ghcr.io/cloudcorprecords/designport
designport get_file <file_key> --depth 2
designport get_file_nodes <file_key> 1:2,3:4
designport get_images <file_key> 1:2 --format png --scale 2
designport get_file_styles <file_key>
designport get_team_projects <team_id>
designport list_project_files <project_id>
designport post_comment <file_key> "Looks good"
designport --version
Exit codes: 0 success, 1 API error, 2 usage error.
npx -y @reneturcios/designport mcp
{
"mcpServers": {
"designport": {
"command": "npx",
"args": ["-y", "@reneturcios/designport", "mcp"],
"env": { "FIGMA_PERSONAL_ACCESS_TOKEN": "your-token" }
}
}
}
| Tool | Input | Figma endpoint |
|---|---|---|
get_file | file_key, version?, depth? | GET /files/{key} |
get_file_nodes | file_key, node_ids, depth?, version? | GET /files/{key}/nodes |
get_images | file_key, node_ids, format?, scale? | GET /images/{key} |
get_image_fills | file_key | GET /files/{key}/images |
get_file_styles | file_key | GET /files/{key}/styles |
get_file_components | file_key | GET /files/{key}/components |
get_team_projects | team_id | GET /teams/{id}/projects |
list_project_files | project_id | GET /projects/{id}/files |
get_comments | file_key | GET /files/{key}/comments |
post_comment | file_key, message, client_meta? | POST /files/{key}/comments |
node_ids is a comma-separated string of node IDs, sent as the
API's ids parameter. post_comment's optional client_meta is
a string containing a JSON-encoded object — for example
'{"x":10,"y":20}' — which is parsed and sent as the API's
client_meta object; keeping it a string keeps the tool schema
simple.
Out of scope for this subset: the variables API, dev resources, library assets and search, webhooks, activity logs, and payments.
npm install
npm run build
npm test
Tests run entirely on fake-fetch fixtures; no network and no real token are used.
MIT — see LICENSE.