Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
제작자가 쓴 설명(영어 원문)
Read and write a FreeVectorIcons design collection: briefs, DESIGN.md, icons and brand assets.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
FVI_TOKEN, FVI_API_URL, FVI_READ_ONLY비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"fvi": {
"command": "npx",
"args": [
"-y",
"@freevectoricons/mcp"
],
"env": {
"FVI_TOKEN": "your-value",
"FVI_API_URL": "your-value",
"FVI_READ_ONLY": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add fvi --env FVI_TOKEN=your-value --env FVI_API_URL=your-value --env FVI_READ_ONLY=your-value -- npx -y @freevectoricons/mcp실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"fvi": {
"command": "npx",
"args": [
"-y",
"@freevectoricons/mcp"
],
"env": {
"FVI_TOKEN": "your-value",
"FVI_API_URL": "your-value",
"FVI_READ_ONLY": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"fvi": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@freevectoricons/mcp"
],
"env": {
"FVI_TOKEN": "your-value",
"FVI_API_URL": "your-value",
"FVI_READ_ONLY": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
FVI_API_URL envFVI_READ_ONLY env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 FreeVectorIcons 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: FVI_TOKEN
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.3.0-beta.3)은 어제 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.
같은 카테고리에는: Figma Context MCP, Claude Real Video, Figma MCP Server
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
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.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
Beta. This package is under active development. Tool schemas, configuration options, and error behavior may change before v1.0.0. Report issues or review the product docs before production use.
Model Context Protocol (MCP) server for FreeVectorIcons design collections.
Connects Cursor, Claude Desktop, and other MCP clients to a single FreeVectorIcons collection (token-derived binding — configure FVI_TOKEN only): catalog icons, uploaded SVGs, strategy briefs, DESIGN.md, and related project files. Access is scoped to one collection token.
npm: @freevectoricons/mcp
Agents that generate icons inline often produce inconsistent SVG, unstable identifiers, and incorrect licensing across sessions. FreeVectorIcons stores approved assets in versioned collections with stable IDs and metadata.
This server exposes that collection to MCP clients. Agents search and retrieve canonical assets instead of regenerating SVG from scratch, and write designs back into the collection for review. Uploaded assets are versioned, so agents can iterate freely without losing prior work. The server runs over stdio and calls the FreeVectorIcons HTTP API. Responses are metadata-first JSON; file bytes are fetched only when a tool requests inline content or a download URL.
Hosted connector. If your client supports remote MCP servers, you can skip this package and connect to https://mcp.freevectoricons.com/mcp instead: nothing to install, and you sign in from your client or send a collection token as an Authorization: Bearer header. See freevectoricons.com/mcp. This package suits agents that upload files straight from disk, or setups that prefer a local process.
Add the server to your MCP client configuration (for example .cursor/mcp.json):
{
"mcpServers": { "freevectoricons": { "command": "npx", "args": ["-y", "@freevectoricons/mcp"], "env": { "FVI_TOKEN": " " } } } }
Run the server with npx as shown above. MCP uses stdio for protocol messages; the process must not write non-protocol output to stdout.
See mcp.json.example for a copy-paste template.
Add the same mcpServers block to claude_desktop_config.json:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonThis repository is also a Cursor Plugin (.cursor-plugin/plugin.json + mcp.json).
~/.cursor/plugins/local/freevectoricons for local testing (copy files; avoid broken symlinks).FVI_TOKEN) from FreeVectorIcons → Integrations → Setup MCP.FVI_API_URL (defaults to production), FVI_READ_ONLY=true to hide write tools.Submit / re-index: cursor.com/marketplace/publish.
Gemini CLI passed the compatibility tests against the hosted endpoint on 5 Nov 2026. Antigravity is still being tested after the 0.3.0-beta.3 tool rename; until it passes, treat it as a preview and report issues.
Antigravity plugin. This repository is also an Antigravity plugin (.antigravity-plugin/plugin.json, mcp_config.json and the skills/ folder). Install it, then turn it on under /plugin (CLI) or Settings → Customizations (app) and paste your collection token when asked.
Antigravity config block. Or add this to ~/.gemini/config/mcp_config.json (all projects) or .agents/mcp_config.json (one workspace):
{
"mcpServers": { "freevectoricons": { "command": "npx", "args": ["-y", "@freevectoricons/mcp"], "env": { "FVI_TOKEN": " " } } } }
Gemini CLI extension. Install from this repository and enter your collection token when prompted:
gemini extensions install https://github.com/FreeVectorIcons/fvi-mcp
Change the token later with gemini extensions config freevectoricons. The extension pins a released package version, so a new release reaches you when you run gemini extensions update freevectoricons.
| Variable | Required | Default | Description |
|---|---|---|---|
FVI_TOKEN | yes | — | Collection-scoped MCP token (fvi_col_*). Collection binding is derived via GET /api/mcp/whoami. |
FVI_COLLECTION_ID | no | — | Deprecated / override only. If set and it disagrees with the token’s collection, the adapter fails closed (COLLECTION_MISMATCH). Prefer omitting it. |
FVI_API_URL | no | https://freevectoricons.com/api | API base URL (include /api) |
FVI_READ_ONLY | no | false | When true, write tools are not registered. Can only narrow token scopes |
FVI_TOOLS | no | — | Comma-separated tool names to register. Old names from before 0.3.0-beta.3 are accepted. Can only narrow access |
FVI_SKIP_TOKEN_CHECK | no | false | Escape hatch if a future token shape is rejected locally |
FVI_ALLOW_FILE_PATHS | no | false | Allow filePath on upload tools. Off by default |
FVI_FILE_PATH_ROOTS | no | — | Comma-separated directories filePath may read |
FVI_TIMEOUT_MS | no | 30000 | HTTP request timeout for API calls (milliseconds) |
FVI_UPLOAD_TIMEOUT_MS | no | 120000 | Timeout for binary upload requests (milliseconds) |
FVI_RETRY_MAX | no | 3 | Maximum retry attempts for transient failures |
FVI_RETRY_BASE_MS | no | 500 | Base delay for exponential backoff (milliseconds) |
FVI_LOG_LEVEL | no | info | Log level: debug, info, warn, or error (stderr, JSON) |
Set FVI_API_URL only when pointing at a non-production API.
Write tools are enabled by default. Agents can park new assets and upload new versions of existing ones; each change is stored as a version you can review or restore in the collection UI. Set FVI_READ_ONLY=true only if you want retrieval without uploads.
Treat FVI_TOKEN like a password. It grants access to one collection.
FVI_READ_ONLY=true if an agent should only read from the collection, not upload.Restarting MCP servers alone does not rebind a shared stdio connector that still has an old FVI_TOKEN.
FVI_TOKEN (uninstall + add if Configure is unavailable).get_collection_context and confirm collection.id / name.Records tools (get_asset_spreadsheet_preview, set_collection_strategy_brief, promote_asset_to_strategy_brief, set_asset_transcription_status, delete_collection_asset, probe_asset_text_layer) are listed only when the API has those features enabled. Write tools are also hidden when FVI_READ_ONLY=true or the token lacks write scope.
| Tool | Description |
|---|---|
get_collection_context | Collection metadata, strategy brief, asset summary |
list_collection_assets | All assets (metadata only) |
search_collection_assets | Search by name, tag, category, or style |
get_asset | One asset by ID |
get_asset_content | Inline UTF-8 for catalog SVGs, uploaded SVGs, Markdown |
get_asset_download_url | Short-lived URL for PNG, PDF, spreadsheets (XLS/XLSX), and other binaries |
get_asset_download_urls | The same URLs for up to 50 assets per call |
get_asset_spreadsheet_preview | Size-capped first-sheet CSV/HTML preview for XLS/XLSX |
list_asset_versions | Version number, name, size, verified hash, and source |
list_community_packs | Public community icon packs with license and agentGuide URLs |
get_community_pack_guide | A pack's AGENTS.md: license, attribution, URL patterns, curated usage guide |
| Tool | Description |
|---|---|
create_asset_upload | Create asset record and signed upload target |
park_asset | Upload inline text or base64 into the collection |
create_asset_version | Upload a new version of an existing asset (prior versions retained) |
set_collection_strategy_brief | Replace collection.metadata.strategyBrief (native Strategy Brief tab) |
promote_asset_to_strategy_brief | Copy Markdown asset text into the native brief (does not delete the asset) |
set_asset_transcription_status | Patch textLayer / transcription metadata (no OCR) |
update_asset | Metadata-only PATCH: name, tags, documentType, DRL fields, custom metadata, and links |
set_collection_design_md | Pin the canonical DESIGN.md from inline Markdown or an existing asset |
update_collection_purpose | Set collection purpose to brand or records |
create_asset_version_upload | Signed upload for a new version of an existing asset |
complete_asset_upload | Verify checksum and size, then make that version current |
refresh_asset_upload | Issue a fresh upload URL for a pending upload whose URL expired (15 minutes) |
revert_asset_to_version | Copy an earlier version forward. History is kept |
delete_collection_asset | Soft-unlink collection item only — does not hard-delete bytes. Requires the delete scope |
probe_asset_text_layer | Best-effort PDF embedded text probe (API feature-flagged) |
Uploaded assets keep version history in FreeVectorIcons. Agents should prefer create_asset_version when refining an existing design, and park_asset for new files. Agents should use metadata and download URLs for images, PDFs, and spreadsheets (.xls / .xlsx) — workbook bytes are not dumped into MCP tool results. Use get_asset_spreadsheet_preview for a capped first-sheet look. For scanned PDFs, set transcription status after parking a Markdown sibling.
Parked STRATEGY_BRIEF.md is a supporting document only — it does not fill the native Strategy Brief tab until you call promote_asset_to_strategy_brief or set_collection_strategy_brief.
Optional write metadata: drlProjectId, drlAssetType, documentType, tags.
Tool names dropped the redundant design_ so they fit clients that prefix tool names with the server name (Antigravity's prefix is 33 characters, and Gemini allows 64 in total). Arguments, scopes and behaviour are unchanged. Results are unchanged except that a set_collection_strategy_brief dry run now reports would.operation: "set_collection_strategy_brief".
The old names still work when called, on this package and on the hosted endpoint, but are no longer listed. Update saved prompts, tool allowlists (FVI_TOOLS accepts either) and cached approvals to the new names, then reconnect or restart your client so it reloads the too
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요