Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
作者提供的说明(英文原文)
Licensed soundtracks and sound effects matched to your video. Commercial use OK.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
SONILO_API_KEY, SONILO_API_URL, SONILO_MCP_BASE_PATH, TIME_OUT_SECONDS标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://api.sonilo.com/mcp打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"sonilo": {
"command": "uvx",
"args": [
"sonilo-mcp"
],
"env": {
"SONILO_API_KEY": "your-value",
"SONILO_API_URL": "your-value",
"SONILO_MCP_BASE_PATH": "your-value",
"TIME_OUT_SECONDS": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add --transport http sonilo https://api.sonilo.com/mcpclaude mcp add sonilo --env SONILO_API_KEY=your-value --env SONILO_API_URL=your-value --env SONILO_MCP_BASE_PATH=your-value --env TIME_OUT_SECONDS=your-value -- uvx sonilo-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"sonilo": {
"url": "https://api.sonilo.com/mcp"
}
}
}粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"sonilo": {
"command": "uvx",
"args": [
"sonilo-mcp"
],
"env": {
"SONILO_API_KEY": "your-value",
"SONILO_API_URL": "your-value",
"SONILO_MCP_BASE_PATH": "your-value",
"TIME_OUT_SECONDS": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"sonilo": {
"type": "http",
"url": "https://api.sonilo.com/mcp"
}
}
}粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"sonilo": {
"type": "stdio",
"command": "uvx",
"args": [
"sonilo-mcp"
],
"env": {
"SONILO_API_KEY": "your-value",
"SONILO_API_URL": "your-value",
"SONILO_MCP_BASE_PATH": "your-value",
"TIME_OUT_SECONDS": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://api.sonilo.com/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
SONILO_API_URL envSONILO_MCP_BASE_PATH envTIME_OUT_SECONDS env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
服务器要求先登录,才会列出它的工具。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 sonilo-ai 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
在 163 毫秒内响应(HTTP 401)
声明支持 OAuth 登录,你的 AI 应用可以带你去登录
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 3 项适用的基础检查中通过了 3 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:SONILO_API_KEY
两种方式都可以:安装在你的电脑上,或者连接云端版本。
GitHub 仓库最后更新于–,最新版本(0.28.0)于11天前进入注册中心。
支持 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、图片和脚本已被移除。链接会离开本站。
An MCP (Model Context Protocol) server that exposes Sonilo's licensed music and sound-effects API to MCP-compatible clients (Claude Code, Claude Desktop, Codex).
The flagship tool is `video_to_music`: hand it your finished video and it composes an original soundtrack matched to the cut — the music follows the pacing, emotion, and edits because the model saw them. Length matches the video automatically. Every track is licensed and safe for commercial use (terms apply). text_to_music is also available for fixed-length tracks with no video to match.
For sound design, `video_to_sfx` watches your video and generates matching sound effects, returned as a standalone audio file. text_to_sfx generates a standalone effect from a description.
▶ [Example result](https://github.com/cindyxu1030/sonilo-video-to-music-cookbook/blob/main/assets/demo-trailer.mp4) — an AI-generated trailer with its soundtrack composed by video_to_music from the assembled cut. For recipes covering any AI-video pipeline (stitch → grade → add music → mux), see the Sonilo video-to-music cookbook.
Sign in once with the CLI, then add the server with no secret in the config:
npm install -g sonilo-cli && sonilo login
claude mcp add sonilo -- uvx sonilo-mcp
Or hold an API key yourself — get one from the Sonilo dashboard:
claude mcp add sonilo --env SONILO_API_KEY=sk-... -- uvx sonilo-mcp
Then start a session and ask, e.g. *"Make background music that matches this video: ~/Desktop/promo.mp4."*
segments let you script effects to specific time ranges ([{start, end, prompt}]).wav, mp3, aac, or flac.proofread transcribes a video and translates the transcript into editable .srt files, one per language plus the source-language transcript. Read and correct the wording, then hand the files to dubbing as subtitles so the dub speaks exactly the approved text — nothing is voiced until you have signed off on it.text_to_music, video_to_music, video_to_video_music, video_to_sound, and video_to_video_sound accept variants_num (1–10, default 1): generate several distinct creative directions in one request instead of re-rolling one at a time. Cost scales linearly with N, and N > 1 is never covered by the free trial.text_to_music and video_to_music accept stems=true: get the generated track additionally split into drums, bass, vocals and other, at no extra charge. Separation adds a few minutes; on video_to_music it splits the generated music, never the video's own audio.dubbing gets one free run, a 15-second preview: the first single-language call without subtitles dubs only the first 15 seconds of the video. After that it bills video duration × number of languages (see Free trial below).The play_audio tool requires PortAudio at runtime (for sounddevice). On macOS/Linux, install via:
brew install portaudiosudo apt-get install libportaudio2uvx sonilo-mcp and pip install will pull the Python bindings, but the system PortAudio library must be installed separately. The other tools (text_to_music, video_to_music, text_to_sfx, video_to_sfx, audio_ducking, get_sfx_task, get_account_services, get_usage) work without PortAudio.
npm install -g sonilo-cli && sonilo login — and leave "env": {} below. Nothing secret goes in the config file."env".uvx): curl -LsSf https://astral.sh/uv/install.sh | sh
See the uv repo for other install methods.
{
"mcpServers": { "sonilo": { "command": "uvx", "args": ["sonilo-mcp"], "env": {} } } }
That is the whole config when you have signed in with sonilo login. To hold a key instead, or to change the defaults:
"env": {
"SONILO_API_KEY": "sk-...", "SONILO_API_URL": "https://api.sonilo.com", "TIME_OUT_SECONDS": "600" }
Signed in with the CLI (npm install -g sonilo-cli && sonilo login), the whole setup is one command:
codex mcp add sonilo -- uvx sonilo-mcp
Or, holding a key yourself:
codex mcp add sonilo --env SONILO_API_KEY=sk-... -- uvx sonilo-mcp
To configure it by hand instead:
sonilo login.uvx): curl -LsSf https://astral.sh/uv/install.sh | sh
Or you can add the server** to ~/.codex/config.toml:
[mcp_servers.sonilo]
command = "uvx" args = ["sonilo-mcp"]
sonilo login.[mcp_servers.sonilo.env] SONILO_API_KEY = "sk-..." SONILO_API_URL = "https://api.sonilo.com" TIME_OUT_SECONDS = "600"
/mcp to confirm sonilo is connected and its tools are listed.Once the server is connected, just ask your assistant in natural language. For example:
~/Desktop/promo.mp4."*https://example.com/clip.mp4 with a calm, ambient style."*~/Desktop/trailer.mp4 — add a soundtrack that matches the cut."*The assistant will call the matching tool (text_to_music, video_to_music, text_to_sfx, video_to_sfx, audio_ducking, get_sfx_task, get_account_services, get_usage, or play_audio) and save generated audio to your configured output directory.
The server takes its key from SONILO_API_KEY if that is set, and otherwise from the credential written by sonilo login (~/.config/sonilo/credentials.json, or $XDG_CONFIG_HOME/sonilo/). The environment variable wins on purpose, so any config that already sets it keeps resolving to the same account after an upgrade.
The credential is looked up by the server's own SONILO_API_URL, so a staging server never picks up a production sign-in. This server only ever reads the file: run sonilo login again to renew it (keys from a sign-in expire after 90 days) and sonilo logout to revoke it.
| Variable | Default | Description |
|---|---|---|
SONILO_API_KEY | _(from sonilo login)_ | Bearer token. Required only if you have not signed in with the CLI. |
SONILO_API_URL | https://api.sonilo.com | Public API base URL. |
SONILO_MCP_BASE_PATH | ~/Desktop | Default output directory and base for relative input paths. Also the confinement boundary (see below). |
SONILO_MCP_ALLOW_ANY_PATH | false | Set to true to let tools read/write files outside SONILO_MCP_BASE_PATH. |
TIME_OUT_SECONDS | 600 | Timeout, in seconds, for streaming music (text_to_music, and video_to_music without preserve_speech), uploads and downloads. Aligned with the backend's streaming read timeout. Task-based tools (sound effects, ducking, video-to-video, async music, analyze_video, proofread) wait at least 2700s (45 min) for their task whatever this is set to, because the backend lets a task wait up to 2400s in its queue; set it higher to wait longer. stems waits at least 75 min and dubbing at least 2 hours. |
Some MCP hosts impose their own tool-call timeout and may cut a call off before that wait ends. The task keeps running and is still billed: its id is in the server's stderr log as [sonilo-mcp] task submitted: , and get_sfx_task(" ") retrieves the result — nothing is lost.
By default, the file tools (video_to_music input, play_audio, and any output_directory) are confined to `SONILO_MCP_BASE_PATH`. Paths that resolve outside it (after symlink resolution) are rejected. This limits the blast radius if a client is tricked into reading or exfiltrating arbitrary files. To opt out — e.g. to read a video from elsewhere on disk — set SONILO_MCP_ALLOW_ANY_PATH=true.
| Tool | Description | Cost |
|---|---|---|
text_to_music(prompt, duration?, output_format?, variants_num?, stems?, output_directory?) | Generate music from a text prompt. variants_num (1–10, default 1) generates that many distinct variants in one request, each with its own title; N > 1 forces the backend's async mode automatically and is never covered by the free trial. stems (default false) also saves the track split into four separate instrument tracks — drums, bass, vocals and other — at no extra charge; it adds a few minutes (the call waits up to 75 min) and forces the backend's async mode automatically. A stems_error note in the result means only the free separation failed or was skipped — the music itself is fine. | ✅ |
| `video_to_music(video_path? \| video_url?, prompt?, preserv
只显示了开头部分;其余内容请在仓库中阅读