Watch Cli

io.github.sonpiaz由 GitHub 帳號 sonpiaz 發布v0.3.1更新於 Oct 28, 2026

Hand any social video to your AI agent — frames + transcript bundled. MCP server for watch-cli.

已驗證STDIO僅桌面媒體與設計AI 與機器學習

概覽

AI 產生的概覽

把 watch CLI 包裝成單一 MCP 工具,讓助理從社群影片連結取得等間隔畫面和逐字稿。

可以做什麼
  • 依連結抓取社群影片,並以單一 JSON 物件回傳擷取的畫面和逐字稿
  • 可指定擷取的等間隔影格數,範圍 1 到 64,預設為 8
  • 支援 YouTube、X/Twitter、LinkedIn、TikTok、Vimeo、Reddit 與 Facebook 連結
  • 針對缺少相依套件、下載驗證或地區限制、網路失敗與用法錯誤回傳帶標籤的錯誤訊息
  • 辨識部分成功的情況:有畫面但逐字稿為空
適用情境
適合讓助理檢視並摘要社群影片,或據此產生架構圖、速查表、筆記等,而不必手動下載影片。適用於已安裝 watch CLI 且具備轉錄後端的代理環境。
執行需求
需要 Node.js 18 以上版本,並已安裝 watch CLI 且位於 PATH 中(伺服器會呼叫它,並不內建)。需要轉錄後端:預設使用 KYMA_API_KEY,或設定 WATCH_AUDIO_MODE=byok 搭配 GROQ_API_KEY,或設定 WATCH_AUDIO_MODE=local 並使用 PATH 中的 whisper.cpp 離線執行。需要連線至影片來源的網路。
安裝前請注意
需要第三方 API 金鑰:KYMA_API_KEY 在少量免費額度後依用量計費,GROQ_API_KEY 的內容會傳送給 Groq。README 的安裝步驟把遠端腳本直接透過管線交給 bash 執行,執行前應先檢視。影片連結會傳送給轉錄後端與影片網站,部分來源可能需要 cookies 才能繞過驗證或地區限制。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Watch Cli,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@sonpiaz/watch-cli-mcp

MCP (Model Context Protocol) stdio server that exposes watch-cli as a callable tool.

Watch any social video → get an architecture diagram, working component, runnable notebook, or step-by-step cheat sheet — automatically.

A single MCP server reaches every MCP-capable agent runtime — Claude Desktop, Claude Code, Cursor, OpenClaw, hermes-agent, Cline, Continue.dev, Windsurf, Zed, Codex, Kiro, VS Code Copilot — without per-IDE plugin work. This package wraps watch-cli so any of them can call it through one channel.

Prerequisites

  • Node.js >= 18.

  • The watch CLI installed and on PATH. Install with:

    bash
    curl -fsSL https://raw.githubusercontent.com/sonpiaz/watch-cli/main/install.sh | bash

The MCP server shells out to watch; it does not bundle the CLI.

Install

bash
npm install -g @sonpiaz/watch-cli-mcp

Or run on demand via npx:

bash
npx -y @sonpiaz/watch-cli-mcp

The binary is watch-cli-mcp. It reads JSON-RPC on stdin, writes JSON-RPC on stdout, and logs to stderr.

Tool

One tool is registered: watch.

Input schema:

json
{  "type": "object",  "properties": {    "url": {      "type": "string",      "format": "uri",      "description": "A social video URL. Supported: YouTube, X / Twitter, LinkedIn, TikTok, Vimeo, Reddit, Facebook."    },    "frames": {      "type": "integer",      "minimum": 1,      "maximum": 64,      "description": "Number of evenly-spaced frames to extract. Default 8."    }  },  "required": ["url"],  "additionalProperties": false}

Output: the v1 JSON object from docs/output-schema.md, passed through verbatim. Read the schema for the field reference.

Error mapping

CLI exitMCP response
0Tool result with the v1 JSON as content[0].text.
2InternalError, message includes tag=missing-dep:<bin>.
3 download-auth / download-regionInvalidParams, message includes the tag — caller can recover with cookies or a different URL.
3 download-network / download-otherInternalError, message includes the tag.
4 (partial success)Tool result with isError: false. Frames populated, transcript null, exit_code: 4 in the JSON payload. Caller branches on obj.exit_code === 4.
64InvalidParams, message includes tag=usage-error.
1 / otherInternalError, message includes the CLI stderr tail (≤ 1 KB).

Tags always ride in the MCP error message field so callers can grep for the same tag=... token they would see in CLI stderr.

Client configuration

Claude Desktop

Config path:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Merge into the existing mcpServers object:

json
{  "mcpServers": {    "watch-cli": {      "command": "npx",      "args": ["-y", "@sonpiaz/watch-cli-mcp"]    }  }}

Restart Claude Desktop after editing.

Cursor

Config path: .cursor/mcp.json (project-scoped) or ~/.cursor/mcp.json (user-global). Same mcpServers object shape as Claude Desktop:

json
{  "mcpServers": {    "watch-cli": {      "command": "npx",      "args": ["-y", "@sonpiaz/watch-cli-mcp"]    }  }}

hermes-agent

Config path: optional-skills/mcp.json inside the hermes-agent install, or ~/.hermes-agent/mcp.json user-global. Same mcpServers shape as above.

Other MCP clients

Any MCP-capable agent that accepts an npx command will work with the snippet above. Substitute the client's config path; the command / args pair is portable.

Build from source

bash
git clone https://github.com/sonpiaz/watch-clicd watch-cli/mcp-servernpm installnpm run buildnode dist/index.js

License

MIT. © 2026 Son Piaz.

來源:mcp-server/README.md,提交 06beafb

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.3.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分