OBS MCP Server

by royshil

101 stars
494 downloads
Not rated
GitHub

About

OBS MCP Server is an MCP server that connects to OBS Studio via the OBS WebSocket protocol, allowing AI assistants like Claude to control OBS programmatically. It is intended for users who want to automate scene management, source control, streaming, recording, and transitions…

Details

Author
royshil
GitHub stars
101
Downloads
494
Categories
Other

- Connect to OBS WebSocket server with password authentication.
- Control general operations (version info, stats, hotkeys, studio mode).
- Manage scenes: list, switch, create, remove.
- Manage sources: settings, audio levels, mute/unmute.
- Manipulate scene items: position, visibility, etc.
- Start/stop streaming, recording, and virtual camera.

Ensure OBS Studio is running with its WebSocket server enabled (Tools > WebSocket Server Settings). Note the WebSocket password, then set it as the environment variable OBS_WEBSOCKET_PASSWORD. Add the server to Claude desktop’s MCP configuration using npx -y obs-mcp@latest and provide the password. Restart Claude and issue commands to control OBS.

OBS 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

Usage

1. Make sure OBS Studio is running with WebSocket server enabled (Tools > WebSocket Server Settings). Note the password for the WS.
2. Set the WebSocket password in environment variable (if needed):

export OBS_WEBSOCKET_PASSWORD="your_password_here"

3. Add the MCP server to Claude desktop with the MCP server settings:

{
  "mcpServers": {
    "obs": {
      "command": "npx",
      "args": ["-y", "obs-mcp@latest"],
      "env": {
        "OBS_WEBSOCKET_PASSWORD": "<password_from_obs>"
      }
    }
  }
}

4. Use Claude to control your OBS!

Development

If you want to run the server locally using the code in this git repo, you can do the following:

npm run build
npm run start

Then configure Claude desktop:

{
  "mcpServers": {
    "obs": {
      "command": "node",
      "args": [
        "<obs-mcp_root>/build/index.js"
      ],
      "env": {
        "OBS_WEBSOCKET_PASSWORD": "<password_from_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.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.