Documentation
Everything you need to know about Artidor — AI copilot, MCP server integration, features, and troubleshooting.
Getting Started
Artidor is a privacy-first, open-source video editor that runs entirely in your browser. No uploads, no cloud rendering — your media stays on your machine.
Quick Start
- Open the editor at /editor and create a new project.
- Drag and drop media files into the Assets panel, or click Import.
- Drag clips from Assets onto the timeline to start editing.
- Use the AI panel (Arth) to edit with natural language — just describe what you want.
- Export your video from the Export button when you're done.
AI Copilot (Arth)
Arth is the built-in AI assistant that can edit your video project using natural language. Tell it what you want in plain English and it calls tools to make it happen.
Using Arth
- Open the AI panel in the right sidebar of the editor.
- Type a request like 'Add a text layer that says Hello World' or 'Trim the first clip to 5 seconds'.
- Arth will plan, call the right tools, and show you each action as it executes.
- You can queue messages while Arth is busy — they'll be sent in order when the current task finishes.
- Use Steer to interrupt the current generation and send a new message immediately.
- Click Stop to cancel the current generation (queued messages continue).
AI Providers
Arth supports multiple AI providers. You can use:
- Puter.js — free, no API key needed, runs in the browser.
- OpenAI — bring your own API key (GPT-4, GPT-4o, etc.).
- Anthropic — bring your own API key (Claude models).
- Ollama — run models locally on your machine.
- Custom OpenAI-compatible — any provider that implements the OpenAI chat API.
Media Generation
When using Puter.js, Arth can generate video, images, and audio directly. The available models are fetched dynamically from your Puter account — just select them from the dropdown when configuring a Puter provider.
Auto-Learn
Auto-learn lets Arth learn from your editing style. When enabled, it defaults to project-scoped learning (only learns from edits in the current project). You can switch to global scope to learn across all projects, or turn it off entirely.
MCP Server — External AI Integration
Artidor includes a built-in MCP (Model Context Protocol) server that lets external AI agents — like Claude Desktop, Cursor, or any MCP-compatible client — directly edit your Artidor projects. This means you can use your favorite AI tool to drive Artidor's timeline, add effects, manipulate clips, and more.
How It Works
The MCP server uses a relay-based architecture. It doesn't run commands itself — instead, it relays tool calls from the external AI to a running Artidor editor tab over a localhost WebSocket:
MCP client (Claude/Cursor) ──stdio──▶ @artidor/mcp-server ──ws://127.0.0.1:8765──▶ Editor tab- The tool catalog is fetched live from the connected editor tab, so it always matches the editor's current build.
- All 77+ editor tools are exposed — the same tools Arth uses internally.
- Tool calls are validated against JSON Schema before execution.
- Changes appear in real-time in the editor tab.
Setup: Let External AIs Edit Your Project
Step 1 — Build the MCP server:
bun install
cd packages/mcp-server && bun run buildStep 2 — Enable the relay in the editor. Add this to apps/web/.env.local:
NEXT_PUBLIC_MCP_RELAY_URL=ws://127.0.0.1:8765Step 3 — Open the Artidor editor in your browser (use http://localhost, not https://, so the browser allows the local WebSocket connection).
Step 4 — Configure your MCP client. For Claude Desktop, add this to your config file:
{
"mcpServers": {
"artidor": {
"command": "node",
"args": ["path/to/artidor/packages/mcp-server/dist/index.js"]
}
}
}For Cursor, add the same config to your MCP settings.
Available Tool Categories
The MCP server exposes 77+ tools across 15 categories. All tools use the same validated command vocabulary as the in-app AI:
| Category | Tools | What You Can Do |
|---|---|---|
| Project | 4 | Set FPS, canvas size, background, save project |
| Scene | 4 | Create/rename scenes, add/remove bookmarks |
| Track | 4 | Add/remove tracks, mute/solo, visibility |
| Element | 15+ | Insert/move/split/trim/delete elements, transforms, opacity, blend modes, speed |
| Effect | 6 | Add/remove effects, set parameters, enable/disable, reorder, copy |
| Mask | 3 | Add/remove masks, set mask parameters |
| Keyframe | 6 | Add/remove keyframes, set values, easing, copy/paste |
| Transition | 2 | Add/remove transitions between elements |
| Playback | 4 | Play, pause, seek, set playback speed |
| Asset | 6 | List assets, add media to timeline, manage folders |
| Capture | 2 | Capture frames, capture audio regions |
| Style | 2 | Apply/save presets |
| Export | 2 | Export video, export frame |
| History | 3 | Undo, redo, get history |
| Selection | 3 | Select/deselect elements, get current selection |
| Clipboard | 4 | Copy, paste, cut, clear clipboard |
| Planning | 2 | Create plans, update todo items |
| Generate | 6+ | Generate video, images, audio, thumbnails, voiceovers, music (requires configured media models) |
Security
- Localhost only — the relay binds to 127.0.0.1, so only local processes can connect.
- All tool calls are validated against JSON Schema before execution.
- MCP policy enforces least privilege, typed tools, logging, and deny-by-default.
- Dangerous tools (shell execution, network requests, secret access) are disabled.
- All tool calls are logged for audit purposes.
MCP Client — Connect External MCP Servers to Arth
Artidor can also act as an MCP client. This means you can connect external MCP servers to Arth, giving the in-app AI access to tools from other services (databases, APIs, file systems, etc.).
Adding an MCP Server
- Open the AI panel in the editor.
- Click the puzzle icon (MCP Server chip) in the AI panel header.
- Click 'Add MCP Server'.
- Enter a name, the SSE endpoint URL, and an optional bearer token.
- Click Add — Arth will connect and discover available tools.
Once connected, tools from the external MCP server appear in Arth's tool list with the prefix 'mcp__'. Arth can call them just like any built-in tool.
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
| Space | Play / Pause |
| Ctrl/Cmd + Z | Undo |
| Ctrl/Cmd + Shift + Z | Redo |
| Ctrl/Cmd + S | Save project |
| Ctrl/Cmd + C | Copy selection |
| Ctrl/Cmd + V | Paste |
| Ctrl/Cmd + X | Cut |
| Delete | Delete selected elements |
| S | Split element at playhead |
| Arrow Left/Right | Move playhead frame by frame |
| Shift + Arrow | Move playhead 10 frames |
| Enter (in AI panel) | Send message / Queue if busy |
| Shift + Enter (in AI panel) | New line in message |
Project Management
Saving & Loading
- Projects are saved locally in your browser by default (IndexedDB).
- Use Ctrl/Cmd + S to save manually.
- Projects can also be saved to Google Drive for cloud backup.
- The .artpr format is an encrypted project file that can be exported and imported.
Google Drive Integration
Connect your Google Drive account from the Projects page to save and load projects from the cloud. Drive access tokens are stored in sessionStorage (per-tab) for security, not in persistent localStorage.
Sharing
You can share projects via shareable links. Shared projects can be viewed by anyone with the link. You can optionally password-protect shared projects.
Real-time Collaboration
Artidor supports real-time collaboration. You can invite others to edit a project with you in real-time, with live cursors, synchronized playback, and shared edit history.
- Click the Share button in the editor to create a collaboration room.
- Share the room link with your collaborators.
- Each collaborator's cursor and selections are visible in real-time.
- Edits are synchronized and can be undone/redone by any participant.
- Collaboration uses WebSocket-based real-time communication.
Export & Rendering
Artidor renders video locally in your browser using WebCodecs and Web Workers. No cloud rendering — everything happens on your machine.
- Export to MP4 with configurable resolution, bitrate, and FPS.
- Export a single frame as an image.
- Rendering happens in a Web Worker to keep the UI responsive.
- Progress is shown in real-time during export.
Privacy & Security
Artidor is designed privacy-first. Here's what that means in practice:
- All editing happens locally in your browser — no media is uploaded to any server.
- AI provider API keys are encrypted with AES-GCM before storage.
- Google Drive tokens are stored in sessionStorage (per-tab), not persistent localStorage.
- Rate limiting on all API endpoints with fail-closed local fallback.
- Content Security Policy (CSP) headers protect against XSS.
- SSRF protection on AI provider URLs.
- No tracking, no analytics on your edit data.
- Auto-learn is opt-in (off by default) — your edit data is never collected without consent.
Troubleshooting
AI not responding
- Check that you have at least one AI provider configured (Settings → AI or click the provider name in the AI panel).
- If using Puter.js, make sure you're signed in to your Puter account.
- If using an API key provider, verify the key is correct and has sufficient credits.
- Check the error message in the AI panel — it will tell you what went wrong.
MCP server not connecting
- Make sure the Artidor editor tab is open in your browser.
- Verify NEXT_PUBLIC_MCP_RELAY_URL is set and points to the correct port.
- Use http://localhost (not https://) to avoid mixed-content blocking.
- Check that port 8765 (or your custom ARTIDOR_MCP_PORT) is not in use.
- If the MCP client can't connect, verify the path to packages/mcp-server/dist/index.js is correct.
Export failing
- Make sure your browser supports WebCodecs (Chrome 94+ or Edge 94+).
- Try a lower resolution or bitrate if rendering runs out of memory.
- Close other tabs to free up GPU memory.
Connection dropped mid-task
If the AI connection drops while executing tools, Artidor will automatically retry up to 4 times with exponential backoff (1s, 2s, 4s delays). If all retries fail, your queued messages are preserved — just send a new message to continue.