Longwave

media.longwavev1.0.0更新于 Oct 1, 2026

Give AI agents a creator's video pipeline: Shorts, thumbnails and YouTube publishing.

概览

AI 生成的概览

让 AI 助手运行创作者的视频流水线:把长视频剪成 Shorts、制作缩略图,并发布到创作者自己的 YouTube 频道。

功能
Longwave 提供十五个工具覆盖创作者的视频工作流。创建与查看类工具可把一集长视频剪成 Shorts、把素材或已有片段合成一个更长的剪辑,并报告任务进度、片段数量和在线链接。读取类工具可列出剧集、播放列表和缩略图样式,并返回频道洞察与书面内容分析。发布类工具可把 Shorts 按计划发布到 YouTube、调整或取消已排队的发布,以及批准 AI 生成的缩略图。会改动数据的工具接受幂等键,重试时返回原结果而不是重复创建。
适用场景
当助手需要端到端处理创作者的剪辑与发布流程时值得加入,包括字幕、标题、描述、缩略图、播放列表归类、每日上传上限和播客订阅源,而不只是剪视频。适合希望由智能体发布到自己 YouTube 频道、又不愿交出 Google 凭据的创作者。
运行要求
使用服务商网站上的远程 Streamable HTTP 端点,无需本地安装。授权采用 OAuth 2.1 与 PKCE S256:客户端按受保护资源元数据自行注册,创作者登录并批准。未声明 API 密钥或环境变量。发布和缩略图变更需要单独的升级授权。费用按创作者账户的额度扣除。
安装前请注意
发布类工具会改动公开内容:publish_shorts 会发布到 YouTube,reschedule_post 会移动或取消已排队的发布,approve_thumbnail 会发布缩略图。这些权限不会在首次连接时授予,需要单独批准。创作者初始有 200 个免费额度;发布按每个 Short 扣费,余额不足时工具会返回 top_up_url,助手应把它交给创作者而不是自行处理。YouTube 凭据保留在服务商服务器上,助手只拿到不透明的受限令牌。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Longwave,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "longwave": {
      "type": "http",
      "url": "https://www.longwave.media/api/mcp"
    }
  }
}

README

Longwave — the video pipeline for AI agents

Give any AI agent a creator's whole video pipeline. Turn one long-form episode into Shorts, thumbnails, show notes and a podcast feed — then publish to the creator's own YouTube channel.

Works with Grok Bot, Grok Build, Cursor, Claude Code and Meta Muse. One MCP connection, OAuth 2.1, and no API key anywhere.

Agents orchestrate. Longwave renders and publishes. The agent never downloads video, never holds Google credentials, and never drives YouTube Studio.


Why this exists

An agent can already cut video and drive a browser. Two things it cannot get for itself:

1. A verified YouTube upload grant. Google approved Longwave for youtube.force-ssl — production mode, no user cap, no "unverified app" screen. The creator connects once, and Longwave delegates scoped access to the agent. Standing up your own integration means OAuth app review and Google verification before the first upload.

2. A pipeline, not a command. Cutting a Short is the easy part. Longwave also does the captions, the title and description, the thumbnail, the playlist routing, the daily upload caps, the cross-platform schedule, the podcast RSS feed and the retry when an upload fails halfway.

So this is not a wrapper around yt-dlp and a Studio bookmarklet. It is the publishing authority, exposed as fifteen tools.


Install

grok plugin install Longwave-Media/longwave-plugin

Or add it as a self-hosted catalog source:

grok plugin marketplace add Longwave-Media/longwave-plugin

Both work with no review. Cursor and Claude Code read the same files; Muse builds its own MCP client from the URL.

Connect

Nothing to configure, and no credentials live in this repo. An unauthenticated call to the MCP endpoint returns:

HTTP/1.1 401 UnauthorizedWWW-Authenticate: Bearer resource_metadata="https://www.longwave.media/.well-known/oauth-protected-resource"

A conformant client follows that, registers itself, opens a browser, and the creator signs in and approves. PKCE S256 is required. This is deliberate: Agent Plugins v1.0.0 §7.2.1 forbids embedding secrets in headers, and OAuth discovery is how the spec expects authorization to work.

  • MCP endpoint — https://www.longwave.media/api/mcp (Streamable HTTP, stateless)
  • Protected-resource metadata — https://www.longwave.media/.well-known/oauth-protected-resource
  • Authorization server — https://www.longwave.media/.well-known/oauth-authorization-server

Tools

Fifteen tools — enough to run a creator's clip pipeline end to end, and deliberately no more. The surface is a deny-by-default allowlist, not a mirror of the API, so a tool exists here because it has an ownership-checked backing route.

Create and inspect — granted on first connect

ToolDoes
account_statusChannel connected? Credits left? Call this first.
create_shorts_jobCut a long-form episode into Shorts. Free — credits are spent on publish.
get_jobProgress, clip count and errors for a job.
list_clipsWhat was produced, with per-platform status and live URLs.
create_supercutAssemble one longer cut from a source video or from existing clips.

Read — granted on first connect

ToolDoes
list_episodesThe creator's long-form catalogue, newest first, with status.
get_episodeOne episode in full: titles, notes, chapters, transcript, podcast state.
get_insightsChannel-level summary: episode counts, recurring topics, hook types.
get_content_intelligenceLongwave's written analysis of what to make next.
get_channel_overviewConnected platforms and how each is performing.
list_playlistsPlaylists, and which one is the upload destination.
list_thumbnail_stylesThe thumbnail style catalogue.

Change something public — a separate approval, every time

ToolDoes
publish_shortsPublish Shorts to YouTube, with scheduling.
reschedule_postMove a queued post to a different hour, or unschedule it.
approve_thumbnailPublish an AI-generated thumbnail on the episode.

Publishing and thumbnail changes are not granted on first connect — they are a step-up the creator approves separately, because both change something public. The server asks for the extra permission with 403 + WWW-Authenticate: ... error="insufficient_scope".

tools/list returns the whole catalogue regardless of grant, so a client can see what exists and ask for it; the grant is enforced on the call. tools/list is authoritative and carries each tool's full JSON Schema — the tables above are for someone reading this repo.

Every mutating tool accepts an idempotency_key. Retry a timed-out call with the same key and you get the original result rather than a second job or a second public post.

What it costs

The creator starts free: 200 credits on signup, no card, and they do not expire.

Credits are charged to the creator per Short that actually publishes — nothing for a failed render, nothing for a clip that is never posted.

ActionCredits
Publish a Short1
Publish a Short on autopilot1.5
Publish to X through the shared app quota4
Upload a full long-form episode5, plus 1 per GB

The agent never handles payment. It holds no card and cannot reach a checkout. When the balance runs low a tool returns a top_up_url; the agent's job is to hand it to the creator and stop.

Where it publishes

  • Through the official API, by Longwave — YouTube (the episode and its Shorts), X (a post and a supercut), a public Link-in-Bio hub, and podcast RSS syndicated to 13 directories.
  • As a downloadable file — every Short is a vertical file on the CDN with its caption and metadata attached, so an agent can post it anywhere from the creator's own signed-in session.

Longwave is not a party to any third-party platform's terms and never contacts them. We describe the capability; the creator's agent performs the action.

Package layout

Two ecosystems describe plugin packages differently, and a client that finds no MCP config installs a plugin with zero tools. Both layouts are therefore shipped:

PathConvention
plugin.jsonAgent Plugins v1.0.0 — closed schema, fixed location
mcp.jsonAgent Plugins v1.0.0 — transport streamable-http
.grok-plugin/plugin.jsonGrok / xAI marketplace — verified against xAI's own vendored external_plugins/neon and third-party getsentry/plugin-grok
.mcp.jsonGrok MCP config — transport http
skills/longwave/SKILL.mdShared by both — the instructions the model reads
.grok-plugin/marketplace.jsonSelf-hosted catalog (tracks repo HEAD)
assets/logo.svgListing logo — the Groundswell mark, monochrome currentColor per brand canon

Who maintains this

Longwave is a product of Signal Group Limited (New Zealand · NZBN 9429035771678 · Co. No 1396666). The dashboard repo's scripts/verify-plugin-package.ts validates this package before any release — 58 checks covering both manifest conventions, author agreement, a single MCP endpoint across both configs, and drift between the skill's allowed-tools, this README and the live tool manifest.

Submitting to the official xAI catalog

Entries live in xai-org/plugin-marketplace, where the source must be SHA-pinned to a full 40-character lowercase commit — scripts/validate-catalog.py enforces that, and Grok re-verifies git rev-parse HEAD == sha after cloning, so a force-push cannot silently ship new code. xAI also expects the source to be an organisation repository; ours is Longwave-Media.

bash
git ls-remote https://github.com/Longwave-Media/longwave-plugin.git HEAD

Then add the entry, regenerate the component index, validate, and open a PR:

bash
python3 scripts/generate-plugin-index.pypython3 scripts/validate-catalog.py

Re-pin sha on every release — never open a parallel entry.

Privacy and data

This package collects nothing and stores nothing. Anything the creator acts on is handled by the hosted Longwave service under its own terms: https://www.longwave.media/terms and https://www.longwave.media/privacy. YouTube credentials never leave Longwave's servers, and the agent receives only an opaque, scoped Longwave token.

Support

[email protected] · https://www.longwave.media · org profile

License

MIT for this package. That does not cover the hosted Longwave service.

来源:README.md,提交 934f6b3

工具

0
工具元数据尚未被收录。

版本历史

1
  1. v1.0.0最新Oct 1, 2026