# focus_window

A execute tool on the Desktop Commander MCP Server MCP server.

Agent View of the PolicyLayer registry record for `focus_window`. HTML page: https://policylayer.com/tools/19miha99-system-monitor-mcp/focus-window

## Facts

- Tool: `focus_window`
- Server: Desktop Commander MCP Server (`19miha99/system-monitor-mcp`) — https://policylayer.com/tools/19miha99-system-monitor-mcp.md
- Homepage: https://github.com/19miha99/system-monitor-mcp
- Risk category: Execute (High risk)
- Registry record: grade D, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "focus_window",
    "arguments": {}
  }
}
```

## Why focus_window is rated High

Based on the tool name and server context ('full control over your desktop', 'manage windows'), focus_window likely brings a specific window to the foreground and gives it input focus. This is an external desktop operation (Execute category) as it triggers a UI/OS-level action. Severity is medium since misuse could redirect user attention or enable clickjacking-style attacks, but it doesn't destroy data.

From the tool's own definition: "Tool name 'focus_window'; description is empty and uninformative."

## Use case

AI agents invoke focus_window to trigger actions in Desktop Commander 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.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Desktop Commander MCP Server:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "focus_window": {
      "limits": [
        {
          "counter": "focus_window_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Desktop Commander MCP Server (22)

- `kill_process` — Destructive — https://policylayer.com/tools/19miha99-system-monitor-mcp/kill-process.md
- `launch_application` — Execute — https://policylayer.com/tools/19miha99-system-monitor-mcp/launch-application.md
- `set_window_state` — Execute — https://policylayer.com/tools/19miha99-system-monitor-mcp/set-window-state.md
- `arrange_window` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/arrange-window.md
- `capture_screenshot` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/capture-screenshot.md
- `find_process_by_port` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/find-process-by-port.md
- `get_battery_status` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-battery-status.md
- `get_cpu_per_core` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-cpu-per-core.md
- `get_display_info` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-display-info.md
- `get_network_stats` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-network-stats.md
- `get_process_details` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-process-details.md
- `get_startup_programs` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-startup-programs.md
- `get_system_overview` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-system-overview.md
- `get_temperatures` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-temperatures.md
- `get_top_consumers` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/get-top-consumers.md
- `list_processes` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/list-processes.md
- `list_windows` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/list-windows.md
- `read_clipboard` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/read-clipboard.md
- `search_installed_apps` — Read — https://policylayer.com/tools/19miha99-system-monitor-mcp/search-installed-apps.md
- `close_window` — Write — https://policylayer.com/tools/19miha99-system-monitor-mcp/close-window.md
- `send_notification` — Write — https://policylayer.com/tools/19miha99-system-monitor-mcp/send-notification.md
- `write_clipboard` — Write — https://policylayer.com/tools/19miha99-system-monitor-mcp/write-clipboard.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=19miha99-system-monitor-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/19miha99-system-monitor-mcp
