An MCP server that lets coding agents drive a GNOME on Wayland desktop: agents, jobs, tmux, shell, files, screen, keyboard and pointer.
pcbridge exposes 23 tools with basic schemas and descriptions, but significant gaps limit production readiness. Most tools have descriptions (good), but many lack parameter-level detail. Schemas are present but sparse, many parameters missing type constraints, enums, or validation guidance. Error handling is minimal; most tools lack recovery guidance. Tool naming is generally clear (verb_noun pattern), but composition issues exist: ui_click, ui_set_text, and mouse overlap in responsibility; desktop_unlock/lock are permission-gating but lack confirmation patterns. No tool annotations (readOnlyHint, destructiveHint). Output schemas are undocumented. This is a typical community server, functional but not production-grade.
Run a visual agent on a task with a specific model and effort level
Run a sequence of desktop actions at once
Revoke desktop control permission
Request permission to control the desktop (screen, keyboard, pointer)
Read a file
Write to a file
Find text on screen using OCR
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). LLMs cannot distinguish safe reads from destructive writes without explicit hints. Tools like file_write, shell_run, desktop_unlock should be marked destructiveHint=true.
Overlapping tool responsibilities. ui_click, ui_set_text, mouse, and window_focus all manipulate the desktop but lack clear composition. ui_click and mouse both move/click; ui_set_text and ui_click both interact with UI. Agents cannot reason about which to use.
Parameter descriptions are sparse or missing. tmux_start, tmux_send, tmux_keys, ui_set_text, computer_batch, window_focus, mouse lack detailed parameter guidance. LLMs cannot infer valid values or constraints.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | <=2025-11-25 | v2 |
Check the status of a running or completed job
List available coding agents configured on this machine
Control the mouse pointer
Capture a screenshot of the desktop
Get information about connected monitors and screen layout
Run a shell command
Inspect desktop backend support and authorization (read-only)
Capture output from a tmux session
Send key sequences to a tmux session
Send commands to a tmux session
Start a tmux session
Click on a UI element or coordinate
Read the screen as an accessibility tree (text representation of UI elements)
Set text in a UI element
Wait for text to appear on screen using OCR
Bring a window to focus
No output schemas documented. Tools return data but LLMs cannot plan downstream calls without knowing response structure. E.g., list_agents, job_status, screen_capture, system_capabilities lack documented return types.
Destructive operations lack confirmation or dry-run patterns. file_write, shell_run, desktop_unlock, and agent_run can cause irreversible changes but offer no confirmation step. Agents may accidentally delete files or run harmful commands.