{"_id":"@capturebeam/mcp","_rev":"2-98e6615ca8ae53e884ba8858fa811068","name":"@capturebeam/mcp","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@capturebeam/mcp","version":"0.1.0","keywords":["mcp","model-context-protocol","capturebeam","demo-video","agent"],"license":"MIT","_id":"@capturebeam/mcp@0.1.0","maintainers":[{"name":"jasperdeboer","email":"j@sperdeboer.nl"}],"homepage":"https://capturebeam.com/docs/mcp","bugs":{"url":"https://github.com/kaulos-labs/capturebeam/issues"},"bin":{"capturebeam-mcp":"dist/index.js"},"dist":{"shasum":"b7ea50febf55d3ec9ba747ec28599b0cbab23f79","tarball":"https://registry.npmjs.org/@capturebeam/mcp/-/mcp-0.1.0.tgz","fileCount":4,"integrity":"sha512-XulK/rFv7GgmxyceeSz6VFQhphu2EEdx7dOWmZxfZORWWWJSMsJIDnswmmbQ8ckXIwWfYJ0kRsLjcsIvpPD5rw==","signatures":[{"sig":"MEUCIBbnoVk1N2/RrS/0SR9Y7DJEEJc+Q3WTP9QlOuQFNSVFAiEAictuzKap4Zmtoq5PSkm1Znw9rBvNcmKsDAfmRm4CfTk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16392},"type":"module","engines":{"node":">=18"},"gitHead":"d725ce60dbf69f887aabe6980c364a5932a8210e","scripts":{"dev":"tsx src/index.ts","lint":"eslint .","build":"tsc -p .","prepublishOnly":"npm run build"},"_npmUser":{"name":"jasperdeboer","email":"j@sperdeboer.nl"},"repository":{"url":"git+https://github.com/kaulos-labs/capturebeam.git","type":"git","directory":"mcp"},"_npmVersion":"11.5.2","description":"Model Context Protocol server for CaptureBeam — author and render agent-first demo videos from any MCP-capable client (Claude Code, Cursor, Codex, Windsurf).","directories":{},"_nodeVersion":"24.2.0","dependencies":{"zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","eslint":"^9.39.4","@eslint/js":"^9.39.4","typescript":"^5.6.3","@types/node":"^22.9.0","typescript-eslint":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.1.0_1779996783481_0.9454262617907634","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@capturebeam/mcp","version":"0.2.0","description":"Model Context Protocol server for CaptureBeam — author and render agent-first demo videos from any MCP-capable client (Claude Code, Cursor, Codex, Windsurf).","type":"module","bin":{"capturebeam-mcp":"dist/index.js"},"engines":{"node":">=18"},"scripts":{"build":"tsc -p .","dev":"tsx src/index.ts","lint":"eslint .","prepublishOnly":"npm run build"},"keywords":["mcp","model-context-protocol","capturebeam","demo-video","agent"],"license":"MIT","homepage":"https://capturebeam.com/docs/mcp","repository":{"type":"git","url":"git+https://github.com/kaulos-labs/capturebeam.git","directory":"mcp"},"bugs":{"url":"https://github.com/kaulos-labs/capturebeam/issues"},"publishConfig":{"access":"public"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.0","zod":"^3.23.8"},"devDependencies":{"@eslint/js":"^9.39.4","@types/node":"^22.9.0","eslint":"^9.39.4","tsx":"^4.19.2","typescript":"^5.6.3","typescript-eslint":"^8.59.1"},"_id":"@capturebeam/mcp@0.2.0","gitHead":"0a775dd7d2f96f1da423bca38fdb4dcdcb8edbf2","_nodeVersion":"24.2.0","_npmVersion":"11.5.2","dist":{"integrity":"sha512-3RqPyE6zmrLfMU9Va1cXiK8hKfDw5o/LGT6hI46U/GgF3FIBY+UhCVEaG9Sx2kH3u3wnqDgjbMluaMx5pJZSaQ==","shasum":"7be7da7f8abeb640ee1530bfd9a5084613fe1612","tarball":"https://registry.npmjs.org/@capturebeam/mcp/-/mcp-0.2.0.tgz","fileCount":4,"unpackedSize":17704,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC8Mk5hEuK+KLqZlBvXzT1uwUUTdx1h3xRy8nKl42ezvgIgeRWmtOZKf5h0HO5hOWJAT+gZFsPKDZP9XtBUnksIOnw="}]},"_npmUser":{"name":"jasperdeboer","email":"j@sperdeboer.nl"},"directories":{},"maintainers":[{"name":"jasperdeboer","email":"j@sperdeboer.nl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp_0.2.0_1780005638891_0.6643158247385001"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-28T19:33:03.102Z","modified":"2026-05-28T22:00:39.167Z","0.1.0":"2026-05-28T19:33:03.653Z","0.2.0":"2026-05-28T22:00:39.030Z"},"bugs":{"url":"https://github.com/kaulos-labs/capturebeam/issues"},"license":"MIT","homepage":"https://capturebeam.com/docs/mcp","keywords":["mcp","model-context-protocol","capturebeam","demo-video","agent"],"repository":{"type":"git","url":"git+https://github.com/kaulos-labs/capturebeam.git","directory":"mcp"},"description":"Model Context Protocol server for CaptureBeam — author and render agent-first demo videos from any MCP-capable client (Claude Code, Cursor, Codex, Windsurf).","maintainers":[{"name":"jasperdeboer","email":"j@sperdeboer.nl"}],"readme":"# @capturebeam/mcp\n\nModel Context Protocol server for [CaptureBeam](https://capturebeam.com).\nLets any MCP-capable client — Claude Code, Cursor, Codex, Claude Desktop,\nWindsurf — author and render agent-first demo videos through your own\nCaptureBeam account.\n\nIt's a thin wrapper over the CaptureBeam REST API: every tool is a call to\n`https://capturebeam.com/api/v1/*` with your API key. No logic lives here;\nthe API is the contract.\n\n## Setup\n\n1. Create an API key in the CaptureBeam dashboard (**Dashboard → API\n   keys**). It looks like `cb_live_…`.\n2. Add the server to your client with `CB_TOKEN` set to that key.\n\nThe server speaks stdio and is launched via `npx`, so there's nothing to\ninstall globally.\n\n### Generic MCP config\n\nMost clients accept this shape (in their `mcpServers` map):\n\n```json\n{\n  \"mcpServers\": {\n    \"capturebeam\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@capturebeam/mcp\"],\n      \"env\": { \"CB_TOKEN\": \"cb_live_your_key_here\" }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add capturebeam --env CB_TOKEN=cb_live_your_key_here -- npx -y @capturebeam/mcp\n```\n\n### Cursor\n\nAdd the generic block above to `~/.cursor/mcp.json` (global) or\n`.cursor/mcp.json` (per-project).\n\n### Claude Desktop\n\nAdd the generic block to `claude_desktop_config.json`\n(macOS: `~/Library/Application Support/Claude/`), then restart the app.\n\n## Environment variables\n\n| Var | Required | Default | Purpose |\n|-----|----------|---------|---------|\n| `CB_TOKEN` | yes | — | Your `cb_live_…` API key. Without it, only the no-auth schema resource works. |\n| `CB_API_BASE` | no | `https://capturebeam.com` | Point at a self-hosted or staging instance. |\n\n## Tools\n\n| Tool | Wraps | Notes |\n|------|-------|-------|\n| `probe_page` | `POST /v1/probe` | Scan a URL; returns interactive elements for durable targets. |\n| `render_demo` | `POST /v1/renders` | Submit `yaml` or `projectId`. Returns a job id — does **not** block. |\n| `get_render` | `GET /v1/renders/:id` | Poll status (`pending → running → succeeded \\| failed`). ~2s interval. |\n| `get_project` | `GET /v1/projects/:id` | Read a project's current name / yaml / description. |\n| `update_project` | `PUT /v1/projects/:id` | Patch yaml / name / description in place. |\n| `list_project_renders` | `GET /v1/projects/:id/renders` | Render history, latest first. |\n| `list_project_shares` | `GET /v1/projects/:id/shares` | Share links for a project's renders. |\n| `create_share` | `POST /v1/renders/:id/share` | Stable `/s/<code>` watch link for a succeeded render. |\n| `author_demo` | `POST /v1/author` | Describe a flow + a URL → CaptureBeam authors a validated demo.yaml server-side. `render:true` also queues the render. Needs an active subscription. |\n\n**Render is async.** `render_demo` returns a job id immediately; poll\n`get_render` until `status` is `succeeded` (then `videoUrl` is set) or\n`failed` (then `error` + per-step diagnostics are set).\n\n## Resources\n\n- `capturebeam://schema` — the live demo.yaml JSON Schema.\n- `capturebeam://skill` — `SKILL.md`, the authoring methodology + full\n  contract. Clients that auto-load resources get the authoring guidance\n  without being told to fetch a URL.\n\n## Prompt\n\n- `author_demo({ url?, goal? })` — primes the methodology: read the skill,\n  probe, draft a tight demo, render, poll, self-correct, share.\n\n## Local development\n\n```bash\nnpm install\nnpm run build\nCB_TOKEN=cb_live_… node dist/index.js   # speaks MCP over stdio\n```\n\nPoint a client's `command` at `node` with `args` `[\"/abs/path/to/dist/index.js\"]`\nto test an unpublished build.\n\n## Versioning\n\nThe server reports its version on `initialize` and mirrors the\nCaptureBeam agent docs version. When the API contract bumps\n(`AGENT_DOCS_VERSION`), bump this package so cached installs re-read the\nschema resource.\n","readmeFilename":"README.md"}