An MCP server that enables control of OBS Studio through the OBS WebSocket protocol.
OBS Studio Control via MCP Server
An MCP server for OBS Studio that provides tools to control OBS via the OBS WebSocket protocol.
Features
- Connect to OBS WebSocket server
- Control OBS via MCP tools
- Provides tools for:
- General operations
- Scene management
- Source control
- Scene item manipulation
- Streaming and recording
- Transitions
Installation
npm install
npm run build
Usage
- Make sure OBS Studio is running with WebSocket server enabled (Tools > WebSocket Server Settings). Note the password for the WS.
- Set the WebSocket password in environment variable (if needed):
export OBS_WEBSOCKET_PASSWORD="your_password_here"
- Run the OBS MCP server to see that it is able to build and connect:
npm run build
npm run start
- Provision you Claude desktop with the MCP server settings:
{
"mcpServers": {
"obs": {
"command": "node",
"args": [\
"<obs-mcp_root>/build/index.js"\
],
"env": {
"OBS_WEBSOCKET_PASSWORD": "<password_from_obs>"
}
}
}
}
- Use Claude to control your OBS!
Available Tools
The server provides tools organized by category:
- General tools: Version info, stats, hotkeys, studio mode
- Scene tools: List scenes, switch scenes, create/remove scenes
- Source tools: Manage sources, settings, audio levels, mute/unmute
- Scene item tools: Manage items in scenes (position, visibility, etc.)
- Streaming tools: Start/stop streaming, recording, virtual camera
- Transition tools: Set transitions, durations, trigger transitions
Environment Variables
OBS_WEBSOCKET_URL
: WebSocket URL (default: ws://localhost:4455)
OBS_WEBSOCKET_PASSWORD
: Password for authenticating with OBS WebSocket (if required)
Requirements
- Node.js 16+
- OBS Studio 31+ with WebSocket server enabled
- Claude desktop
License
See the LICENSE file for details.