crow_wm
Screen control. ALWAYS call this tool when the user wants to: open/play/watch/search something, close a window, pause, resume, mute, or unmute. NEVER describe what you would do — ALWAYS call this tool.\n\nCommands:\n- open youtube <query> — search and play a YouTube video\n- open browser <url> — ...
This record as markdown: /tools/kh0pper-crow/crow-wm.md
What crow_wm does on Crow
AI agents invoke crow_wm to trigger actions in Crow. 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 crow_wm is rated High
This tool executes system-level actions such as launching applications, controlling browser windows, manipulating media playback, and opening video calls. These are external operations with real side effects on the host environment, placing it firmly in the Execute category. Severity is high because a misused agent could open arbitrary URLs, launch unwanted applications, or join video calls without user consent.
From the tool's definition 'Screen control. ALWAYS call this tool when the user wants to: open/play/watch/search something, close a window, pause, resume, mute, or unmute.' Commands include opening browsers, playing YouTube videos, launching applications, and opening video calls — all…
Attacks that exploit this kind of access
The rule that runs crow_wm safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Crow, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For crow_wm, this is the rule to start with:
crow_wm 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 Crow, apply this rule, and every crow_wm call is checked against it from then on.
Questions about crow_wm
Screen control. ALWAYS call this tool when the user wants to: open/play/watch/search something, close a window, pause, resume, mute, or unmute. NEVER describe what you would do — ALWAYS call this tool.\n\nCommands:\n- open youtube <query> — search and play a YouTube video\n- open browser <url> — open a web page\n- open blog <slug> — open a blog post\n- open jellyfin — open media library\n- open plex — open Plex media library\n- open nest <panel> — open dashboard panel\n- open videocall <room=CODE&token=TOKEN> — open a video call\n- open pet [anchor] — launch the Live2D pet mascot (Linux only; anchor: right, left, bottom-right, bottom-left)\n- close / close youtube / close pet / close all — close windows\n- pause — pause current media\n- resume — resume current media\n- mute / unmute — audio control\n- save workspace <name> — save current window layout\n- load workspace <name> — restore a saved layout\n- list workspaces — show saved layouts\n- search <query> — search the web and show results on screen\n- display <title> | <content> — show information on screen (use | to separate title from body text; use || for paragraph breaks)\n- invite <name> — invite a contact to join your room\n- memo <contact> <message> — send a voice memo to a contact\n- react <contact> <emoji> — send an emoji reaction to a contact. It is categorised as a Execute tool in the Crow MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the Crow MCP server in PolicyLayer and add a rule for crow_wm: 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 Crow. Nothing to install.
crow_wm 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 crow_wm 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 crow_wm. 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.
crow_wm is provided by the Crow MCP server (kh0pper/crow). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Crow, and thousands of servers like it.
This server
Across the catalogue