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.5.0.tar.gz (14.7 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.5.0-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: obs_studio_mcp-0.5.0.tar.gz
  • Upload date:
  • Size: 14.7 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.5.0.tar.gz
Algorithm Hash digest
SHA256 c18d17b8eade58472a862f958728ff4b08091d3a1d42918cf6f86ab262b0d670
MD5 eeebd4eaff098322570ffce363634b5d
BLAKE2b-256 477255b47a9a036140f00cce6037b81383c686688f6646e5ba219feccd9248b0

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: obs_studio_mcp-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 18.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.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 573608bb0034d6fda75b6685e4efba30d6d836753ea030d8ca219be92f87c244
MD5 95e60109f8aae0b6912981c72a67f466
BLAKE2b-256 e07902849c73b75fdd0862e8220d002b94a7643b364d20a0be6529678e8b0331

See more details on using hashes here.

Provenance

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