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.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っている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": "your-value",
"TOURWRIGHT_API_TOKEN": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add tourwright --env TOURWRIGHT_API_URL=your-value --env TOURWRIGHT_API_TOKEN=your-value -- npx -y tourwright mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"tourwright": {
"command": "npx",
"args": [
"-y",
"tourwright",
"mcp"
],
"env": {
"TOURWRIGHT_API_URL": "your-value",
"TOURWRIGHT_API_TOKEN": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"tourwright": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"tourwright",
"mcp"
],
"env": {
"TOURWRIGHT_API_URL": "your-value",
"TOURWRIGHT_API_TOKEN": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
TOURWRIGHT_API_URL envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント CXmiloxx で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:TOURWRIGHT_API_TOKEN
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(2.6.1)がレジストリに届いたのは今日です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Figma Context MCP, Claude Real Video, Figma MCP Server
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況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、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
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
冒頭だけを表示しています。続きはリポジトリで読めます