Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Turn a script into a narrated product tour video: real browser, captions, voice, MP4.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
TOURWRIGHT_API_URL, TOURWRIGHT_API_TOKENค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"tourwright": {
"command": "npx",
"args": [
"-y",
"tourwright",
"mcp"
],
"env": {
"TOURWRIGHT_API_URL": "ใส่ค่าของคุณ",
"TOURWRIGHT_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add tourwright --env TOURWRIGHT_API_URL='ใส่ค่าของคุณ' --env TOURWRIGHT_API_TOKEN='ใส่ค่าของคุณ' -- npx -y tourwright mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"tourwright": {
"command": "npx",
"args": [
"-y",
"tourwright",
"mcp"
],
"env": {
"TOURWRIGHT_API_URL": "ใส่ค่าของคุณ",
"TOURWRIGHT_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"tourwright": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"tourwright",
"mcp"
],
"env": {
"TOURWRIGHT_API_URL": "ใส่ค่าของคุณ",
"TOURWRIGHT_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
TOURWRIGHT_API_URL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub CXmiloxx ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: TOURWRIGHT_API_TOKEN
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.6.0) เข้า registry เมื่อวาน
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Figma Context MCP, Claude Real Video, Figma MCP Server
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
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.
server ทางการของ Figma ส่งข้อมูลงานออกแบบให้ AI อ่าน เพื่อเปลี่ยนแบบเป็นโค้ดหรืออธิบายแบบได้ตรงขึ้น ต่อผ่านคลาวด์ของ Figma
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Narrated product tours and how-to videos, without editing. Click through your app once, or ask your AI agent for the video: Tourwright writes the script, films a real browser in a studio frame, guides the eye to each element, speaks with a natural voice and delivers an .mp4 with captions, chapters and a thumbnail. When the UI changes, you render again. Built for people *and* AI agents, on any server, from a laptop to a cluster.
*Leer en español*
Made by Tourwright from examples/app.yaml , with nobody at the keyboard. ▶ Watch it with sound (77 s)
# tour.yaml
title: Your first invoice voice: lessac baseUrl: https://app.example.com steps:
tourwright render tour.yaml # → videos/tour/tour.mp4 (+ captions.srt/.vtt, .jpg, .json)
Screen recorders (Loom) and click-through demo tools (Arcade, Supademo, Scribe) need a person to record, and every redesign means recording again. Tourwright videos are code:
| Screen recorder | Demo SaaS | Tourwright | |
|---|---|---|---|
| Re-record after a UI change | by hand | by hand | tourwright render |
| Knows when a video went stale | no | no | tourwright check in CI names the broken step and the fix |
| Narration | your voice, retakes | none or extra | text-to-speech in many voices, offline or online |
| Same tour for 50 customers or languages | 50 recordings | 50 demos | one script with {{variables}} |
| Personal data on screen | edit it out | edit it out | mask replaces it with invented data |
| Lives in | a vendor's cloud | a vendor's cloud | your git repo, your servers; MIT |
| AI agents can make one | no | no | MCP server and a Claude Code plugin |
2/4 badge explains it and the camera pushes in, right on the word the voice is saying.tourwright install --pocket), Piper (offline, open source, light), Microsoft Edge neural voices, any OpenAI-compatible TTS server (OpenAI, Kokoro, LocalAI…), or your own command. Every sentence is cached: re-rendering never re-synthesizes.[[1s]]), a pronunciation dictionary, sound presets (warm, radio, podcast…), click, typing and other sound effects, music with fades.{{name}}, also from the CLI or the API), reusable blocks, repeats, conditions and steps that may fail. One script, many videos..mp4 with chapters and the captions drawn on it, .srt, .vtt, thumbnail and a JSON manifest (duration, chapters, captions) for automation.docker run --rm -v "$PWD:/work" -w /work ghcr.io/cxmiloxx/tourwright render examples/slides.yaml --out videos/
A full service (API + 2 workers + Redis):
cp .env.example .env # set TOURWRIGHT_API_TOKENS
docker compose up -d --build docker compose up -d --scale worker=6
Node.js 22+, on Linux, macOS or Windows:
npm install -g tourwright
tourwright install # ffmpeg, Piper + voices, edge-tts, Chromium (no root) tourwright install --plan # only show what it would use from this PC and what it would download tourwright config set quality fullhd # your own defaults: quality, voice, fps… (tourwright config lists them) tourwright record https://app.example.com --out tour.yaml # do the tour by hand: you get the script and the video tourwright guide tour.yaml --open # the same tour as a step-by-step guide with screenshots (HTML, PDF, Markdown) tourwright narrate tour.yaml --write # your AI (Claude, OpenAI, Ollama) rewrites the narration from the screens tourwright translate tour.yaml --to en # the same video in English (or pt, fr, de, it): tour.en.yaml tourwright check videos/*.yaml # which videos broke after a deploy, at which step, and the fix tourwright fix tour.yaml --write # puts the new targets in the script tourwright render tour.yaml --step 7 # film one step with its voice, without the whole video tourwright install --pocket # + Pocket TTS: natural offline voices (about 1 GB) tourwright clean # what each part takes on disk; removes downloads and leftovers tourwright doctor # what works on this machine
Without installing anything globally: npx tourwright . With pnpm: pnpm add -g tourwright (on 2.0.0, add --no-optional).
The Redis queue and Claude for narrate are optional: install bullmq ioredis or @anthropic-ai/sdk next to Tourwright when you use them (npm install -g bullmq ioredis). The Docker image already has them.
Node.js 22+. tourwright install puts ffmpeg, Piper, voices, edge-tts and Chromium in TOURWRIGHT_HOME, with no root or admin rights; what the system already has is kept.
git clone https://github.com/CXmiloxx/tourwright && cd tourwright
./scripts/install.sh # Linux / macOS (Windows: powershell -ExecutionPolicy Bypass -File scripts\install.ps1) node bin/tourwright.js doctor # what works on this machine npm link # optional: the tourwright command
Each piece is looked for on the PC first and only downloaded when it is missing:
| Linux (x64, arm64) | macOS (Intel, Apple Silicon) | Windows 10/11 (x64, ARM) | |
|---|---|---|---|
| Chromium | Chrome, Edge or Chromium (apt, dnf, pacman, Raspberry Pi OS), else downloaded | Chrome, Edge or Chromium, else downloaded | Chrome or Edge, else downloaded |
| ffmpeg | PATH, Homebrew, Nix, else downloaded | Homebrew, MacPorts, Nix, else brew install ffmpeg | PATH, winget, scoop, Chocolatey, C:fmpeg, else downloaded |
| Piper (offline voices) | PATH, pip, pipx, conda, else downloaded | PATH, pip, pipx, conda, else piper-tts | PATH, pip, pipx, conda, else downloaded |
| Piper voices | Hugging Face cache, TOURWRIGHT_PIPER_VOICE_DIRS, else downloaded | same | same |
| edge-tts (Microsoft voices) | PATH, pip, pipx, conda, else installed | same | same |
| Python (for edge-tts, Pocket, Whisper) | the system's 3.10–3.13, else 3.12 is downloaded | same | same (not the Microsoft Store stub) |
| Capture | screen with Xvfb (sharpest), else screencast | screencast | screencast |
Also reused: a Chromium left by another Playwright or Puppeteer version, and CHROME_PATH, CHROME_BIN or PUPPETEER_EXECUTABLE_PATH. Snap and Flatpak browsers are skipped (their sandbox blocks Playwright). TOURWRIGHT_SYSTEM_BROWSER=0 always uses Playwright's own Chromium. tourwright doctor shows what was found.
Nothing is installed on the system: what is downloaded lives in one folder (TOURWRIGHT_HOME), and the Python packages run in a virtual environment, so yours is never changed. To uninstall, delete that folder.
Xvfb (apt install xvfb, Linux only) gives the sharpest capture; without it Tourwright records headless (screencast), which works everywhere Chromium runs. Clients of the HTTP API or MCP can be on any system.
From a site to a video, without writing selectors by hand:
tourwright explore https://app.example.com/login --draft app.yaml # asks for the login, writes the script
tourwright render app.yaml --dry-run # checks every step in seconds tourwright render app.yaml --open # the video, in ./videos/app/
The draft goes through every section of the site with narration taken from its pages; edit it in your words. Credentials are asked for once, never shown and never written in the script (tourwright secret list; tourwright forget deletes them).
tourwright init video.yaml # an example script
tourwright validate video.yaml tourwright render video.yaml --dry-run # runs every step fast: tests selectors, no voice/video tourwright render video.yaml --safe # the same, pressing nothing: no real sign-up, payment or SMS tourwright render video.yaml --keep # keeps the recording: tourwright recompose videos/video remakes it without the browser tourwright render video.yaml --quality fullhd --voice salome --out out/ tourwright voices # voices available here tourwright install-voice en_GB-alba-medium # any voice from huggingface.co/rhasspy/piper-voices tourwright say "Hello there" --voice lessac --out hello.wav
The script format, every action and the voices: [docs/SCRIPTS.md](docs/SCRIPTS.md). JSON Schema for editors and agents: schema/script.schema.json.
TOURWRIGHT_API_TOKENS=secret tourwright serve --worker --port 4700
curl -X POST localhost:4700/v1/jobs -H 'authorization: Bearer secret' -H 'content-type: application/json' \ -d '{"script": {"type": "slides", "slides": [{"title": "Hello", "say": "Hello from the API."}]}}' curl localhost:4700/v1/jobs/ -H 'authorization: Bearer secret' # → status, result, download links
Endpoints, assets, webhooks: docs/API.md.
Claude Code, as a plugin (the MCP server plus a skill that writes, checks and renders the script):
/plugin marketplace add CXmiloxx/tourwright
/plugin install tourwright@tourwright
Any other MCP client (Claude Desktop, Cursor, VS Code…):
{ "mcpServers": { "tourwright": { "command": "tourwright", "args": ["mcp"] } } }
Tools: tourwright_guide, tourwright_voices, tourwright_validate, tourwright_check, `tourwr
ตัดมาแค่ช่วงต้น อ่านต่อใน repo