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.4.0.tar.gz (13.6 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.4.0-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: obs_studio_mcp-0.4.0.tar.gz
  • Upload date:
  • Size: 13.6 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.4.0.tar.gz
Algorithm Hash digest
SHA256 9e6426061291853aa931f0e9db012267d8530ebbbb44c3a1ae13a6ca0a555f12
MD5 d2435eb62d9394086546040def3d91cc
BLAKE2b-256 53251bf0ce822ba70ee5fcfacc312df67f896a899fc28794f5b65387588d6dde

See more details on using hashes here.

Provenance

The following attestation bundles were made for obs_studio_mcp-0.4.0.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.4.0-py3-none-any.whl.

File metadata

  • Download URL: obs_studio_mcp-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 16.7 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.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b38ac6559d7c71f1c78ae32c78e9e57858af40be9869ca94197edd5bb9e563b4
MD5 3af733830d94283aeefc4cacadbdd187
BLAKE2b-256 b0777e653bec49a1010c1f72d11da7acf490b0b0c8ef4cac74d862cf3673ea8e

See more details on using hashes here.

Provenance

The following attestation bundles were made for obs_studio_mcp-0.4.0-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