Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Talking-actor and faceless short videos from your AI agent, with a free quote before each render
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
CLIPWRIGHT_API_KEY, CLIPWRIGHT_CLIENT_ID, CLIPWRIGHT_API_URLค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://mcp.clipwright.io/mcpเปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"clipwright": {
"command": "npx",
"args": [
"-y",
"@clipwright/mcp-server"
],
"env": {
"CLIPWRIGHT_API_KEY": "ใส่ค่าของคุณ",
"CLIPWRIGHT_CLIENT_ID": "ใส่ค่าของคุณ",
"CLIPWRIGHT_API_URL": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http clipwright https://mcp.clipwright.io/mcpclaude mcp add clipwright --env CLIPWRIGHT_API_KEY='ใส่ค่าของคุณ' --env CLIPWRIGHT_CLIENT_ID='ใส่ค่าของคุณ' --env CLIPWRIGHT_API_URL='ใส่ค่าของคุณ' -- npx -y @clipwright/mcp-serverเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"clipwright": {
"url": "https://mcp.clipwright.io/mcp"
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"clipwright": {
"command": "npx",
"args": [
"-y",
"@clipwright/mcp-server"
],
"env": {
"CLIPWRIGHT_API_KEY": "ใส่ค่าของคุณ",
"CLIPWRIGHT_CLIENT_ID": "ใส่ค่าของคุณ",
"CLIPWRIGHT_API_URL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"clipwright": {
"type": "http",
"url": "https://mcp.clipwright.io/mcp"
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"clipwright": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@clipwright/mcp-server"
],
"env": {
"CLIPWRIGHT_API_KEY": "ใส่ค่าของคุณ",
"CLIPWRIGHT_CLIENT_ID": "ใส่ค่าของคุณ",
"CLIPWRIGHT_API_URL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://mcp.clipwright.io/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
CLIPWRIGHT_CLIENT_ID envCLIPWRIGHT_API_URL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
server ให้ล็อกอินก่อนจึงจะแสดงรายการเครื่องมือ
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน clipwright.io แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 87 ms (HTTP 401)
ประกาศวิธีล็อกอินแบบ OAuth ให้โปรแกรม AI พาไปล็อกอินเอง
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: CLIPWRIGHT_API_KEY
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.39.0) เข้า registry 3 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, topo^alpin
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Avalanche bulletins and mountain weather forecasts for any place in the Alps.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Your coding agent writes the script; Clipwright renders a short vertical video of an actor speaking it, 1080×1920 by default. It also makes faceless videos of a length you pick, 30 to 90 seconds, from a script or a short brief: narration over an opening animated clip and image scenes, with no on-camera presenter. The agent asks for a free quote before it spends anything, and whatever the API cannot honor comes back in warnings[] instead of being dropped silently.
The agent gets a run_id at once and polls until the video URL is ready. Clipwright returns the file; it does not publish anywhere. Quotes, voices, actors and the account balance are free. Renders spend credits: an account opened by signing up starts with 420 trial credits, enough for one 90-second faceless video. Buy more at clipwright.io/pricing.
There are two ways to connect: the hosted server at https://mcp.clipwright.io/mcp, or this package run locally over stdio. Both serve the same tools.
Add the URL to your client. On first use the client opens a browser, you sign in to Clipwright and approve the app. Claude Code and the device-code flow below were verified live on 2026-10-18; the other commands come from each client's own documentation and have not been tried with Clipwright yet.
claude mcp add --transport http clipwright https://mcp.clipwright.io/mcp, then run /mcp in a session and sign in.~/.cursor/mcp.json, {"mcpServers": {"clipwright": {"url": "https://mcp.clipwright.io/mcp"}}}..mcp.json at the workspace root, {"mcpServers": {"clipwright": {"type": "http", "url": "https://mcp.clipwright.io/mcp"}}}.gemini mcp add --transport http clipwright https://mcp.clipwright.io/mcp, then /mcp auth clipwright.codex mcp add clipwright --url https://mcp.clipwright.io/mcp, then codex mcp login clipwright.The approval page lists the permissions the app asks for. There are two:
mcp:read — the tools marked read-only: account, runs, shots, voices, actors, workflows and quotes.mcp:write — every other tool. Some start paid runs and spend credits; the rest change the account (actors, uploads, workflow plans).A connection without mcp:write gets 403 insufficient_scope from those tools, and nothing is charged. Only an admitted account can approve.
To disconnect an app, open app.clipwright.io/api-keys, find it under Connected apps and revoke it. Its next request gets 401. A connection lasts 90 days from approval; after that the app asks you to sign in again.
On the hosted server upload_image cannot read a file on your machine. Pass a public https URL as upload_image({url}) and the server downloads it, or call create_upload and PUT the file to the returned put_url with curl. Either way you get an upload_id for first_frame, last_frame and references.
An agent with no browser signs in with a device code and the first-party client clipwright-agent (verified live 2026-10-18):
curl -s https://mcp.clipwright.io/device/auth -d client_id=clipwright-agent \
--data-urlencode "scope=mcp:read mcp:write offline_access" \ --data-urlencode "resource=https://mcp.clipwright.io/mcp"
Open verification_uri (https://mcp.clipwright.io/device) on any device, enter user_code, sign in and approve; the approval page repeats the code. Meanwhile poll POST https://mcp.clipwright.io/token with grant_type=urn:ietf:params:oauth:grant-type:device_code, the device_code and client_id=clipwright-agent, no more often than every 5 seconds: a faster poll gets slow_down. Send the access_token as Authorization: Bearer to /mcp; it lasts an hour. Renew it with grant_type=refresh_token and keep the newest refresh token each time. The device flow is open to this client only.
cw_* keyFor CI and scripts, send a key instead of signing in. A key holds both permissions.
claude mcp add --transport http clipwright https://mcp.clipwright.io/mcp --header "Authorization: Bearer cw_..."
n8n's built-in MCP Client node calls one tool per node:
https://mcp.clipwright.io/mcp.cw_... key.quote_ugc; Input Mode: JSON.Verified live on 2026-10-20 with self-hosted n8n 2.43.8: get_account, quote_ugc and get_run returned through the node. A workflow to import, n8n/clipwright-ugc.json in seocombat/clipwright-mcp, quotes a script, stops when the quote is above max_credits, starts make_ugc and polls get_run every 15 seconds. The whole workflow ran on n8n Cloud on 2026-10-20 and returned a 1080×1920 MP4 in about three minutes. n8n's OAuth credential has not been run against Clipwright yet.
claude mcp add clipwright -e CLIPWRIGHT_API_KEY=cw_... -- npx -y -p @clipwright/mcp-server clipwright-mcp
Put your own key in place of cw_.... The command is one line and gives the shell nothing to expand, so bash, zsh and PowerShell run it alike. It needs Node.js 20 or newer.
Any MCP host works — the local server speaks JSON-RPC over stdio. Issue keys at app.clipwright.io/api-keys.
These variables configure the local server.
| Variable | Required | Meaning |
|---|---|---|
CLIPWRIGHT_API_KEY | yes | Your cw_* token. The process exits immediately without it. |
CLIPWRIGHT_CLIENT_ID | recommended | Identifies this installation and enters the idempotency key, so two installations never collapse into one run. Left unset, the server keeps one in ~/.clipwright/client-id, which suits a single laptop. Set it yourself where a home directory is shared, cloned or read-only — containers, CI, copied images — as SKILL.md §2 explains. |
CLIPWRIGHT_API_URL | no | Defaults to the hosted API. |
Each recipe is a prompt we gave an agent with this server connected, the call the agent sent, and what the video cost. The videos play at clipwright.io/mcp.
One presenter on camera, with graphics over her that react to what she says: the format of talking-head reels that sell a product. One prompt, no editor.
The prompt, given verbatim, with our actor id, screenshot link and site named alongside it:
Make a 30-second vertical reel for my AI receptionist with my presenter actor and the voice Hope. Script: "Every missed call is a lost deal. Your receptionist sleeps, takes breaks, and sometimes gets annoyed. This one doesn't. It answers calls all day, works around the clock, and never gets annoyed. Here's a real one: a customer calls at two in the morning to book a cleaning, and it handles everything, the time, the price, the confirmation text. Small businesses miss a third of their calls. Not anymore. Set it up in ten minutes and stop losing deals while you sleep."
While she lists what it does, show a checklist with three switches ("answers calls" and "works 24/7" off, "gets annoyed" on) and have a cursor flip each one as she says it. When she gets to the 2 a.m. customer, show an incoming call from +1 (305) 555-0147 on the right and answer it on "handles". Put my dashboard screenshot in the top right corner while she says "Small businesses miss a third of their calls." End on a card with my site and "create your assistant". Caption only the key lines, in the highlighter style, and zoom in a little on "Not anymore." Quote it before you render.
What the agent sent: one make_ugc quote with templates (checklist, phone_call, end_card), one overlays picture, caption_mode: "highlights", caption_style: "highlighter" and a punch_in on one emphasis line. Click, switch and ring sounds come with the templates by default. We checked the prompt with a fresh agent on this server on 2026-10-24; the video was rendered from the same call.
The quote named the price before anything was spent; list_prices names every rate. Watch it.
list_workflows — read workflow methods and current availability. Free.get_workflow — read one method's required inputs, script rules, evidence and limitations. Free.prepare_workflow_plan — create with a complete document, or save with both plan_id and base_version. Free; starts no run.plan_reference_remake — the server compiles a reference ad's profile and your exact script into a new plan; its warnings name what the plan does not reproduce. Free; starts no run and generates nothing.get_workflow_plan — read the current owned plan, revision and readiness. Free.approve_workflow_plan — explicitly approve a chosen revision and content digest. Free; starts no run.quote_workflow_plan — quote the approved revision without spending credits.run_workflow_plan — start a paid workflow using its exact quote fields and an explicit idempotency key. Returns its receipt and run id immediately; poll get_run. Recover an uncertain purchase with the original request and key.list_voices — voices for voice: the presets, the thirty voices of the speech model gemini-3.8-flash-tts and the catalog for make_ugc, with filters by language, gender, age, use case and model, and a short audio sample where the voice has one. The seventeen narration voices of make_faceless are listed with skill: "make_faceless". Free, spends no credits.list_template_sounds — the sounds make_ugc templates play, by beat: where each beat plays, its default and every name template_sounds takes. Free.list_actors — ready-made faces with stable ids and verified formats. Free.quote_ugc — estimated duration and price, plus a warning when make_ugc with the same input would be refused for money or access. Free.get_account — balance, debt and holds of the account. Free.list_prices — what every tool costs in credits: a number per unit, or a formula where the price depends on the input; free tools are listed at 0. Free.send_feedback — tell Clipwright what is missing, confusing, wrong or slow, optionally about a run; we read every one. Free.make_ugc — renders a clip; this is the call that costs money. Returns a run_id immediately instead of blocking, because a render takes minutes.get_run — status of a run. Free; poll it every few seconds.get_run_shots — the shots of a finished video: the span, kind, description and preview link of each, with the narration words and their timing. Free and read-only. A run with no shots to show answers with the reason instead.quote_revision — price of a revision of a faceless video: what it would change and what it costs. Free.revise_run — starts a revision: a new run that renders the video again with the shots you change; this costs money. Pass changes (a shot and what to generate for it) or the whole edited document. A revision that delivers is charged its quoted total; one that fails is charged nothing. An identical request returns the same run; attempt starts a second one on purpose. Returns a run_id immediately; poll get_run until succeeded.quote_candidate — price of a shot candidate of a faceless video: one pictตัดมาแค่ช่วงต้น อ่านต่อใน repo