Human Input MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| human_scrollC | One explicit wheel operation in Windows units, multiples of 120 up to 1200. No pixel/line inference. |
| human_keyC | One allowlisted editing/navigation chord. Enter may submit. Clipboard actions require dedicated tools. |
| human_copyC | Explicit Ctrl+C using the system clipboard; contents never inspected. |
| human_cutC | Explicit Ctrl+X; may modify content. No clipboard content inspection. |
| human_pasteC | Explicit Ctrl+V; may modify content. No clipboard content inspection. |
| human_activateC | Distinct guarded safe client click. Caller must freshly confirm the safe area does not edit, navigate or submit. Reobserve before any following input. |
| human_pauseD | Pause with cleanup barrier, or latch admission while idle. |
| human_resumeC | Explicit checked continuation. Fresh native observation follows pause cleanup. Empty arguments only clear idle pause; uncertain effects require exact external outcomes. |
| human_statusB | Readonly operation status and pending safety events. Does not resume or cancel. |
| human_eventsC | Read bounded event history. Discovery is delayed; agent push is unsupported. |
| human_event_ackC | Acknowledge this MCP caller receipt using the event token. Never resumes input or proves model receipt. |
| human_capabilitiesB | Report human mode and truthful limits. This service cannot see chat messages, page contents, or calls to other input tools. |
| human_modeA | Query current mode with empty arguments, or explicitly enable/disable human input. Every process starts disabled; a mode change cancels current work before returning. |
| human_observeA | Read native target identity, client geometry, focus, foreground, DPI and cursor. Does not capture images, focus a window, or cancel reading. |
| human_target_updateC | Cancel current work with a barrier, then observe and replace the selected target. Never focuses or moves a window. |
| human_input_planA | Preview a bounded plan without input or cancellation. Typing previews are pure and need no hwnd; pointer previews observe explicit hwnd for client bounds. Page freshness is the caller responsibility. |
| human_mouse_moveA | Move from the observed cursor through a bounded human-style path; waits for completion. The cursor must already be inside the target client (use human_activate to enter). Cancels background reading first. No auto focus. |
| human_mouse_clickA | Move to a client point and pulse the left button once; waits for completion. The cursor must already be inside the target client. Caller must freshly establish the intended UI target. |
| human_mouse_dragA | Drag with the left button from the current observed cursor to a client point; waits for completion. Does not pre-position the cursor. |
| human_typeA | Type printable text using bounded character pulses and optional corrections; no paste, Enter, or arbitrary chords. IME change needs force_ime_off=true; remote delivery is not verified. |
| human_stopA | Cancel current or pending input and wait until no future injections are possible. Does not return the cursor or release user-owned input. |
| reading_startA | Begin autonomous pure pointer traversal of explicit client regions and return promptly. The cursor must already be inside the target client. No buttons or keys. New input, stop, target or mode changes cancel it; chat messages cannot. |
| reading_statusB | Read reading operation status without cancelling it. deliveryVerified=false; no page or reading-comprehension detection. |
| reading_cancelB | Cancel reading with a no-future-injection barrier. An omitted operation_id selects the active reading operation. |
| timer_attachC | Attach an external-observation timer to an explicit target and section; never reads screen pixels or cancels input. |
| timer_prepareC | Prepare a bounded observation ticket before the caller reads a timer through an external source. |
| timer_calibrateB | Anchor a timer using a prepared ticket and caller-observed seconds. Observed expiry requires explicit expired_observed state. |
| timer_statusB | Return the observed timer anchor and an uncertain estimate separately. Querying never cancels input. |
| timer_invalidateB | Invalidate a timer estimate after known external changes; does not inspect or mutate a page. |
| timer_detachC | Detach one external-observation timer without touching input. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 30 tools
The tools are grouped into human input, reading, and timer domains, and descriptions clarify many boundaries. However, several similar safety/status/cancel tools exist (human_stop, human_pause, human_mode, human_status, reading_cancel, timer_invalidate/detach), and input tools like human_activate, human_mouse_click, human_key, and human_type could still be confused without careful reading.
Names use consistent snake_case and clear domain prefixes: human_, reading_, and timer_. Most follow prefix_action or prefix_noun patterns, with minor deviations such as human_key and human_capabilities.
Thirty tools is heavy for this server, even accounting for the safety, reading, and timer subdomains. The surface feels over-granular, with many specialized status, cancellation, and timer tools that could be consolidated.
The surface covers the core human-input lifecycle: observation, targeting, pointer and keyboard actions, pause/resume/stop, event history, reading traversal, and timer coordination. Some gaps remain, such as no explicit right-click/double-click or window-focus tool, but those may be intentionally out of scope.