71
/ 100
7 days ago
github_topic

oh-my-cassette

你的随身 AI 剪辑搭档 | Pocket AI co-editor for video montage — AI video editing plugin & MCP server for Claude Code, Codex, Hermes & OpenCode

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find.

Install from

M8ven verifies MCPs across every public registry — install directly from whichever one you prefer.

// key findings
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
🔐
You'll be asked for 4 credentials: CASSETTE_AUTH_PASSWORD, CASSETTE_PASSWORD, CASSETTE_DIAG_PASSWORD, QQ_ACCESS_TOKEN
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// required environment variables
This server reads these from process.env. You'll be asked to provide them before it can run.
configCASSETTE_ASSET_ROOT$HOME/.oh-my-cassette/cassette
configCASSETTE_URLCASSETTE_WEB_URL origin of web origin used for editor_url deep links
configCASSETTE_BROWSER_SESSION_REUSE
configCASSETTE_BROWSER_WORKER_THREAD
configCASSETTE_MODEL_OPTIONS_WORKER_THREAD
configCASSETTE_EXPORT_CONFIRM_SELECTOR
configCASSETTE_STOP_SELECTOR
configCASSETTE_PROGRESS_INTERVAL_SEC
configCASSETTE_UPLOAD_TIMEOUT_SECCassette upload/analysis waits inherit CASSETTE_BROWSER_TIMEOUT_SEC by default. Set only when you need a different upload timeout; 0 means wait forever.
configCASSETTE_EXPORT_ON_COMPLETE
configCASSETTE_PROGRESS_SNAPSHOT_SEC
configCASSETTE_DEFAULT_THINKING_LEVEL
configCASSETTE_REQUIRE_LANGUAGE_SELECTION
configCASSETTE_MODEL_OPTIONS_TIMEOUT_SEC
configCASSETTE_HEADLESS
configCASSETTE_NO_SANDBOX
configCASSETTE_MODEL_OPTIONS_WORKER_TIMEOUT_SEC
configCASSETTE_REQUIRE_MODEL_SELECTION
configCASSETTE_EXPORT_TIMEOUT_SEC
configCASSETTE_BROWSER_TIMEOUT_SECCassette upload/analysis waits inherit by default. Set CASSETTE_UPLOAD_TIMEOUT_SEC only when you need a different upload timeout; 0 means wait forever.
configCASSETTE_MIN_BROWSER_TIMEOUT_SEC
configCASSETTE_ARTIFACT_TTL_DAYS
configCASSETTE_FORCE_H264_PLATFORMS
configCASSETTE_FORCE_H264
configCASSETTE_WEIXIN_FORCE_H264
configCASSETTE_FFMPEG_BINIf incoming media fails with transcoder_missing, run the installer again so it records explicit and CASSETTE_FFPROBE_BIN paths:
configCASSETTE_H264_PRESET
configCASSETTE_H264_CRF
configCASSETTE_H264_AUDIO_BITRATE
configCASSETTE_TRANSPORTThe plugin can reach Cassette two ways, selected by , and both are fully supported — pick whichever fits your deployment:
configHERMES_AGENT_ROOT
configHERMES_HOME
configHERMES_ENV_FILE
configCASSETTE_WEIXIN_SEND_ORIGINAL_ZIP
configCASSETTE_WEIXIN_CDN_UPLOAD_ATTEMPTS
configCASSETTE_WEIXIN_ORIGINAL_ZIP_MAX_BYTES
configCASSETTE_TELEGRAM_VIDEO_MAX_BYTES
configCASSETTE_TELEGRAM_PREVIEW_TARGET_BYTES
configCASSETTE_FFPROBE_BINIf incoming media fails with transcoder_missing, run the installer again so it records explicit CASSETTE_FFMPEG_BIN and paths:
configCASSETTE_TELEGRAM_PREVIEW_SCALE
configCASSETTE_TELEGRAM_PREVIEW_PRESET
configCASSETTE_WEIXIN_DELIVERY_SCALE
configCASSETTE_WEIXIN_DELIVERY_CRF
configCASSETTE_WEIXIN_DELIVERY_AUDIO_BITRATE
configCASSETTE_WEIXIN_DELIVERY_AUDIO
configCASSETTE_WEIXIN_DELIVERY_PROFILE
configCASSETTE_WEIXIN_DELIVERY_LEVEL
configCASSETTE_WEIXIN_DELIVERY_PRESET
configCASSETTE_WEIXIN_DELIVERY_TRANSCODE
configCASSETTE_MCP_NOTIFY
configCASSETTE_RUNTIME_ADAPTER
configCASSETTE_CONFIG_HOME
configXDG_CONFIG_HOME
configCASSETTE_DATA_HOME
configXDG_DATA_HOME
configCASSETTE_AUTH_EMAILyou@example.com
configCASSETTE_AUTH_ACCOUNT
configCASSETTE_EMAIL
🔐 secretCASSETTE_AUTH_PASSWORD'your-cassette-password'
🔐 secretCASSETTE_PASSWORD
configCASSETTE_PROJECT_ROOTS
configCASSETTE_PROJECT_ROOT
configCASSETTE_MCP_SETUP_COMMAND
configCASSETTE_DIAG_URL
configCASSETTE_DIAG_EMAIL
🔐 secretCASSETTE_DIAG_PASSWORD
configCASSETTE_MCP_PYTHON"$PWD/.venv/bin/python" \
configCASSETTE_MCP_SKIP_BOOTSTRAP
configCASSETTE_API_URL
configCASSETTE_ALLOWED_SOURCE_ROOTS"$HOME/.hermes/qqbot:$HOME/.hermes/telegram:$HOME/.hermes/cache:$HOME/.hermes/tmp:/path/to/media"
configCASSETTE_ALLOWED_EXTENSIONS
configCASSETTE_MAX_BYTES
configCASSETTE_GATEWAY_BACKGROUND_JOBS
configCASSETTE_STATUS_POLL_MIN_INTERVAL_SEC
configCASSETTE_DIRECT_EDITcassette_edit Surgical no-LLM edit / undo through the manual command lane (=1)
🔐 secretQQ_ACCESS_TOKEN
configCASSETTE_QQ_ATTACHMENT_TIMEOUT_SEC
configCASSETTE_TELEGRAM_ATTACHMENT_HOSTS
configCASSETTE_TELEGRAM_ATTACHMENT_TIMEOUT_SEC
configCASSETTE_PING_ON_GATEWAY_INSTRUCTION
configCASSETTE_PROMPT_OPTIMIZER_DOC
configJAMENDO_CLIENT_IDyour_client_id
configCASSETTE_FREETOUSE_API_BASE
configCASSETTE_FREETOUSE_DATA_BASE
configCASSETTE_FREETOUSE_TIMEOUT_SEC
configCASSETTE_FREETOUSE_CATEGORY_CACHE_SEC
configCASSETTE_FREETOUSE_CATEGORY_SUMMARY_LIMIT
configCASSETTE_FREETOUSE_MAX_BYTES
configCASSETTE_SMART_BGM_ENABLED
configOMC_WEB_LOG_DIR./web_demo/logs
configOMC_WEB_LLM_WORKERS
configWEB_BROWSER_SESSION_CLEANUP_TIMEOUT_SEC
configOMC_WEB_HOST
configOMC_WEB_PORT
// full audit trail
The full breakdown of what we checked, the deductions that landed, the network hosts, the dependency advisories, and concrete fix guidance is available to verified publishers.
// improvement guidance — verified publishers only
We have 5 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Score](https://m8ven.ai/badge/mcp/cassette-editor-oh-my-cassette-15d8pd)](https://m8ven.ai/mcp/cassette-editor-oh-my-cassette-15d8pd)
commit: b7b5a190bb718c7616eb5160c55cc39ca5218f04
code hash: a63df5ad1b1c24ebbb6515ff2d91e04f47d46f9a5824bde6248682d501d149cf
verified: 7/24/2026, 8:42:42 AM
view raw JSON →