claudeclip

claudeclip

A local MCP server that enables Claude to edit videos on your machine using ffmpeg, with tools for trimming, converting, compressing, creating GIFs, and more.

Category
访问服务器

README

claudeclip

CI

A local MCP server that lets Claude edit videos on your machine, powered by ffmpeg. Works with Claude Cowork, Claude Desktop, Claude Code, and any other MCP client, on Windows, macOS, and Linux — ffmpeg is bundled automatically if you don't have it.

Ask things like "trim the first 30 seconds off intro.mp4 and turn the best part into a GIF" — Claude inspects the file, picks the right tools, and writes the results next to your originals.

Tools

Tool What it does
get_video_info Duration, resolution, fps, codecs, bitrate, file size
sample_frames Contact sheet of timestamped frames — lets Claude see the video before editing
detect_scenes Timestamps of cuts/shot changes, ready to feed into trims
detect_silence Silent stretches plus the non-silent segments to keep (cut dead air)
trim_video Cut to a time range — frame-accurate re-encode, or instant fast_copy
concat_videos Join clips in order, with hard cuts or crossfades; mixed resolutions/frame rates are normalized automatically
convert_video Re-encode to mp4 / webm / mov / mkv with a quality preset
resize_video Scale by width, height, or percentage (aspect ratio preserved)
crop_video Crop a rectangle out of the frame
compress_video Shrink to an approximate target size in MB, or general-purpose compression
change_speed 0.25x–4x playback speed, audio pitch preserved
rotate_video Rotate 90/180/270° and/or mirror horizontally/vertically
add_fade Fade in from black / out to black, video and audio
reverse_video Play backwards (best for short clips)
loop_video Repeat N times or until a target duration, no re-encode
adjust_colors Brightness, contrast, saturation (saturation 0 = black & white)
stack_videos Side-by-side, vertical, or grid comparison layouts
picture_in_picture Overlay a video in a corner (webcam/reaction style)
video_from_images Slideshow from images, optional soundtrack
create_gif Palette-optimized animated GIF from a clip
extract_frame Save a still frame as jpg/png (thumbnails, covers)
extract_audio Audio track out to mp3 / wav / m4a / flac
remove_audio Strip audio without re-encoding
replace_audio Swap in music or a voiceover, optionally looped to fit
adjust_volume Louder/quieter by a multiplier
normalize_audio EBU R128 loudness normalization (podcast/social levels)
add_text_overlay Captions/titles: position presets, color, background box, show/hide times
add_watermark Image/logo overlay with size and opacity
draw_box Rectangle outline or filled box for highlighting/redacting, with time window
blur_region Blur or pixelate a region (faces, plates, names), with time window
burn_subtitles Permanently render an .srt/.ass subtitle file onto the video

Safe by default: tools never overwrite files. Without an explicit output_path, results land next to the input as name_trimmed.mp4, name_clip.gif, etc., and name collisions get a numeric counter.

Requirements

  • Node.js 18+
  • ffmpeg — required, and installed for you: npm install always fetches ffmpeg/ffprobe binaries for your platform (Windows, macOS Intel/Apple Silicon, Linux), so the server works out of the box. If a system ffmpeg is present it is preferred (newer and faster); the lookup order is FFMPEG_PATH/FFPROBE_PATH env vars → common install locations (incl. ~/ffmpeg, C:\ffmpeg\bin, Homebrew) → PATH → bundled.

Install

Option 1 — npx (easiest)

No download at all — with Node.js 18+ installed, just use npx in your Claude config (first run fetches everything, including ffmpeg):

{
  "mcpServers": {
    "claudeclip": {
      "command": "npx",
      "args": ["-y", "claudeclip"]
    }
  }
}

Or for Claude Code: claude mcp add claudeclip -- npx -y claudeclip

Option 2 — download a release

Grab the zip for your platform from the latest release, unzip it somewhere permanent, and point your Claude config at dist/index.js inside it (see below). The zip is self-contained — Node.js 18+ is the only requirement, ffmpeg is included.

Option 3 — from source

git clone https://github.com/gulkoa/claudeclip.git
cd claudeclip
npm install
npm run build

Connect to Claude

Claude Cowork / Claude Desktop

Add the server to your Claude config file:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "claudeclip": {
      "command": "node",
      "args": ["/absolute/path/to/claudeclip/dist/index.js"]
    }
  }
}

Restart the Claude app; the tools appear under the claudeclip server. (If node isn't found, use the full path to the Node executable as command.)

Claude Code

claude mcp add claudeclip -- node /absolute/path/to/claudeclip/dist/index.js

Example prompts

  • "How long is C:\Videos\demo.mp4 and what resolution is it?"
  • "Cut talk.mp4 from 12:30 to 14:00 and compress the result to about 25 MB"
  • "Join these three clips and add my logo.png as a watermark in the bottom right"
  • "Make a 5-second GIF of the goal at 1:23, 480px wide"
  • "Replace the audio in timelapse.mp4 with song.mp3, looped to fit"
  • "Burn episode1.srt into the video and caption the intro with the show title"
  • "Look at what's in raw.mp4, then cut it into separate scenes"
  • "Remove the dead air from this recording and normalize the audio"
  • "Put screen.mp4 and webcam.mp4 side by side" / "webcam in the corner"
  • "Pixelate the license plate at the top right from 0:12 to 0:31"

Notes

  • Text overlays render with a system font (Arial/Segoe UI on Windows, Helvetica on macOS, DejaVu on Linux). Arbitrary text is safe — it's passed to ffmpeg via a temp file, so quotes, %, : and friends can't break the filter graph.
  • Encoding defaults favor compatibility: H.264 + AAC in mp4 with +faststart, VP9 + Opus for webm.
  • Long jobs time out after 15 minutes.

Development

npm run build          # compile TypeScript to dist/
node test/smoke.mjs    # end-to-end test: spawns the server over stdio,
                       # generates test media with ffmpeg, exercises every tool

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选