Dazzle

io.github.dazzle-labs由 GitHub 账号 dazzle-labs 发布v0.7.1更新于 Oct 24, 2026

Cloud stages for AI agents and live streaming. Create, manage, and broadcast content.

概览

AI 生成的概览

Dazzle 的本地 MCP 服务器让 AI 助手在云端舞台工作区中构建内容、同步到实时浏览器舞台、截图,并管理直播。

可以做什么
通过单一工具执行 Dazzle CLI 命令,包括登录、舞台与推流目的地管理以及帮助查询,输出为 JSON。在创作内容前阅读平台指南。按精确字符串替换列出、读取、写入和编辑舞台工作区中的文件。将工作区同步到实时舞台,并截取舞台浏览器输出的 PNG 截图。读取内置的 Dazzle 参考资源。
适用场景
适用于 Claude Desktop、VS Code 等沙箱式 MCP 客户端,让助手编写预构建的 HTML/CSS/JS 内容、推送到 Dazzle 云端舞台、进行视觉验证并管理直播推流目的地。拥有完整 shell 和文件系统访问权限的代理则被建议改用 CLI。
运行要求
通过 npx 从 npm 包 @dazzle-labs/cli 以 stdio 在本地运行,仅限桌面端。认证方式为通过 cli 工具交互式登录,或使用 DAZZLE_API_KEY 环境变量进行无头使用。DAZZLE_STAGE 可选地固定某个舞台,否则在只有一个舞台时自动选择。需要访问 Dazzle 服务的网络连接。
安装前请注意
cli 工具可执行任意 Dazzle 命令,包括创建和删除舞台、启动或停止推流、发送直播聊天消息以及添加或移除推流目的地。DAZZLE_API_KEY 密钥保存在凭据文件中并作为 Bearer 令牌发送。工作区文件写入用户主目录下。工作区中不提供 shell 或构建工具。

安装

在 SourceWeft 中

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

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

dazzle

The official CLI and MCP server for Dazzle — cloud stages for AI agents and live streaming.

One binary, two interfaces:

  • CLI — full shell access for coding agents (Claude Code, Cursor, terminals) and automation
  • MCP server (dazzle mcp) — stdio integration for sandboxed clients (Claude Desktop, VS Code, any MCP host)

[Dazzle CLI demo]

Installation

macOS / Linux

bash
curl -sSL https://dazzle.fm/install.sh | sh

Windows (PowerShell)

powershell
irm https://dazzle.fm/install.ps1 | iex

Other options

bash
go install github.com/dazzle-labs/cli/cmd/dazzle@latest

Pre-built binaries for macOS (arm64/amd64), Linux (amd64/arm64), and Windows (amd64/arm64) are on the releases page.

Quick Start (CLI)

bash
dazzle login                              # authenticate (opens browser)dazzle stage create my-stage              # create a stagedazzle stage up                           # activate — starts streamingdazzle stage sync ./my-app --watch        # push content, auto-refresh on changesdazzle stage screenshot -o preview.png    # verify outputdazzle destination add                    # add Twitch/Kick/custom RTMPdazzle destination attach my-destination  # go live

Quick Start (MCP)

Add to your MCP client config:

json
{  "mcpServers": {    "dazzle": {      "command": "dazzle",      "args": ["mcp"]    }  }}

The MCP server starts without credentials — agents can call guide to learn the platform and cli ["login"] to authenticate.

MCP Tools

ToolDescription
cliRun a dazzle CLI command. Use ["--help"] to discover available commands. Output is JSON.
edit_fileEdit a file in the stage workspace by exact string replacement. The old_string must match exactly once in the file. Use read_file first to see the current content.
guideGet the complete Dazzle reference — getting started, CLI commands, content capabilities, and streaming setup. Read this before creating or modifying stage content.
list_filesList all files in the stage workspace (~/.dazzle/stages/{stage}/). Returns relative paths, one per line.
read_fileRead a file from the stage workspace (~/.dazzle/stages/{stage}/{path}).
screenshotCapture a screenshot of the stage's current browser output. Returns a PNG image.
syncSync the stage workspace (~/.dazzle/stages/{stage}/) to the live stage. Run this after writing files to push content. Equivalent to 'dazzle stage sync {workspace-dir}'.
write_fileWrite a file to the stage workspace (~/.dazzle/stages/{stage}/{path}). Creates parent directories as needed. Use this to build up content that can then be synced to the stage.

Workspace tools

The workspace tools (write_file, read_file, edit_file, list_files, sync) store files in ~/.dazzle/stages/{stage-id}/ on the host filesystem. This bridges sandboxed environments (e.g. Claude Desktop) where the agent's bash runs in an isolated container and can't share files with the CLI process.

Workflow: write_file → edit_file (iterate) → sync → screenshot (verify)

Limitations: No shell/exec — can't run build tools (npm, tailwind, etc.) in the workspace. Content must be pre-built HTML/CSS/JS. Agents with full filesystem and shell access (e.g. Claude Code) should use dazzle stage sync directly for the full experience.

MCP Resources

URIDescription
https://dazzle.fm/llms-full.txtComplete Dazzle reference — getting started, CLI help, and content authoring guide.
https://dazzle.fm/llms.txtDazzle quick-start guide — platform overview, setup, CLI basics, and doc links.

CLI vs MCP — which to use?

CLIMCP
Best forCoding agents, terminals, CI/CDClaude Desktop, VS Code, sandboxed clients
FilesystemFull access — write anywhere, run build toolsWorkspace only (~/.dazzle/stages/{id}/)
ShellYes — npm, tailwind, any toolchainNo — pre-built content only
Content syncdazzle stage sync ./dirwrite_file + sync
Screenshotdazzle stage screenshot -o file.pngscreenshot tool (returns JPEG)
Authdazzle login or DAZZLE_API_KEYcli ["login"] via MCP

CLI Reference

Usage: dazzle <command> [flags]
Dazzle — cloud stages for streaming.
A stage is a cloud browser environment that renders and streams your content.Sync a local directory (must contain an index.html) and everything visible inthe browser window is what gets streamed to viewers.
Your content runs in a real browser with full access to standard web APIs (DOM,Canvas, WebGL, Web Audio, fetch, etc.). localStorage is persisted across stagerestarts — use it to store app state that should survive between sessions.
Workflow: 1. dazzle login # authenticate (one-time) 2. dazzle s new my-stage # create a stage 3. dazzle s up # bring it up — starts streaming to Dazzle 4. dazzle s sync ./my-app -w # sync + auto-refresh on changes 5. dazzle s ss -o preview.png # take a screenshot to verify 6. dazzle s down # stop streaming and shut down
Auth: dazzle login, or set DAZZLE_API_KEY for headless/CI use. Stage selection:use -s <name>, DAZZLE_STAGE env, or auto-selected if only one.
https://dazzle.fm
Flags:  -h, --help              Show context-sensitive help.  -j, --json              Output as JSON.  -s, --stage=STRING      Stage name or ID ($DAZZLE_STAGE).      --api-url=STRING    API URL ($DAZZLE_API_URL).
Commands:  version                          Print version information.  update                           Update dazzle to the latest release.  guide                            Show content authoring guide (rendering tips,                                   performance, best practices).  login                            Authenticate with Dazzle (opens browser).  logout                           Clear stored credentials.  whoami                           Show current user.  stage (s) list (ls)              List stages.  stage (s) create (new)           Create a stage.  stage (s) delete (rm)            Delete a stage.  stage (s) up                     Activate a stage.  stage (s) down                   Deactivate a stage.  stage (s) status (st)            Show stage status.  stage (s) stats                  Show live pipeline stats.  stage (s) preview                Show the shareable preview URL for a running                                   stage.  stage (s) sync (sy)              Sync a local directory to the stage. This is                                   the primary way to push content — use --watch                                   for live development.  stage (s) refresh (r)            Reload the stage entry point.  stage (s) event (ev) emit (e)    Push a named event with JSON data to                                   the running page — dispatched as a DOM                                   CustomEvent. Use this to send real-time data                                   from external processes (other agents, APIs,                                   etc.) without re-syncing or reloading.  stage (s) logs (l)               Retrieve stage console logs.  stage (s) screenshot (ss)        Capture a screenshot of the stage.  stage (s) info                   Get current stream title and category.  stage (s) title                  Set the stream title (not supported for                                   Restream).  stage (s) category               Set the stream category or game (not                                   supported for Restream).  stage (s) chat send              Send a message to live chat (not supported                                   for Restream).  destination (dest) list (ls)     List broadcast destinations.  destination (dest) add (create,new)                                   Add a broadcast destination.  destination (dest) delete (rm)                                   Remove a broadcast destination.  destination (dest) attach (set)                                   Attach a destination to a stage.  destination (dest) detach (unset)                                   Detach a destination from a stage.
Run "dazzle <command> --help" for more information on a command.
Stage subcommands
Usage: dazzle stage (s) <command> [flags]
Manage stages — create, sync content, screenshot, stream.
Flags:  -h, --help              Show context-sensitive help.  -j, --json              Output as JSON.  -s, --stage=STRING      Stage name or ID ($DAZZLE_STAGE).      --api-url=STRING    API URL ($DAZZLE_API_URL).
Commands:  stage (s) list (ls)              List stages.  stage (s) create (new)           Create a stage.  stage (s) delete (rm)            Delete a stage.  stage (s) up                     Activate a stage.  stage (s) down                   Deactivate a stage.  stage (s) status (st)            Show stage status.  stage (s) stats                  Show live pipeline stats.  stage (s) preview                Show the shareable preview URL for a running                                   stage.  stage (s) sync (sy)              Sync a local directory to the stage. This is                                   the primary way to push content — use --watch                                   for live development.  stage (s) refresh (r)            Reload the stage entry point.  stage (s) event (ev) emit (e)    Push a named event with JSON data to                                   the running page — dispatched as a DOM                                   CustomEvent. Use this to send real-time data                                   from external processes (other agents, APIs,                                   etc.) without re-syncing or reloading.  stage (s) logs (l)               Retrieve stage console logs.  stage (s) screenshot (ss)        Capture a screenshot of the stage.  stage (s) info                   Get current stream title and category.  stage (s) title                  Set the stream title (not supported for                                   Restream).  stage (s) category               Set the stream category or game (not                                   supported for Restream).  stage (s) chat send              Send a message to live chat (not supported                                   for Restream).
stage sync flags
Usage: dazzle stage (s) sync (sy) <dir> [flags]
Sync a local directory to the stage. This is the primary way to push content —use --watch for live development.
Arguments:  <dir>    Local directory to sync (must contain an index.html entry point).
Flags:  -h, --help                  Show context-sensitive help.  -j, --json                  Output as JSON.  -s, --stage=STRING          Stage name or ID ($DAZZLE_STAGE).      --api-url=STRING        API URL ($DAZZLE_API_URL).
  -w, --watch                 Watch for file changes and automatically re-sync.      --entry="index.html"    HTML entry point file (default: index.html).
stage screenshot flags
Usage: dazzle stage (s) screenshot (ss) [flags]
Capture a screenshot of the stage.
Flags:  -h, --help              Show context-sensitive help.  -j, --json              Output as JSON.  -s, --stage=STRING      Stage name or ID ($DAZZLE_STAGE).      --api-url=STRING    API URL ($DAZZLE_API_URL).
  -o, --out=STRING        Output file path (default: temp file).
stage event subcommands
Usage: dazzle stage (s) event (ev) <command>
Send real-time data to the running page without reloading. Events are dispatchedas DOM CustomEvents — use this for async updates from subagents, APIs, or otherprocesses.
Flags:  -h, --help              Show context-sensitive help.  -j, --json              Output as JSON.  -s, --stage=STRING      Stage name or ID ($DAZZLE_STAGE).      --api-url=STRING    API URL ($DAZZLE_API_URL).
Commands:  stage (s) event (ev) emit (e)    Push a named event with JSON data to                                   the running page — dispatched as a DOM                                   CustomEvent. Use this to send real-time data                                   from external processes (other agents, APIs,                                   etc.) without re-syncing or reloading.
Destination subcommands
Usage: dazzle destination (dest) <command> [flags]
Manage broadcast destinations (Twitch, YouTube, etc).
Flags:  -h, --help              Show context-sensitive help.  -j, --json              Output as JSON.  -s, --stage=STRING      Stage name or ID ($DAZZLE_STAGE).      --api-url=STRING    API URL ($DAZZLE_API_URL).
Commands:  destination (dest) list (ls)    List broadcast destinations.  destination (dest) add (create,new)                                  Add a broadcast destination.  destination (dest) delete (rm)                                  Remove a broadcast destination.  destination (dest) attach (set)                                  Attach a destination to a stage.  destination (dest) detach (unset)                                  Detach a destination from a stage.

Stage Resolution

For stage-scoped commands, the stage is resolved in this order:

  1. -s / --stage flag or DAZZLE_STAGE environment variable
  2. Auto-select if you have exactly one stage
bash
dazzle stage sync ./app --stage my-stage   # explicitexport DAZZLE_STAGE=my-stage               # or set for your session

Configuration

Environment variables (override config files and stored credentials):

VariablePurposeDefault
DAZZLE_API_KEYAPI key — skip dazzle login for CI, scripting, one-off commandsstored credentials
DAZZLE_API_URLAPI base URLhttps://dazzle.fm
DAZZLE_STAGEStage name or IDauto-selects if only one

Config files (~/.config/dazzle/, 0600 permissions):

config.json        # { "api_url": "..." }credentials.json   # { "api_key": "dzl_...", "email": "..." }

Security

  • API key stored at ~/.config/dazzle/credentials.json with 0600 permissions
  • Transmitted as Bearer token over HTTPS only
  • Never logged, never echoed, never sent to third parties
  • No telemetry — no usage data, crash reports, or analytics
  • All source code is open source and auditable

License

Apache 2.0 — see LICENSE

来源:README.md,提交 2e80d16

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.7.1最新Sep 16, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。