Atlas / MCP servers / lancasteerr / figma_bridge_agent

figma_bridge_agentSAFE

mcp/lancasteerr/figma-bridge-agent

一个本地运行的 MCP 服务器和 Figma 开发插件,用于读取 Figma Design 文档,并在隔离的 Proposal 副本中创建可审查的修改。

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
23 17r · 6w · 0d
Transport
—
License
MIT
Stars
0
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

让本地 Coding Agent 安全读取 Figma Design 文档,并在隔离的 Proposal 副本中创建可审查的修改。

English · 中文文档 · 最新版本 · 报告问题

本地优先 · 源稿不可直接修改 · 无云端中继 · 无遥测

这是通过 GitHub 分发的非官方开发工具,与 Figma 不存在隶属或背书关系,也不会发布到 Figma Community。Figma 文件和桥接凭据只经过本机 loopback。

能做什么

MCP Server 当前公开 23 个受限工具。完整列表和推荐调用顺序见 MCP 工具参考。

界面预览

首次配对

插件未配对时会显示 PowerShell 命令;开始配对后,终端与插件分别显示需要人工核对的六位短码。

已连接状态

配对完成后,插件窗口会显示 Bridge 连接状态、当前文档和最近连接时间。

Agent 的修改会出现在 Figma 画布上的隔离 Proposal 中,便于与源设计并排审查。

快速开始

前置条件

  • Windows
  • Node.js 20 或更高版本
  • Figma Desktop
  • 支持本地 stdio MCP 或 Agent Plugins 1.0 的 Coding Agent

普通用户不需要 Git、pnpm 或源码仓库。请打开 GitHub 最新版本页面,记下不含 v 前缀的版本号,并用它替换下文中的 ``。Figma 插件 ZIP、MCP npm 包和 Agent Plugin 必须来自同一版本。

1. 选择一种安装方式

两种方式公开相同的 23 个 MCP 工具,只需选择其中一种:

  • 安装 Agent Plugin:适用于本项目当前已适配的 Codex、Cursor 和 GitHub Copilot;自动提供 MCP 配置及安全 Proposal 工作流 Skill。请按插件安装指南操作。
  • 直接配置 MCP Server:适用于 Claude Code、Claude Desktop及其
Read from source at commit a60600040700OBSERVED · 2026-10-11
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add test-support -- npx -y @figma-agent/[email protected]
claude-desktop
{
  "mcpServers": {
    "test-support": {
      "command": "npx",
      "args": [
        "-y",
        "@figma-agent/[email protected]"
      ]
    }
  }
}
03

Exposed tools (23)

17 read · 6 write · 0 destructive.

ToolRiskDescription
figma_apply_design_planwrite
figma_create_component_from_nodewrite
figma_create_framewrite
figma_discard_proposalread
figma_duplicate_as_proposalread
figma_export_assetread
figma_get_cssread
figma_get_design_resourcesread
figma_get_fingerprintread
figma_get_noderead
figma_get_raw_noderead
figma_get_selectionread
figma_get_treeread
figma_get_variablesread
figma_list_fontsread
figma_render_noderead
figma_reparent_nodesread
figma_set_instance_propertieswrite
figma_set_layoutwrite
figma_stage_assetread
figma_statusread
figma_update_textwrite
figma_validate_design_planread
04

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (5 observation(s))
Shell
declared (3 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (8)

LOWInventory / provenance · inv.hidden_file · CWE-1104
.prettierrc.json
.prettierrc.json
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/protocol/src/design-plan.test.ts:38
'../../../plugins/figma-local-agent/skills/figma-local-agent/references/design-plan-v1.md',
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
apps/figma-plugin/src/ui/auth.ts:11
return Uint8Array.from(atob(padded), (character) => character.charCodeAt(0));
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
apps/figma-plugin/package.json
@noble/hashes, zod, @figma/plugin-typings, esbuild
Why it matters. 4 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
apps/mcp-server/package.json
@modelcontextprotocol/server, @noble/curves, @noble/hashes, @xmldom/xmldom, file-type, image-size, ws, zod
Why it matters. 10 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@eslint/js, @types/node, eslint, eslint-config-prettier, globals, jszip, prettier, typescript
Why it matters. 10 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
packages/protocol/package.json
@noble/curves, @noble/hashes, zod
Why it matters. 3 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
packages/test-support/package.json
ws, @types/ws
Why it matters. 2 dependency range(s) float
Fix. pin exact versions or ship a lockfile

Gates applied: no_behavioural_pass.

Audited 2026-10-11 · audit v0.4.1 · source sha a60600040700full audit observations/trust-audit/mcp-server/lancasteerr__figma_bridge_agent.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-11a60600040700SAFEB89first audit
06

Questions

What is the figma_bridge_agent MCP server?

一个本地运行的 MCP 服务器和 Figma 开发插件,用于读取 Figma Design 文档,并在隔离的 Proposal 副本中创建可审查的修改。

What tools does figma_bridge_agent expose?

23 in total: 17 read-only, 6 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is figma_bridge_agent safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.

What credentials does figma_bridge_agent need?

No credential environment variables were found in its source, so it appears to need none.

How current is this page?

The grade is for one exact copy of the source (a60600040700), read on 2026-10-11. The repository is watched and re-audited when it changes.

Advertisement