obs_stream_control
Create an OBS WebSocket v5 control rig in TouchDesigner: websocketDAT connection, Constant CHOP command channels for stream/record/scene actions, and a chopExecute DAT that dispatches op:6 request payloads such as StartStream, StopStream, ToggleStream, StartRecord, StopRecord, ToggleRecord, and S...
This record as markdown: /tools/io-github-pantani-tdmcp/obs-stream-control.md
What obs_stream_control does on tdmcp — TouchDesigner MCP server
AI agents invoke obs_stream_control to trigger actions in tdmcp — TouchDesigner MCP server. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.
Why obs_stream_control is rated High
This tool creates a control rig that triggers external OBS operations — starting/stopping live streams and recordings, switching scenes — via WebSocket commands. These are real-world external operations with significant consequences (e.g., stopping a live broadcast), placing this firmly in Execute.
From the tool's definition dispatches op:6 request payloads such as StartStream, StopStream, ToggleStream, StartRecord, StopRecord, ToggleRecord, and SetCurrentProgramScene
Attacks that exploit this kind of access
The rule that runs obs_stream_control safely
PolicyLayer is an MCP gateway: it sits between your AI agents and tdmcp — TouchDesigner MCP server, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For obs_stream_control, this is the rule to start with:
obs_stream_control stays usable, but rate-capped: a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect tdmcp — TouchDesigner MCP server, apply this rule, and every obs_stream_control call is checked against it from then on.
Questions about obs_stream_control
Create an OBS WebSocket v5 control rig in TouchDesigner: websocketDAT connection, Constant CHOP command channels for stream/record/scene actions, and a chopExecute DAT that dispatches op:6 request payloads such as StartStream, StopStream, ToggleStream, StartRecord, StopRecord, ToggleRecord, and SetCurrentProgramScene. tdmcp never accepts or stores OBS passwords; if OBS authentication is enabled, complete Identify authentication manually in the generated obs_dispatch DAT. It is categorised as a Execute tool in the tdmcp — TouchDesigner MCP server MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the tdmcp — TouchDesigner MCP server MCP server in PolicyLayer and add a rule for obs_stream_control: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches tdmcp — TouchDesigner MCP server. Nothing to install.
obs_stream_control is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the obs_stream_control rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for obs_stream_control. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
obs_stream_control is provided by the tdmcp — TouchDesigner MCP server MCP server (@dpantani/tdmcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on tdmcp — TouchDesigner MCP server, and thousands of servers like it.
Across the catalogue