mcp-computer-use
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MODEL | No | Ollama model name (alias for MCP_CU_MODEL) | gpt-oss:20b |
| OLLAMA_URL | No | Ollama server URL (alias for MCP_CU_OLLAMA_URL) | http://127.0.0.1:11435 |
| MCP_CU_MODEL | No | Ollama model name | gpt-oss:20b |
| MCP_CU_CONFIG | No | Path to TOML config file | |
| MCP_CU_MAX_CHARS | No | Max characters of window text to extract | 2000 |
| MCP_CU_OLLAMA_URL | No | Ollama server URL | http://127.0.0.1:11435 |
| MCP_CU_HEALTH_HOST | No | HTTP health host | 127.0.0.1 |
| MCP_CU_HEALTH_HTTP | No | Enable HTTP health endpoint | false |
| MCP_CU_HEALTH_PORT | No | HTTP health port | 8765 |
| MCP_CU_MIN_FREE_MB | No | Minimum free RAM in MB before unloading model (0 = off) | 2048 |
| MCP_CU_TIMEOUT_MAX | No | Maximum timeout in seconds | 60 |
| MCP_CU_TIMEOUT_MIN | No | Minimum timeout in seconds | 8 |
| MCP_CU_AGENT_CU_CMD | No | Command for agent-cu | agent-cu |
| MCP_CU_MEMORY_WATCH | No | Enable background memory watcher | true |
| MCP_CU_SESSIONS_DIR | No | Directory for session files | <project>/.sessions |
| MCP_CU_TIMEOUT_BASE | No | Base timeout in seconds | 10 |
| MCP_CU_COLD_LOAD_EXTRA | No | Extra timeout when model is cold-loading | 45 |
| MCP_CU_KEEP_ALIVE_IDLE | No | Keep-alive for idle single call | 3m |
| MCP_CU_AGENT_CU_TIMEOUT | No | Timeout for agent-cu in seconds | 20 |
| MCP_CU_AUTOSTART_OLLAMA | No | Enable Ollama auto-start (local URL only) | true |
| MCP_CU_SNAPSHOT_DETAILS | No | Enable extra agent-cu snapshot for Claude details | true |
| MCP_CU_AUTOSTART_TIMEOUT | No | Ollama auto-start timeout in seconds | 10 |
| MCP_CU_SESSION_TTL_HOURS | No | Session file TTL in hours | 24 |
| MCP_CU_KEEP_ALIVE_SESSION | No | Keep-alive for active session | 10m |
| MCP_CU_MAX_QUESTION_CHARS | No | Max characters for question | 300 |
| MCP_CU_SYSTEM_PROMPT_FILE | No | Path to system prompt file | bundled prompts/system_prompt.md |
| MCP_CU_TIMEOUT_PER_1K_CHARS | No | Timeout addition per 1000 characters | 4 |
| MCP_CU_MEMORY_WATCH_INTERVAL | No | Memory watcher interval in seconds | 30 |
| MCP_CU_SESSION_ACTIVE_MINUTES | No | Minutes to consider a session active | 10 |
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 | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| look_at_screenA | Ask ONE short English question about what a window on this computer shows; get short JSON back
(windows_seen, status, summary, confidence, details, model_used, duration_seconds, memory_mb).
|
| pingA | Heartbeat: checks that this bridge works end to end. Confirms the server is up, makes sure the local Ollama is reachable (auto-starts it if needed) and asks the model for 'pong'. No screen reading. Returns {ok, server, ollama, model_reply_ok, model, seconds, cold, error?}. The first ping may take 30-50 s if the model is cold (not loaded); later pings take a few seconds. |
| release_modelA | Unload the local model now and return freed memory_mb. Call it at the end of your task (after your last look_at_screen) so the RAM is free again. Safe to call when nothing is loaded. |
| healthA | Check the backend before/after errors: Ollama reachable, model pulled and loaded, memory, free RAM, current keep_alive policy, agent-cu installed. Call this first if look_at_screen returns OLLAMA_UNREACHABLE or MODEL_NOT_FOUND. |
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 4 tools
look_at_screen and release_model are clearly distinct, and ping vs health are separated by intent (lightweight heartbeat vs detailed backend diagnostic). However, both ping and health check Ollama reachability and model status, so an agent could reasonably hesitate between them in a failure scenario.
Naming mixes bare nouns (ping, health) with verb_noun forms (look_at_screen uses verb_preposition_noun, release_model is verb_noun). It stays readable, but there is no single predictable pattern across the four tools.
Four tools is a reasonable, tightly scoped set for a read-only screen-inspection bridge, with three of them being support/lifecycle helpers. It is on the thin side since only one tool performs the core action, but nothing is redundant filler.
For a server literally named 'computer-use', the surface is observation-only: no clicking, typing, window enumeration, or targeted reads beyond a single look_at_screen. The read-only lifecycle (ping, health, release_model) is well covered, but the domain name promises interaction the tool set does not deliver.