- Node.js: v20 or higher
- pnpm: v9 or higher
- FFmpeg: Must be installed on your system and available in PATH (some servers use static binaries, but local dev often benefits from system install).
-
Clone the repository:
git clone <repo-url> cd ai-video-editor
-
Install dependencies:
pnpm install
-
Configure Environment: Copy
.env.exampletoapps/backend/.envandapps/web/.env.localand fill in the required keys.Backend Keys:
LLM_PROVIDER:anthropic,openai,gemini, orcopilotANTHROPIC_API_KEY/OPENAI_API_KEY/GEMINI_API_KEYPEXELS_API_KEY(Optional)UNSPLASH_ACCESS_KEY(Optional)
Note: If using GitHub Copilot, please refer to GitHub Copilot Integration for authentication steps.
-
Start Development:
pnpm dev
This command uses Turbo to start the Frontend (port 3000), Backend (port 3001), and compiles all packages.
pnpm dev: Start all apps in development mode.pnpm dev:web: Start only the Next.js frontend.pnpm dev:backend: Start only the Backend server.pnpm build: Build all applications and packages.pnpm lint: Run linting across the monorepo.
.
├── apps/
│ ├── web/ # Next.js Frontend
│ └── backend/ # Express + WebSocket Backend
├── mcp-servers/ # Individual MCP Server packages
│ ├── ffmpeg-server/
│ ├── vision-server/
│ ├── whisper-server/
│ ├── asset-server/
│ └── code-runner-server/
├── packages/
│ ├── mcp-utils/ # Shared MCP utilities (BaseServer, validation)
│ └── shared-types/ # Shared TypeScript interfaces
└── docs/ # Documentation
- Create a new directory in
mcp-servers/. - Initialize
package.jsonwith@modelcontextprotocol/sdkdependency. - Extend
BaseMCPServerfrom@ai-video-editor/mcp-utils. - Register your tools.
- Add the server to the backend configuration in
apps/backend/src/mcp/server-configs.ts.