Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Zvid: render videos & images from JSON; manage templates, projects, webhooks & credits.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
ZVID_API_KEY, ZVID_API_URL标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://mcp.zvid.io/mcp打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"zvid": {
"command": "npx",
"args": [
"-y",
"@zvid/mcp"
],
"env": {
"ZVID_API_KEY": "your-value",
"ZVID_API_URL": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add --transport http zvid https://mcp.zvid.io/mcpclaude mcp add zvid --env ZVID_API_KEY=your-value --env ZVID_API_URL=your-value -- npx -y @zvid/mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"zvid": {
"url": "https://mcp.zvid.io/mcp"
}
}
}粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"zvid": {
"command": "npx",
"args": [
"-y",
"@zvid/mcp"
],
"env": {
"ZVID_API_KEY": "your-value",
"ZVID_API_URL": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"zvid": {
"type": "http",
"url": "https://mcp.zvid.io/mcp"
}
}
}粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"zvid": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@zvid/mcp"
],
"env": {
"ZVID_API_KEY": "your-value",
"ZVID_API_URL": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://mcp.zvid.io/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
ZVID_API_URL env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过域名 zvid.io 验证(注册中心会核实域名所有权)
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:ZVID_API_KEY
两种方式都可以:安装在你的电脑上,或者连接云端版本。
GitHub 仓库最后更新于–,最新版本(0.1.0)于4个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Spec Driven Development, Remote Desktop Commander, SuperCollider
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Make sound with SuperCollider: synths, drums, chords, melodies and soundscapes over OSC.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Official Zvid agent and MCP server. Creator follows a quality-first workflow: plan the brief, adapt designed examples or library assets, validate exact project JSON, save a reviewable draft, then render only after approval. Automation and Developer add trusted direct operations.
There are exactly two ways to authenticate. Every setup below uses one of them:
| # | Method | Works with | What you need |
|---|---|---|---|
| 1 | OAuth — sign in with your Zvid account (recommended) | Hosted endpoint https://mcp.zvid.io/mcp | A Zvid account and any OAuth-capable Streamable HTTP MCP client. No API key to create or paste. |
| 2 | API key (zvid_…) | Hosted endpoint via the X-Api-Key header, or local stdio / self-hosted | A key from app.zvid.io/api-keys; Node.js ≥ 18 for stdio |
Method 1 — OAuth sign-in. Add https://mcp.zvid.io/mcp to your MCP client and sign in when prompted. The endpoint publishes OAuth discovery metadata, uses authorization code + PKCE with the single scope zvid:mcp, and issues short-lived access tokens with rotating refresh tokens (revocable per RFC 7009). This is what the client-specific instructions below use.
Method 2 — API key. Create a key at app.zvid.io/api-keys, then either:
X-Api-Key header on https://mcp.zvid.io/mcp — for programmatic clients that cannot run an OAuth flow, or legacy access.ZVID_API_KEY / --api-key as shown in Local stdio / self-hosted setup. The stdio transport is API-key only, because MCP OAuth is defined for HTTP transports.The hosted endpoint is https://mcp.zvid.io/mcp. It accepts both authentication methods: OAuth sign-in (method 1 — used by the client instructions below) and an API key in the X-Api-Key header (method 2).
claude mcp add --transport http zvid https://mcp.zvid.io/mcp
claude mcp login zvid
You can also open /mcp inside Claude Code and authenticate there.
Register the server, then authenticate from MCP settings or the command line:
codex mcp add zvid --url https://mcp.zvid.io/mcp
codex mcp login zvid
The dashboard stores the default tool profile and maximum credits per render for MCP clients. A client may connect with concrete values in the endpoint, for example https://mcp.zvid.io/mcp?profile=creator&maxRenderCredits=60; this is connection configuration and cannot be changed by the model during a conversation. The default per-render credit limit is 120, and the dashboard limit, when set, is a hard ceiling: the effective limit is the lower of the dashboard value and the value requested in the endpoint.
The official n8n workflow copies both dashboard defaults into its workflow JSON when downloaded. Each workflow can then choose another concrete profile and credit ceiling locally without updating the dashboard or any other workflow.
The npm/stdio entry point uses an API key (authentication method 2). Configuration resolution is CLI flags, then environment, then ~/.zvid-mcp.json:
npx -y @zvid/mcp --api-key zvid_your_key_here --api-url http://localhost:4000
| Env var | CLI flag | Required | Default | Purpose |
|---|---|---|---|---|
ZVID_API_KEY | --api-key zvid_… | stdio only | — | Zvid API key |
ZVID_API_URL | --api-url http://… | no | https://api.zvid.io | Orchestrator base URL |
ZVID_MCP_PROFILE | --profile creator | no | creator | Tool profile |
ZVID_MCP_MAX_RENDER_CREDITS | — | no | 120 | Legacy/fallback hosted limit; dashboard and explicit n8n values take precedence |
ZVID_MCP_MAX_BULK_ITEMS | — | no | 25 | Automation/developer bulk-call item ceiling |
ZVID_MCP_QUOTE_SECRET | — | hosted | process-random | Shared HMAC secret for multi-instance quotes |
For a self-hosted OAuth deployment, keep the resource and issuer identical on both services:
| Service | Variable | Production default |
|---|---|---|
| Orchestrator | OAUTH_ISSUER | https://api.zvid.io |
| Orchestrator | OAUTH_MCP_RESOURCE | https://mcp.zvid.io/mcp |
| Orchestrator | OAUTH_CONSENT_URL | https://app.zvid.io/oauth/authorize |
| MCP | ZVID_MCP_RESOURCE | https://mcp.zvid.io/mcp |
| MCP | ZVID_OAUTH_ISSUER | https://api.zvid.io |
The orchestrator also accepts OAUTH_ACCESS_TOKEN_TTL_SECONDS and OAUTH_REFRESH_TOKEN_TTL_SECONDS; their defaults are one hour and 30 days.
From a checkout:
cd mcp && npm install && npm run build
claude mcp add zvid --env ZVID_API_KEY=zvid_your_key_here -- node /absolute/path/to/mcp/dist/index.js
The default creator profile is the former Advanced authoring surface. It exposes planning, designed examples, creative-library search, stock media, schema/docs, repair, validation, projects and templates alongside approval-aware draft tools.
Creator deliberately rejects create_media and revise_media calls that omit the complete project payload. This prevents a weak model from improvising a poor layout from a brief. The agent must plan, adapt or assemble an exact payload, validate it remotely, fix every error and layout warning, and only then save the draft. create_media remains non-spending; render_media still requires the user-approved signed quote.
When the user asks for a reusable template rather than a one-off video or image, create_media_template saves a parameterized project — a top-level variables object of safe defaults referenced via {{name}} placeholders — as a persistent tpl_… template. It returns the declared variables, a credit estimate for rendering the untouched defaults, and an editor deep link (https://editor.zvid.io/?template= ). create_media_from_template then instantiates the template with new variable values as an approval-gated draft with a signed quote. Neither call spends credits. In the creator profile create_media_template requires the complete parameterized payload, mirroring create_media.
Rendering is deliberately separate from drafting. Quote tokens are HMAC-signed, expire after 15 minutes, bind the draft ID, project version, canonical payload hash, media type and estimated credits, and are revalidated immediately before submission. An idempotency UUID prevents retry duplication.
| Profile | Intended use | Surface |
|---|---|---|
readonly | Inspection | get_media, list_media, get_account |
creator | Most users | Quality authoring, libraries, validation, projects/templates and approved renders |
automation | Trusted workflows | Creator tools plus direct renders, capped bulk rendering and webhook operations |
developer | Full API development | Every registered non-destructive/raw tool |
Update and delete tools remain disabled in every profile. Stored webhook secrets are redacted by get_webhook; only create_webhook returns a new secret. MCP bulk calls normally allow at most 25 items, subject to account limits. The direct REST API's 500-item hard cap does not raise this tool ceiling; split work into appropriately sized batches.
The server also publishes four user-invoked workflow prompts (product promo, social reel, thumbnail and square post) and safe MCP resources at zvid://authoring/guidelines and zvid://account/summary.
The following low-level capabilities are available only in the profiles described above:
| Tool | Description |
|---|---|
plan_creative_video | Plan-aware storyboard and art direction from a brief — plus libraryCandidates: published examples ranked against the brief with an adapt-vs-assemble decision. Supports consistent, fresh, and explore modes, recent-asset exclusions, brand tokens, style packs, and scene recipes |
find_matching_examples | Rank the entire published examples library against a brief (category synonyms, aspect/duration fit) and return candidates with thumbnails plus a decision: adapt-example, adapt-or-assemble, or assemble-similar (with design-template/canvas-preset/shape modules) |
start_from_example | Fetch an example's render-ready project JSON plus an adaptation map (variables, text/media slots, scene summary, fonts) and the adaptation contract — the premium path: keep the layout, swap copy/media/brand. Suggests free alternatives when a premium example is plan-locked |
render_from_example | Automation/Developer direct render: example slug + variable values saves a template, validates and queues a spending render. Creator uses create_media_from_example, then approved render_media |
search_creative_library | Search complete examples, animated Design Studio templates, canvas presets, or shapes; results include preview/thumbnail metadata when published |
| get_creative_asset | Fetch metadata and full JSON content for one creative-library item
只显示了开头部分;其余内容请在仓库中阅读