mcpField
W
watch-cli

watch-cli

本地服务
github.com/sonpiaz媒体与设计2596 周前更新

关于 watch-cli

watch-cli MCP 服务是 watch-cli 的 MCP stdio 封装,可将社交视频的画面帧和文字稿打包提供给 AI Agent。它面向支持 MCP 的各类 Agent 运行时,无需为每个 IDE 单独开发插件。

主要功能

  1. 01单一 watch 工具处理社交视频链接
  2. 02返回画面帧与文字稿的 v1 JSON 结果
  3. 03支持 YouTube、X、TikTok 等多个平台
  4. 04按错误类型返回带标签的 MCP 错误

适用场景

  1. 01让 AI Agent 根据视频内容生成架构图或代码示例
  2. 02在 Claude Desktop 或 Cursor 中分析社交视频内容
  3. 03将视频内容整理为操作步骤或速查表

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露名为 watch 的工具,内部调用 watch CLI 处理视频 URL 并返回结构化结果。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"sonpiaz-watch-cli": {
"command": "npx",
"args": [
"-y",
"@sonpiaz/watch-cli-mcp"
],
"env": {
"KYMA_API_KEY": "<KYMA_API_KEY>",
"GROQ_API_KEY": "<GROQ_API_KEY>",
"WATCH_AUDIO_MODE": "<WATCH_AUDIO_MODE>"
}
}
}
}
启动命令npx -y @sonpiaz/watch-cli-mcp
需要配置的环境变量
KYMA_API_KEY密钥Kyma API key (default backend). Get one at https://kymaapi.com — first $0.50 free, then pay-per-use (~$0.05 per 1-hour video). Optional if WATCH_AUDIO_MODE=local (whisper.cpp) or GROQ_API_KEY is set instead.
GROQ_API_KEY密钥Groq API key for direct BYOK transcription (alternative to Kyma). Set this instead of KYMA_API_KEY if you prefer direct provider.
WATCH_AUDIO_MODEBackend routing override. Values: kyma (default), byok (use GROQ_API_KEY), local (whisper.cpp on $PATH, fully offline).

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@sonpiaz/watch-cli-mcp0.3.1

工具

1

收录的工具列表 · 更新于 2 周前

参数类型必填说明
urlstring是社交平台视频 URL。支持的平台:YouTube、X / Twitter、LinkedIn、TikTok、Vimeo、Reddit、Facebook。
framesinteger否要提取的等间隔帧数。未指定时默认为 8。上限为 64,以保持响应负载较小。

详细介绍

@sonpiaz/watch-cli-mcp

MCP(Model Context Protocol)stdio 服务,可将 watch-cli 作为可调用工具提供。

观看任意社交视频 → 自动获取架构图、可运行组件、可运行笔记本或分步速查表。

一个 MCP 服务即可连接所有支持 MCP 的 Agent 运行时——Claude Desktop、Claude Code、Cursor、OpenClaw、hermes-agent、Cline、Continue.dev、Windsurf、Zed、Codex、Kiro、VS Code Copilot——无需针对每个 IDE 单独开发插件。此软件包封装了 watch-cli,让它们都能通过一个通道调用该工具。

前置条件

  • Node.js >= 18。

  • 已安装 watch CLI,且位于 PATH 中。安装方式:

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

MCP 服务会调用 watch,不会将 CLI 打包在内。

安装

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

也可以通过 npx 按需运行:

npx -y @sonpiaz/watch-cli-mcp

二进制文件为 watch-cli-mcp。它从 stdin 读取 JSON-RPC,向 stdout 写入 JSON-RPC,并将日志写入 stderr。

工具

注册了一个工具:watch。

输入架构:

{
  "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
}

输出: 来自 docs/output-schema.md 的 v1 JSON 对象,原样传递。字段说明请参阅架构。

错误映射

CLI 退出码MCP 响应
0工具结果,v1 JSON 位于 content[0].text。
2InternalError,消息包含 tag=missing-dep:<bin>。
3 download-auth / download-regionInvalidParams,消息包含该标签——调用方可通过 Cookie 或更换 URL 进行恢复。
3 download-network / download-otherInternalError,消息包含该标签。
4(部分成功)工具结果,isError: false。帧已填充,转录为 null,JSON 负载中的 exit_code: 4。调用方根据 obj.exit_code === 4 进行分支处理。
64InvalidParams,消息包含 tag=usage-error。
1 / 其他InternalError,消息包含 CLI stderr 的末尾内容(≤ 1 KB)。

标签始终包含在 MCP 错误的 message 字段中,因此调用方可以搜索与 CLI stderr 中相同的 tag=... 标记。

客户端配置

Claude Desktop

配置文件路径:

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

将以下内容合并到现有的 mcpServers 对象中:

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

编辑后重启 Claude Desktop。

Cursor

配置文件路径:.cursor/mcp.json(项目级)或 ~/.cursor/mcp.json(用户全局)。mcpServers 对象结构与 Claude Desktop 相同:

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

配置文件路径:hermes-agent 安装目录中的 optional-skills/mcp.json,或用户全局路径 ~/.hermes-agent/mcp.json。mcpServers 结构与上文相同。

其他 MCP 客户端

任何支持 MCP 且接受 npx 命令的 Agent 都可以使用上面的代码片段。替换为客户端的配置文件路径即可;command / args 配置可通用。

从源代码构建

git clone https://github.com/sonpiaz/watch-cli
cd watch-cli/mcp-server
npm install
npm run build
node dist/index.js

许可证

MIT。© 2026 Son Piaz。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。