Skip to main content
Glama
Giancarlo26

obs-action-history

by Giancarlo26

obs_projector_open_mix

Open a projector for the program, preview, or multiview mix, showing live output, staged preview, or the full scene grid on a second display or window for clean broadcast output or operator monitoring.

Instructions

Open a projector showing a whole video mix - program (what is going out), preview (what studio mode has queued up), or multiview (the grid of all scenes).

program on a second monitor is the standard clean-feed trick: a capture card or a second PC pointed at that display gets the finished broadcast picture without a second encode and without OBS chrome. preview is the confidence monitor for whoever is operating. multiview is for a director watching everything at once.

Defaults to a WINDOW. Pass monitorIndex only when obs_monitor_list shows a display you can afford to lose, because fullscreen covers that entire screen and obs-websocket cannot close or enumerate projectors - this window stays until someone closes it in the OBS UI.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
monitorIndexNoIndex from obs_monitor_list for fullscreen. Omit, or use -1, for a normal window. Mutually exclusive with projectorGeometry.
videoMixTypeYesprogram = live output, preview = studio-mode staging, multiview = all-scenes grid.
projectorGeometryNoSize and position for a windowed projector, in Qt's base64 geometry format. The protocol does not document how to construct one, so in practice this is a value copied from somewhere that already had it - otherwise omit it and let the window open at its default size.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full behavioral burden and exceeds it. It discloses the default WINDOW behavior, that fullscreen covers the entire screen, and critically warns that 'obs-websocket cannot close or enumerate projectors - this window stays until someone closes it in the OBS UI.' This is exactly the kind of side-effect transparency agents need.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three well-organized paragraphs: what it does, per-use-case guidance, and window/fullscreen warnings. While long, every sentence earns its place and the core purpose is front-loaded in the first sentence. Slightly dense but never wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a high-risk tool (unrecoverable fullscreen state, non-enumerable projectors) and the description steps up to that complexity with all critical warnings. No output schema exists, so none is expected. It covers prerequisites (obs_monitor_list), failure modes, and edge cases like monitorIndex=-1 for windowed mode.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% so the baseline is 3, but the description adds meaningful context beyond schema: it explains when monitorIndex is appropriate (only if you can afford to lose the display) and demystifies projectorGeometry (undocumented Qt base64 format, copy from elsewhere). Only videoMixType gets lighter treatment since the schema already explains its enum values well.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource phrase: 'Open a projector showing a whole video mix' and enumerates the three mix types (program, preview, multiview). It clearly distinguishes itself from sibling obs_projector_open_source by scoping this tool to mix views.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Excellent per-value usage guidance: each enum value gets a use case ('program... is the standard clean-feed trick', 'preview is the confidence monitor', 'multiview is for a director'). It also gives explicit when-not-to guidance: 'Pass monitorIndex only when obs_monitor_list shows a display you can afford to lose.'

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Giancarlo26/obs-action-history'

If you have feedback or need assistance with the MCP directory API, please join our Discord server