obs-mcp (royshil/obs-mcp) is an MCP server listed on the M8ven Trust Index. It scores 58 out of 100, grade D. It declares 200 tools. No publisher has claimed this listing.
A server that provides tools to control OBS Studio remotely via the OBS WebSocket protocol, enabling management of scenes, sources, streaming, and recording through an MCP client interface.
Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
royshil
Source: github_code · also listed on ModelScope
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
obs-get-persistent-dataGets the value of a slot from the selected persistent data realm
obs-set-persistent-dataSets the value of a slot from the selected persistent data realm
obs-get-scene-collection-listGets an array of all scene collections
obs-set-current-scene-collectionSwitches to a scene collection
obs-create-scene-collectionCreates a new scene collection, switching to it in the process
obs-get-profile-listGets an array of all profiles
obs-set-current-profileSwitches to a profile
obs-create-profileCreates a new profile, switching to it in the process
obs-remove-profileRemoves a profile. If the current profile is chosen, it will change to a different profile first
obs-get-profile-parameterGets a parameter from the current profile's configuration
obs-set-profile-parameterSets the value of a parameter in the current profile's configuration
obs-get-video-settingsGets the current video settings
obs-set-video-settingsSets the current video settings
obs-get-stream-service-settingsGets the current stream service settings
obs-set-stream-service-settingsSets the current stream service settings
obs-get-record-directoryGets the current directory that the record output is set to
obs-set-record-directorySets the current directory that the record output writes files to
obs-get-filter-kind-listGets an array of all available source filter kinds
obs-get-source-filter-listGets an array of all of a source's filters
obs-get-filter-default-settingsGets the default settings for a filter kind
obs-create-source-filterCreates a new filter, adding it to the specified source
obs-remove-source-filterRemoves a filter from a source
obs-set-source-filter-nameSets the name of a source filter (rename)
obs-get-source-filterGets the info for a specific source filter
obs-set-source-filter-indexSets the index position of a filter on a source
obs-set-source-filter-settingsSets the settings of a source filter
obs-set-source-filter-enabledSets the enable state of a source filter
obs-get-statusGet the current status of the OBS MCP server and OBS connection
obs-get-versionGet OBS Studio version information
obs-test-connectionTest the connection to OBS WebSocket
obs-get-statsGets statistics about OBS, obs-websocket, and the current session
obs-broadcast-custom-eventBroadcasts a CustomEvent to all WebSocket clients
obs-call-vendor-requestCall a request registered to a vendor
obs-get-hotkey-listGets an array of all hotkey names in OBS
obs-trigger-hotkey-by-nameTriggers a hotkey using its name
obs-trigger-hotkey-by-key-sequenceTriggers a hotkey using a sequence of keys
obs-sleepSleeps for a time duration or number of frames
obs-get-input-listGets an array of all inputs in OBS
obs-get-input-kind-listGets an array of all available input kinds in OBS
obs-get-special-inputsGets the names of all special inputs
obs-create-inputCreates a new input, adding it as a scene item to the specified scene
obs-remove-inputRemoves an existing input
obs-set-input-nameSets the name of an input (rename)
obs-get-input-default-settingsGets the default settings for an input kind
obs-get-input-settingsGets the settings of an input
obs-set-input-settingsSets the settings of an input
obs-get-input-muteGets the audio mute state of an input
obs-set-input-muteSets the audio mute state of an input
obs-toggle-input-muteToggles the audio mute state of an input
obs-get-input-volumeGets the current volume setting of an input
obs-set-input-volumeSets the volume setting of an input
obs-get-input-audio-balanceGets the audio balance of an input
obs-set-input-audio-balanceSets the audio balance of an input
obs-get-input-audio-sync-offsetGets the audio sync offset of an input
obs-set-input-audio-sync-offsetSets the audio sync offset of an input
obs-get-input-audio-monitor-typeGets the audio monitor type of an input
obs-set-input-audio-monitor-typeSets the audio monitor type of an input
obs-get-media-input-statusGets the status of a media input
obs-set-media-input-cursorSets the cursor position of a media input
obs-offset-media-input-cursorOffsets the current cursor position of a media input
obs-trigger-media-input-actionTriggers an action on a media input
obs-get-virtual-cam-statusGets the status of the virtualcam output
obs-toggle-virtual-camToggles the state of the virtualcam output
obs-start-virtual-camStarts the virtualcam output
obs-stop-virtual-camStops the virtualcam output
obs-get-replay-buffer-statusGets the status of the replay buffer output
obs-toggle-replay-bufferToggles the state of the replay buffer output
obs-start-replay-bufferStarts the replay buffer output
obs-stop-replay-bufferStops the replay buffer output
obs-save-replay-bufferSaves the contents of the replay buffer output
obs-get-last-replay-buffer-replayGets the filename of the last replay buffer save file
obs-get-output-listGets the list of available outputs
obs-get-output-statusGets the status of an output
obs-toggle-outputToggles the status of an output
obs-start-outputStarts an output
obs-stop-outputStops an output
obs-get-output-settingsGets the settings of an output
obs-set-output-settingsSets the settings of an output
obs-get-record-statusGets the status of the record output
obs-toggle-recordToggles the status of the record output
obs-start-recordStarts the record output
obs-stop-recordStops the record output
obs-toggle-record-pauseToggles pause on the record output
obs-pause-recordPauses the record output
obs-resume-recordResumes the record output
obs-split-record-fileSplits the current file being recorded into a new file
obs-create-record-chapterAdds a new chapter marker to the file currently being recorded
obs-get-scene-itemsGet a list of all scene items in a scene
obs-create-scene-itemCreate a scene item for a source in a scene
obs-remove-scene-itemRemove a scene item from a scene
obs-set-scene-item-enabledShow or hide a scene item
obs-get-scene-item-transformGet the position, rotation, scale, or crop of a scene item
obs-set-scene-item-transformSet the position, rotation, scale, or crop of a scene item
obs-get-scene-item-idGet the ID of a scene item by its source name
obs-get-scene-listGet a list of scenes in OBS
obs-get-current-sceneGet the current active scene in OBS
obs-set-current-sceneSet the current active scene in OBS
obs-get-preview-sceneGet the current preview scene in OBS Studio Mode
obs-set-preview-sceneSet the current preview scene in OBS Studio Mode
obs-create-sceneCreate a new scene in OBS
100 further tools are not listed here. The complete surface is in the source.
Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.
When Vitest UI server is listening, arbitrary file can be read and executed
Anthropic's MCP TypeScript SDK has a ReDoS vulnerability
Model Context Protocol (MCP) TypeScript SDK does not enable DNS rebinding protection by default
ws: Memory exhaustion DoS from tiny fragments and data chunks
ws: Uninitialized memory disclosure
OBS_WEBSOCKET_PASSWORDPassword for authenticating with OBS WebSocket (if required)OBS_WEBSOCKET_URLWebSocket URL (default: ws://localhost:4455)OBS_WS_PASSWORDTool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
200/200 tools missing one or more hints — obs-get-persistent-data (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); obs-set-persistent-data (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); obs-get-scene-collection-list (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +197 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Tool test coverage
Only 0/200 tools referenced in tests (0%)
Write tests that reference each tool by name so every tool has at least one test.
Production dependencies are patched
0 critical, 3 high severity in production deps — @modelcontextprotocol/sdk@1.7.0 (high), @modelcontextprotocol/sdk@1.7.0 (high)
Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.
Dev dependencies
1 critical/high in dev-only deps (does not ship to users)
Upgrade dev dependencies when convenient.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/royshil/obs-mcp)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check