RO

royshil/obs-mcp

Developer tools
152 stars 27 forks Quality 57 Trend 18GPL-2.0

An MCP server for OBS Studio that provides tools to control OBS via the OBS WebSocket protocol.

Overview

An MCP server for OBS Studio that provides tools to control OBS via the OBS WebSocket protocol.

README

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"
  1. 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": ""
      }
    }
  }
}
  1. 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": [
        "/build/index.js"
      ],
      "env": {
        "OBS_WEBSOCKET_PASSWORD": ""
      }
    }
  }
}

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.

View the full README on GitHub

Install

npx -y obs-mcp@latest
New to MCP? Start with the mcpskill.org guide →

Configuration

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