Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
作者提供的说明(英文原文)
Motion graphics as code: find, preview and render lower thirds, titles, charts and 3D to video
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"volito": {
"command": "npx",
"args": [
"-y",
"volito",
"mcp"
]
}
}
}在终端中运行这条命令
claude mcp add volito -- npx -y volito mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"volito": {
"command": "npx",
"args": [
"-y",
"volito",
"mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"volito": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"volito",
"mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 monarcpro 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.3.1)于5天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 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、图片和脚本已被移除。链接会离开本站。
Volito
Brand-aware, voice-synced motion graphics as code — for developers and AI agents.
Website · Docs · Packs · For agents · npm · Changelog
By MONARC STUDIOS, the team behind MONARC PRO. Volito is the motion graphics engine inside the MONARC PRO video editor, opened up; the name is Latin for “to flutter”. Every graphic is a small program — function frame(t, $) returns the SVG of one frame — so it is readable, diffable, seekable to any frame, and something an AI agent can write and fix. It ships with 107 ready-made graphics in twelve packs (3D, maps, transitions, kinetic type, interactive UI and filter effects among them), 36 brand styles, sixteen animated patterns, a CLI, a Node API, a browser player and an MCP server, and renders to ProRes 4444 or HEVC with alpha, WebM, MP4, GIF, PNG frames or SVG.
DESIGN.md, or a couple of overrides, and the whole pack re-skins.--sound gives any render a sound track Volito synthesises itself — a pop for every spring, a whoosh for every move across the frame, ticks for letters, a hit for a slam, a bed in a key — and a program can design its own cues beside its frames.This intro is a Volito program: kinetic type, a 3D wordmark and an end card, rendered in Node.
npx volito render lower-third \
--prop name="Priya Sharma" --prop role="Product designer" \ --style ember --aspect 16:9 --out priya.mov
npm install volito # or run it with npx, nothing to install
Volito was first published as @monarcpro/motion; that package is deprecated in favour of this one.
Node 20.10 or newer. Video formats need ffmpeg on your PATH (or VOLITO_FFMPEG); stills, contact sheets and PNG frames do not. WebM needs an ffmpeg built with libvpx.
107 graphics in twelve packs. Every one takes any brand style and any aspect, and every part of it takes any move.
| Pack | Items |
|---|---|
| Essentials (14) | lower-third · title-card · headline (kinetic, on the voice) · subscribe · social · callout · stat · bar-chart · steps · quote · banner · end-card · logo-sting · wipe |
| Broadcast (10) | Lower thirds in five looks — lt-bars, lt-reveal (mask reveal), lt-kicker, lt-pill (picture or initials, status dot), lt-news (tight boxes) — ticker (crawl), live-badge (viewers, clock), score-bug (teams, scores, clock, goal flash), location (pin and place card), countdown |
| Social (8) | follow-card (profile, count, Follow press) · notification (phone or desktop) · notifications (a stack that cascades) · comments (typing on) · chat (thread with typing dots) · post (counts and a heart) · now-playing (music card) · rating (stars, score, review) |
| Data (9) | line-chart (draws on, target line) · donut · bar-race (overtaking across periods) · goals (meters) · versus · timeline · funnel · world-map (countries filled by value, regions) · flight (a great-circle route between two places) |
| 3D (7) | logo-3d (extruded wordmark, light sweep) · title-3d (letters flip up) · number-3d (an extruded counter) · card-flip (front and back) · cube (a word prism that rolls) · bars-3d (orbiting camera) · globe (spins to a country, routes arc in) |
| Transitions (11) | Cover the frame by the cut, reveal the next shot: iris (circle, diamond, star, square) · blinds · doors (with a Bauhaus disc) · glitch · ink (wobbly blooms) · clock · tiles (Bauhaus shapes) · pixels · stripes · slices · whip — each with a word at the cut |
| Annotate (10) | Point at things in footage (places in % of the frame): arrow (hand-drawn or clean) · circle · spotlight (feathered dim) · focus (brackets that lock on) · highlight (highlighter, underline, box, strike) · stamp (pressed ink) · reactions (live hearts, likes, fire) · pointer (leader line and card) · emphasis · markers (numbered) |
| Type (10) | Kinetic type: typewriter · word-swap (a word that keeps changing) · split-flap · marquee (tilted scrolling bands) · echo · liquid-fill · decode · word-by-word · key-phrase (marker on *marked* words) · stack (editorial) |
| Backdrops (9) | Moving grounds: pattern (any of the sixteen) · aurora · tiles (Bauhaus field) · retro-grid (synthwave) · blobs (lava goo) · gradient · starfield · bokeh · topo |
| Promo (8) | sale-badge (starburst) · price-card (counts down, strike, click) · coupon (copy the code) · offer-countdown (D:H:M:S) · features (checklist) · cta (button and cursor) · launch · ribbon (crossing tapes) |
| UI (5) | Interactive states (see *Interactive states*): button (idle, hover, press, loading, done) · toggle · like (rolling count) · loader (success or failure) · bell (badge, read) |
| Effects (6) | SVG filters, no GPU: grain (film grain, re-rolled every film frame) · light-leak · glass (frosted card over drifting colour) · chromatic (channels split and snap) · warp (liquid ripple settling) · neon (flickers on) |
volito info lists every prop. To see them all live, serve this package's folder and open examples/gallery.html.
Every item is made of named parts (volito info lower-third lists them: scrim, spine, plate, name, role). Any part takes any move, and the moves combine freely:
volito render lower-third \
--motion name.in=typewriter --motion plate.in=iris --motion "*.ease=bouncy" \ --motion role.emphasis=pulse@2 --motion spine.idle=pulse --out priya.mov
| Setting | Takes |
|---|---|
in, out | 38 moves — rise drop slide smear arc pop zoom push grow wipe iris shutter blinds diagonal blur flip turn spin roll swing skew stretch squash bounce elastic slam tilt float glitch flicker typewriter scramble … An exit plays its move backwards. |
ease | out inOut expo back elastic bounce, springs snappy punchy bouncy calm wobbly, or spring(f,d), steps(n), cubic(x1,y1,x2,y2) |
from, outFrom | the side a move comes from or leaves to (left, right, up, down, diagonals) |
dur, delay, at, outAt, distance, intensity, origin, blur | timing, travel, scale, pivot, motion blur |
idle | a loop while it holds: float bob pulse breathe wiggle sway drift jitter spin heartbeat shimmer |
emphasis | hits at a time, a beat or a spoken word: "shake@1.2, pop@now" (pulse pop shake jump wobble flash spin rubber tada) |
split, order, stagger | text whole, or by lines / words / letters, forward reverse center edges random |
keys | your own keyframes: [{"t":0,"x":-300,"op":0},{"t":0.8,"x":0,"op":1,"ease":"bouncy"}] — any path |
Or let it choreograph itself: --mood energetic | elegant | playful | cinematic | glitchy | minimal | retro | kinetic, and --seed for a new take on every number (the same number always moves the same way). --speed 2 plays it all twice as fast. volito moves lists everything. Programs you write get the same kit: const M = motion($, t); M.part("card", { at, in: "pop", box }, markup).
The 3D items are real geometry, not tricks: meshes are lit, faces turned away are culled, everything is sorted far to near and projected through a perspective camera — then drawn as SVG paths, so 3D renders on any machine with no GPU, at the same speed as the rest. 3D text is extruded from the outlines of the bundled faces (read straight from the font files), so a logo turns in the brand's own type.
function frame(t, $) {
const S = scene3d($, { camera: { yaw: -20 + 40 * (t / $.dur), pitch: -8 } }); S.add(S.text("VOLITO", { face: $.font("display"), size: 220 * $.k, depth: 60 * $.k, color: $.c.fg, side: $.c.accent })); return S.render(); }
Maps use Natural Earth's countries (177, packed into 30 KB): worldMap($, { center, zoom }) projects them flat (Equal Earth), worldGlobe(S, …) puts them on a 3D globe, and worldFind("UK") finds one by name, short name or ISO number. volito api documents both.
Every render can carry sound, and Volito makes it the way it makes pictures: from code, from nothing. No sample library, no files to find. --sound reads the graphic's own motion — every part's move leaves a mark — and gives each its sound: a spring pops, a move across the frame whooshes (louder the further it travels), letters tick, a typewriter types, a slam hits, a glitch zaps, a burst sparkles. --bed Dm lays a pad under it in a key, and it steps back under every hit on its own.
volito render logo-sting --prop wordmark=VOLITO --sound --bed Dm --format mp4 --out sting.mp4
volito sound lower-third --prop name="Priya Sharma" --out priya.wav # the track alone, with its cue list
A program designs its own sound beside its frames — function sound($) runs once with the same $ ($.dur, $.beat, $.at(word), $.data), so cues land on the same beats the picture uses:
function sound($) {
return { cues: [ { at: 0.2, kind: "riser", dur: 1.1 }, { at: $.beat("in", 1.3), kind: "hit", level: 1.1 }, { at: 1.5, kind: "shimmer", dur: 1.2, pan: 0.3 }, { at: -0.6, kind: "ding", note: "A5", level: 0.6 }, // negative counts from the end ], bed: { key: "D", mode: "minor", fr
只显示了开头部分;其余内容请在仓库中阅读