taw-computer
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DOCKER_CPUS | No | CPUs per container | 2 |
| DOCKER_IMAGE | No | Base image | taw-computer-base |
| SANDBOX_TYPE | No | auto / docker / firecracker | auto |
| MAX_SANDBOXES | No | Max concurrent VMs | 3 |
| DOCKER_MEMORY_MB | No | RAM per container | 4096 |
| DESKTOP_RESOLUTION | No | Screen resolution | 1280x720 |
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 |
|---|---|
| vm_createA | Create a new sandbox (isolated Ubuntu mini-computer with shell, Chrome + CDP, VNC, xfce4). IMPORTANT: Before creating, check if the user has saved snapshots by looking at the |
| vm_listA | List active sandboxes created in this MCP session. |
| vm_destroyA | Destroy a sandbox and free its ports. By default the VM filesystem is saved as a snapshot so recreating with the same label resumes where you left off. Set save_snapshot to false to destroy without saving (e.g. when the VM contains sensitive data the user does not want persisted). Use vm_reset to also delete any previously saved snapshot. |
| vm_resetA | Reset a VM to a clean state. Destroys the current VM AND deletes its saved snapshot, so the next vm_create with the same label starts fresh from the base image. |
| vm_restartA | Restart a sandbox. Stops and starts the container — all files, databases, and installed packages are preserved. Only processes are restarted. |
| vm_statusA | Get resource usage (CPU, memory, disk, uptime, top processes) and port mappings for a sandbox. Use to diagnose OOM, high CPU, or check available disk space. |
| vm_renameA | Rename a running VM by changing its label. The label is used for snapshot naming — renaming does NOT migrate existing snapshots (they stay under the old label). |
| snapshot_listA | List all saved snapshots. Each snapshot can be resumed by calling vm_create with the same label and use_snapshot=true. |
| snapshot_deleteA | Delete a saved snapshot by label. This frees disk space and means the next vm_create with this label will start fresh. |
| execA | Run a shell command inside the sandbox. Returns combined stdout+stderr. Use for any CLI work: git, npm, pip, apt, curl, etc. |
| fs_writeB | Write content to a file inside the sandbox (creates parent dirs as needed). |
| fs_readC | Read a file inside the sandbox. |
| fs_editA | Replace a string in a file. Fails if old_string is not found. Set replace_all=true to replace every occurrence. |
| fs_listA | List files in a directory (ls -la, or recursive find with depth 3). |
| fs_searchB | grep -rn for a pattern in a directory. |
| code_searchA | Search codebase content using ripgrep. Much faster and smarter than fs_search — supports regex, file type filters, context lines, and higher result limits. |
| desktop_screenshotA | Take a JPEG screenshot of the sandbox desktop (xfce4) and return as image content. |
| desktop_clickC | Click at (x,y) on the sandbox desktop. button=1 left, 2 middle, 3 right. |
| desktop_typeC | Type text into the focused window via xdotool. |
| desktop_keyC | Press a key combo via xdotool, e.g. "Return", "ctrl+l", "alt+Tab". |
| desktop_scrollD | Scroll at (x,y). |
| desktop_dragB | Drag from (from_x, from_y) to (to_x, to_y) on the sandbox desktop. |
| browser_openB | Open Chrome inside the sandbox (or navigate the existing tab) at the given URL, then return a JPEG screenshot. |
| browser_closeC | Kill all Chrome processes inside the sandbox. |
| browser_navigateB | Navigate the sandbox Chrome to a URL via CDP (Playwright). Returns final URL and page title. |
| browser_snapshotA | Inject numbered overlays on every visible interactive element (Set-of-Mark prompting), screenshot the page, return both the screenshot and element refs. Use browser_click_ref / browser_type_ref to interact. |
| browser_click_refC | Click an element by its ref number from the most recent browser_snapshot. |
| browser_type_refB | Focus an element by ref and type text into it. Set submit=true to press Enter after. |
| browser_extractA | Read text content from the page. With selector: returns innerText of matching elements. Without: full page text. |
| browser_evalC | Run a JavaScript expression in the page context and return the result. |
| browser_wait_forB | Wait until a condition holds (selector visible, text appears, or network idle). |
| browser_console_logsC | Return captured browser console logs (errors, warnings, info) from the current page. |
| browser_network_errorsC | Return captured network request failures (404s, CORS errors, etc.). |
| browser_run_testB | Run a Playwright test script against the browser inside a VM. Has |
| web_searchC | Search Google and return up to 8 organic results as {title, url, snippet}. |
| file_uploadB | Upload a file into a VM. Pass content as base64 string (max 50MB). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tawgroup/taw-computer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server