Skip to main content
Glama
SebastianBaltes

Computer Use MCP Server

Computer Use MCP Server for Claude Code

An MCP (Model Context Protocol) server that gives Claude Code the ability to see and interact with your Linux desktop — take screenshots, click, type, scroll, drag, and more.

Built on top of xdotool, scrot, and ImageMagick. Designed to run as a stdio MCP server inside Claude Code.

Features

  • Screenshots — full desktop capture, automatically scaled to fit API constraints

  • Mouse control — left/right/middle/double/triple click, drag, move, scroll

  • Keyboard input — type text, press key combinations, hold keys

  • Screen zoom — capture a region at full (unscaled) resolution for reading small text

  • Display info — query resolution, scale factor, and coordinate space

All coordinates use a scaled coordinate space that maps to the actual screen resolution. The server handles the conversion transparently.

Prerequisites

  • Linux with X11 (Wayland is not supported)

  • Python >= 3.10

  • System packages:

    sudo apt install xdotool scrot imagemagick x11-utils

    Note: xdpyinfo is part of the x11-utils package on Debian/Ubuntu — there is no standalone xdpyinfo package.

Installation

git clone https://github.com/SebastianBaltes/claude_code_computer_use_mcp.git
cd claude_code_computer_use_mcp
python3 -m venv .venv
source .venv/bin/activate
pip install -e .

Claude Code Configuration

The easiest way is to use the Claude Code CLI:

claude mcp add computer-use --scope user -- /path/to/claude_code_computer_use_mcp/.venv/bin/python -m computer_use_mcp.server

Replace /path/to/ with your actual clone path. Then restart Claude Code — the computer_* tools will be available automatically.

Alternatively, add the server manually to ~/.claude.json under mcpServers:

{
  "mcpServers": {
    "computer-use": {
      "type": "stdio",
      "command": "/path/to/claude_code_computer_use_mcp/.venv/bin/python",
      "args": ["-m", "computer_use_mcp.server"],
      "env": {}
    }
  }
}

Note: The valid --scope values are local, user, project, dynamic, enterprise, claudeai, and managed. Use user for a personal installation available across all projects.

Available Tools

Tool

Description

computer_screenshot

Capture the full desktop

computer_left_click

Left-click (with optional modifier key)

computer_right_click

Right-click

computer_double_click

Double-click

computer_triple_click

Triple-click (select line)

computer_middle_click

Middle-click

computer_mouse_move

Move cursor without clicking

computer_left_click_drag

Click and drag

computer_type

Type a text string

computer_key

Press a key or key combo (e.g. ctrl+s)

computer_scroll

Scroll in any direction

computer_hold_key

Hold a key for N seconds

computer_wait

Pause for N seconds

computer_cursor_position

Get current cursor position

computer_zoom

Capture a screen region at full resolution

computer_display_info

Get display resolution and scale info

How It Works

The server detects the screen resolution via xdpyinfo and calculates a scale factor to keep screenshots within Anthropic's API image constraints (max 1568px long edge, max 1.15M total pixels). All coordinates passed by Claude are in this scaled space and get converted to actual screen coordinates before executing actions.

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

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/SebastianBaltes/claude_code_computer_use_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server