Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
作者提供的说明(英文原文)
Run a 24/7 live stream of pre-recorded videos, or live stream a recorded video at a set time.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
Authorization标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
这个地址需要在请求的 header 中放入密钥,而添加连接器的菜单无法设置。请改用 Claude Code、Cursor 或 VS Code。
在终端中运行这条命令
claude mcp add --transport http livereacting https://mcp.livereacting.com/mcp --header 'Authorization: your-value'运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"livereacting": {
"url": "https://mcp.livereacting.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"livereacting": {
"type": "http",
"url": "https://mcp.livereacting.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个地址需要在请求的 header 中放入密钥,而添加连接器的菜单无法设置。请改用 Claude Code、Cursor 或 VS Code。
你的选择通过 Cookie 保存在这台设备上,无需账户。
Authorization 机密 必填 HTTP header这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过域名 livereacting.com 验证(注册中心会核实域名所有权)
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:Authorization
它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。
GitHub 仓库最后更新于–,最新版本(1.2.0)于35天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有: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、图片和脚本已被移除。链接会离开本站。
Run live video streams from an AI agent. Build a channel from a video playlist, start it, schedule it, watch it while it runs, and read the numbers afterwards — from Claude Code, Codex, Cursor, or anything else that speaks MCP.
https://mcp.livereacting.com/mcp
Streamable HTTP. Stateless. Authenticated with your LiveReacting API key.
Full reference, with every tool, input, response field, limit and error code: developers.livereacting.com/mcp (REFERENCE.md in this repo).
API access is included with every paid plan. Create a key in the Developer section of the LiveReacting Studio. Keys start with lr_.
With an API key, an account on the Free plan gets 403 API_ACCESS_REQUIRES_PAID_PLAN on every call. With OAuth (ChatGPT, Claude), the account can connect, and each tool call returns an error that explains the plan limit. The tools start working as soon as the plan includes API access, without connecting again.
Create the key first, put it in your shell profile as LIVEREACTING_API_KEY, then paste the config below.
Every example that cannot read that variable uses lr_… as a placeholder. Do not paste a real key into a file you commit. Where a harness supports an environment variable or a prompt, the block uses it.
In .mcp.json. Claude Code expands ${VAR} in a remote server's headers (docs), so the key stays out of the file:
{
"mcpServers": { "livereacting": { "type": "http", "url": "https://mcp.livereacting.com/mcp", "headers": { "Authorization": "Bearer ${LIVEREACTING_API_KEY}" } } } }
claude mcp add --transport http livereacting https://mcp.livereacting.com/mcp --header "Authorization: Bearer lr_…" also works, but it writes the key itself into the stored config.
In ~/.codex/config.toml:
[mcp_servers.livereacting]
url = "https://mcp.livereacting.com/mcp" bearer_token_env_var = "LIVEREACTING_API_KEY"
Then export LIVEREACTING_API_KEY=lr_… in your shell profile. Prefer this over http_headers, which puts the key in the config file.
In ~/.cursor/mcp.json. Cursor resolves ${env:NAME} in headers (docs):
{
"mcpServers": { "livereacting": { "url": "https://mcp.livereacting.com/mcp", "headers": { "Authorization": "Bearer ${env:LIVEREACTING_API_KEY}" } } } }
Or install the LiveReacting plugin from the Cursor Marketplace and set LIVEREACTING_API_KEY under Plugins → Configure. The plugin is .cursor-plugin/plugin.json and mcp.json in this repo.
In .vscode/mcp.json. The inputs block makes VS Code prompt for the key instead of storing it in the repo:
{
"inputs": [ { "id": "livereacting-key", "type": "promptString", "description": "LiveReacting API key", "password": true } ], "servers": { "livereacting": { "type": "http", "url": "https://mcp.livereacting.com/mcp", "headers": { "Authorization": "Bearer ${input:livereacting-key}" } } } }
Install the extension. Gemini CLI asks for the key once and keeps it in the system keychain:
gemini extensions install https://github.com/LiveReacting/livereacting-mcp
Or, without the extension, in ~/.gemini/settings.json. Gemini CLI expands $VAR and ${VAR} in every string of the file before it validates it, headers included (docs), so the key stays out of it:
{
"mcpServers": { "livereacting": { "httpUrl": "https://mcp.livereacting.com/mcp", "headers": { "Authorization": "Bearer ${LIVEREACTING_API_KEY}" } } } }
Install this repo as a power: Powers panel → Add Custom Power → Import power from GitHub, then paste https://github.com/LiveReacting/livereacting-mcp. The power reads LIVEREACTING_API_KEY from your environment (mcp.json).
In your Zed settings.json, under context_servers, add an HTTP server pointing at the URL with an Authorization header.
Add a Remote Extension (Streamable HTTP) in Goose's settings, URL https://mcp.livereacting.com/mcp, with a custom header Authorization: Bearer lr_….
| Harness | How the key is passed |
|---|---|
| Claude Code | ${VAR} in .mcp.json headers |
| Codex CLI | bearer_token_env_var |
| Cursor | ${env:VAR} in mcp.json headers |
| VS Code Copilot | headers with a prompted input |
| GitHub Copilot coding agent | static header secret only. This product does not support OAuth remote servers, so the key path is the only path here, now and later |
| Gemini CLI | $VAR in settings.json headers |
| Kiro | ${VAR} in the power's mcp.json headers |
| Zed | headers in settings.json |
| Goose | remote extension header |
| ChatGPT | open LiveReacting in ChatGPT, click Install plugin and sign in with your LiveReacting account. See livereacting.com/chatgpt |
Protocol revisions: 2024-10-07 through 2025-11-25. If your client reports a version error, that is the first thing to check. 2026-07-28 is not supported yet — no published TypeScript SDK speaks it.
30 tools in five toolsets. Every name is prefixed livereacting_, so one search in a client that defers tool loading finds the whole server.
| Tool | What it does |
|---|---|
list_destinations | Your connected YouTube, Facebook, Twitch, LinkedIn, X and custom RTMP destinations |
validate_destinations | Checks a destination's connection still works, before you rely on it |
| Tool | What it does |
|---|---|
list_projects | Your projects |
get_project | One project's configuration |
create_project | A new project |
update_project | Change a project's settings |
get_scenes | Scenes in a project, or one scene |
manage_scene | Create, rename or delete a scene |
activate_scene | Switch the active scene, including during a broadcast |
create_scene_with_playlist | A scene plus its video playlist in one call |
add_layer | Add one video playlist, audio playlist or single video layer to an existing scene |
get_layer | One layer, with its playlist truncated for context |
set_playlist | Replace a playlist's contents |
| Tool | What it does |
|---|---|
start_stream | Go live |
stop_stream | End the broadcast |
get_stream_status | Live state, per destination, including expired connections |
schedule_stream | Go live at set times |
cancel_schedules | Cancel scheduled broadcasts |
sync_stream | Push editor changes to a running stream |
list_broadcasts | Past broadcasts for a project |
| Tool | What it does |
|---|---|
list_media | Files and folders in your library |
get_media_file | One file's details |
upload_file | Start uploading a local file: returns part URLs and curl commands |
complete_upload | Finish an upload once every part is sent |
import_media | Import from Google Drive, Dropbox or YouTube |
import_from_url | Import from a direct link to a media file on any public host |
get_import_status | Poll an import, including every video of a playlist import |
encode_media | Re-encode a file for streaming |
get_encode_status | Poll an encode |
| Tool | What it does |
|---|---|
get_stream_analytics | YouTube analytics, or per-video playlist analytics (that type on request) |
Both are query parameters on the URL, so no client support is needed.
https://mcp.livereacting.com/mcp?toolsets=streams,media
https://mcp.livereacting.com/mcp?read_only=1
read_only=1 drops every tool that can change anything. Useful for a monitoring agent you do not want touching a live broadcast.
An agent that promises any of these is lying to your customer.
upload_file returns signed part URLs and ready curl commands; the agent sends the bytes itself, then calls complete_upload.150 requests per minute per account, shared across your API keys.
REST and MCP are counted separately, so the two surfaces get 150 each rather than sharing one budget. Do not plan around that: it is an implementation detail of how the two are metered, not a promise.
A 429 comes back as a tool error that says the number and how long to wait, because the model is the one reading it. The polling tools — get_stream_status, get_import_status, get_encode_status — each document a minimum interval. Poll tighter than that and you spend your own budget on nothing.
`set_playlist` replaces the whole playlist. It is not an append. To add one video, read the layer first, then send the complete list back. The tool tells you when a write shrinks the playlist, but it will still do what you asked.
Starting and stopping a stream is not idempotent. If a call times out, ask get_stream_status what happened. Do not retry — a retry can start a second attempt.
Full MCP reference: developers.livereacting.com/mcp Full REST API reference: developers.livereacting.com Support: hello@livereacting.com Privacy policy: livereacting.com/privacy-policy