Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
作者提供的说明(英文原文)
Thai, English, Mandarin speech AI: TTS with playback, transcription, translation, OCR, extraction
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
PAXA_API_KEY, PAXA_OUTPUT_DIR, PAXA_DEFAULT_VOICE标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"paxalabs": {
"command": "npx",
"args": [
"-y",
"@paxalabs/mcp"
],
"env": {
"PAXA_API_KEY": "your-value",
"PAXA_OUTPUT_DIR": "your-value",
"PAXA_DEFAULT_VOICE": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add paxalabs --env PAXA_API_KEY=your-value --env PAXA_OUTPUT_DIR=your-value --env PAXA_DEFAULT_VOICE=your-value -- npx -y @paxalabs/mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"paxalabs": {
"command": "npx",
"args": [
"-y",
"@paxalabs/mcp"
],
"env": {
"PAXA_API_KEY": "your-value",
"PAXA_OUTPUT_DIR": "your-value",
"PAXA_DEFAULT_VOICE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"paxalabs": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@paxalabs/mcp"
],
"env": {
"PAXA_API_KEY": "your-value",
"PAXA_OUTPUT_DIR": "your-value",
"PAXA_DEFAULT_VOICE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
PAXA_OUTPUT_DIR envPAXA_DEFAULT_VOICE env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过域名 paxalabs.com 验证(注册中心会核实域名所有权)
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:PAXA_API_KEY
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.1.0-beta.18)于前天进入注册中心。
支持 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、图片和脚本已被移除。链接会离开本站。
Official MCP server for the Paxa Labs API: Thai, English, and Mandarin Chinese speech AI for your agent, including local audio playback, plus transcription, translation, and document reading across languages.
An agent connected to this server can speak out loud through your machine's speakers, read long content aloud as a managed playback queue, save speech to audio files, listen for a spoken reply, transcribe recordings with subtitles, translate between 15 languages, read PDFs and images with OCR, and extract typed fields from documents.
Beta. The tool set is complete and tested end to end, but tool names and
behavior may still change before 1.0 as feedback comes in. Report problems at
https://github.com/paxalabs/mcp/issues.
You need a Paxa API key from paxalabs.com. New accounts include free credits.
claude mcp add paxa -e PAXA_API_KEY=pxa_your_key_here -- npx -y @paxalabs/mcp
Add to your client's MCP configuration (for Claude Desktop: claude_desktop_config.json):
{
"mcpServers": { "paxa": { "command": "npx", "args": ["-y", "@paxalabs/mcp"], "env": { "PAXA_API_KEY": "pxa_your_key_here" } } } }
One click for Cursor or VS Code: the buttons install the same entry into ~/.cursor/mcp.json or VS Code's MCP settings. Then replace pxa_your_key_here in the paxa entry with your key.
| Tool | What it does | Credits |
|---|---|---|
speak | Synthesize a short line and play it through the speakers, blocking until done | 10 per 1000 chars (12.5 in a designed voice) |
queue_speech | Read long content aloud: auto-chunks, synthesizes ahead while playing, returns immediately | 10 per 1000 chars (12.5 in a designed voice) |
control_playback | Control the shared audio queue: status, pause, resume, skip, clear | free |
play_audio | Play a local audio file through the speakers | free |
text_to_speech | Synthesize speech to an audio file (mp3, opus, wav, raw pcm, or mulaw and alaw for phone lines, with sample_rate for pcm and wav) without playing it: long scripts are split and joined into one file, and subtitles writes a matching srt or vtt | 10 per 1000 chars (12.5 with subtitles or in a designed voice, 15 with both) |
dialogue_to_speech | Synthesize a script of lines, each in its own voice, to one audio file with a set gap between lines: returns each line's start and end, and subtitles writes captions that never cross two lines | 10 per 1000 chars, each line at its voice's rate (12.5 with subtitles or in a designed voice, 15 with both) |
design_voice | Make a new voice from a written description and play the line it speaks | 5 per call |
refine_voice | Change a draft voice in words, such as "a little lower and slower", and play its new line | 5 per call |
save_voice | Save a draft as one of your voices, with an id the speech tools accept | free |
rename_voice | Rename one of your designed voices; the id and sound stay | free |
delete_voice | Delete one of your designed voices and free its slot | free |
translate | Translate into any of 15 languages from any of them, with formality, glossary, style examples, alternative renderings, and context controls | 25 per 1000 chars per rendering |
ocr_document | OCR a local PDF, PNG, JPEG, or WebP (Thai, English, Simplified Chinese, and more, mixed pages too) into Markdown or structured blocks | 6.5 per page |
extract_fields | Fill a schema of typed fields (Thai IDs, dates, amounts, banks, line items) from a local PDF or image; every value is printed in the document or null with the reason | 13 per page (19.5 for schemas over 50 fields) |
listen | Record one spoken turn from the microphone and return its transcript; the API detects when the user stops talking | 12.5 per minute listened |
send_feedback | Rate an output or report a problem to the Paxa team, tied to the request ids the tools print | free |
transcribe_audio | Transcribe a local recording or video (Thai, English, Mandarin, other languages, mixed; up to 120 minutes) to text, with optional speaker labels, word timings, srt or vtt subtitles, and a list of pauses to cut | 8.33 per minute |
list_voices | Your designed voices and slots, then the TTS voice roster with character notes | free |
list_models | Available models, limits, and pricing | free |
get_account | Credit balance, plan, and rate limits | free |
All audio flows through one ordered queue, so sounds never overlap: speak lines slip in ahead of queued long-form segments, and queue_speech keeps a book or article flowing gap-free by synthesizing the next segment while the current one plays.
With a streaming-capable player installed (see below), speech starts on the first bytes from the API instead of after the full download: about 0.3 s to the first word regardless of length, versus 0.7 s for a short line and 2.5 s for a long paragraph when buffered.
Three pieces turn Claude Code into something you can walk away from: it talks when it has news, and it calls you when it needs you.
1. Install the server (Quick start above).
2. Tell Claude when to talk. Add this to ~/.claude/CLAUDE.md, or to one project's CLAUDE.md:
## Voice
I have the Paxa MCP server (tools: speak, queue_speech, control_playback). I am often away from the screen, so use voice like this:
3. Get told when Claude needs you. When Claude Code waits for a permission or an answer, the model is not running, so it cannot call speak. Claude Code fires a hook at those moments instead, and paxa say turns the hook into a spoken phrase such as "Permission needed." Put the paxa command on your PATH:
npm install -g @paxalabs/mcp
Then add to ~/.claude/settings.json:
{
"hooks": { "Notification": [ { "matcher": "permission_prompt|idle_prompt|agent_needs_input", "hooks": [{ "type": "command", "command": "paxa say" }] } ] } }
paxa say takes the key from PAXA_API_KEY, or from the paxa entry in ~/.claude.json when that is unset, so step 1 is all the setup it needs. A Stop hook configured the same way speaks "Done." at the end of every turn.
The built-in phrases are synthesized once per voice and kept in your user cache directory (~/Library/Caches/paxa/say on macOS, ~/.cache/paxa/say on Linux, %LOCALAPPDATA%\paxa\cache\say on Windows). After that first play, which costs well under one credit, a notification plays from disk: no network round trip and no credits.
To change the words, write your own text in the hook command and add --cache so it gets the same treatment. One entry per event, since the matcher picks the event:
{
"hooks": { "Notification": [ { "matcher": "permission_prompt", "hooks": [{ "type": "command", "command": "paxa say --cache \"Hey, need your OK\"" }] }, { "matcher": "idle_prompt|agent_needs_input", "hooks": [{ "type": "command", "command": "paxa say --cache --voice cookie \"Your turn\"" }] } ] } }
Without --cache, nothing you type or pipe into paxa say is written to disk, and messages carried inside a hook payload never are.
On macOS the built-in afplay needs about half a second just to start and stop, which is most of the delay you hear on a short phrase. With brew install mpg123 (or ffmpeg) installed, cached phrases play through that instead: mpg123 starts in about 50 ms, ffplay in about 300 ms.
paxa say also works on its own:
paxa say "Build finished"
paxa say --voice cookie "Deploy is live"
If your editor or desktop app was not launched from a terminal, its PATH may not include your node bin directory, and the hook will fail silently. Use the absolute path to paxa in the hook command if that happens.
Speech runs on Paxa TTS Flash v2 by default: 50 voices that each speak Thai, English, and Mandarin Chinese, and every voice reads direction tags written into the text, such as [whispering], [laughs], [speaking slowly, close to the microphone], a weighted blend like [happy:0.7+sad:0.3], or and marks. Pause tags add silence where they stand: [short pause], [pause], [long pause], or an exact [pause 300ms] up to 500 ms. Nothing in brackets is spoken, tag characters bill as text, and a tag the model cannot do is refused before any charge. The directions guide lists every sound and rule.
temperature (0 to 2, default 0.5) sets how much a reading varies from one request to the next. Use 0 when a line must match the takes around it, such as one sentence regenerated inside a finished voiceover.
Pass model: "paxa-tts-flash-v1" on a call, or set PAXA_TTS_MODEL, only for v1's legacy features: four Thai voices with regional accents (Isan, Northern, Southern), the fixed emotion tags on khanomchan and kaprao, or one of the eight voices v2 does not carry (donut, toast, padthai, yoyo, somtam, larb, khaosoi, roti). Same price and limits on both.
When no catalog voice fits, describe the one you want. design_voice turns one or two sentences (who is speaking, how they sound, where it will be heard, and the language they speak) into a voice and plays the line it speaks. refine_voice takes one change at a time, such as "a little lower and slower"
只显示了开头部分;其余内容请在仓库中阅读