Skip to main content

MCP server for controlling OBS Studio over obs-websocket v5: scenes, sources, audio, streaming, recording, replay buffer, stats, and text overlays.

Project description

obs-studio-mcp

An MCP (Model Context Protocol) server for controlling OBS Studio over obs-websocket v5: scenes, sources, audio, text overlays, streaming, recording, replay buffer, virtual camera, and performance stats.

  • Talks to the obs-websocket server built into OBS 28+ (Tools → WebSocket Server Settings).
  • Every mutating tool accepts dry_run=true and returns a preview instead of acting — useful guard rails when an agent drives your live stream.
  • No secrets in this repo or in your MCP client config.

Quick start

  1. In OBS: Tools → WebSocket Server Settings → enable, note the port (default 4455) and password.
  2. Provide connection settings via environment:
export OBS_MCP_HOST=127.0.0.1     # default
export OBS_MCP_PORT=4455          # default
export OBS_MCP_PASSWORD=yourpass  # via the default env backend
  1. Add to your MCP client:
# Claude Code
claude mcp add obs -s user -- uvx obs-studio-mcp

Tools

Area Tools
Scenes list_scenes, switch_scene, set_preview_scene, trigger_transition, set_studio_mode, list_scene_items, set_scene_item_visibility
Sources list_inputs, get_audio_levels, set_mute, set_volume, update_text_source, screenshot_source, media_control
Output stream_status, start_stream, stop_stream, record_status, start_record, stop_record, pause_record, save_replay, set_replay_buffer, set_virtual_cam
System get_stats, list_profiles, switch_profile, list_scene_collections, switch_scene_collection, trigger_hotkey, health_check

update_text_source is handy for driving on-stream overlays from an agent — question-of-the-day, now-playing, countdowns — anything rendered by a Text source.

Secret storage

The only secret is the websocket password.

Backend Select with Reads
env (default) OBS_MCP_PASSWORD
file OBS_MCP_SECRETS=file ~/.config/obs-studio-mcp/credentials.json (0600)
vaultproxy OBS_MCP_SECRETS=vaultproxy (+ VAULTPROXY_URL) a Vaultwarden vault via a local vaultproxy HTTP API

Development

pip install -e '.[dev]'
ruff check src tests && pytest

Tests are fully offline (fake obs-websocket client).

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

obs_studio_mcp-0.1.1.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

obs_studio_mcp-0.1.1-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file obs_studio_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: obs_studio_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for obs_studio_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 820e8ed4cb4773ccbfd24d80880e934bcf9bde7b6b2c4f13a0d75c693e173d4d
MD5 14ad82088b1f9ef5c89ff1a2d3a03dba
BLAKE2b-256 fccc263b2fa72899f4fce1c9c0c001fbb139316581793417729128aede71f1a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for obs_studio_mcp-0.1.1.tar.gz:

Publisher: publish.yml on aaronckj/obs-studio-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file obs_studio_mcp-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: obs_studio_mcp-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for obs_studio_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 609942735e8e5f314db23f04cd2fbeb13e007c998521e87db5b6d4721a6ff00f
MD5 ad0f81ff2ca959ab53e3c92a29166a5a
BLAKE2b-256 e5779888599516a50f28e8ca6834c6f433ff5b729c7e7d0776b23dd8f9c269e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for obs_studio_mcp-0.1.1-py3-none-any.whl:

Publisher: publish.yml on aaronckj/obs-studio-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page