Total PC Control MCP Server

An MCP (Model Context Protocol) server that provides control over your screen, mouse, and keyboard using nut.js.

Local serverstdioMIT

What is the Total PC Control MCP Server?

Total PC Control is an MCP project maintained in the jasondsmith72/tpc-mcpv2 repository. The maintainer describes its purpose as “An MCP (Model Context Protocol) server that provides control over your screen, mouse, and keyboard using nut.js”. Read the project documentation for the complete scope.

Local setup

The project provides a local client configuration using node. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.

Source

Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
capture_screenCapture the entire screen as an image. Supports format (png/jpeg) and quality (jpeg only) parameters.
capture_regionCapture a specific region of the screen. Requires left, top, width, height. Supports format and quality.
get_screen_sizeGet the dimensions (width and height) of the screen.
move_mouseMove the mouse cursor to a specific x, y position.
get_mouse_positionGet the current x, y position of the mouse cursor.
click_mouseClick the mouse at the current position. Optional button (left, middle, right).
click_atClick the mouse at a specific x, y position. Optional button.
double_clickDouble-click the mouse at the current position.
double_click_atDouble-click the mouse at a specific x, y position.
scroll_mouseScroll the mouse wheel. Requires direction (up/down). Optional amount.
drag_mouseDrag the mouse from the current position to a target x, y position.
drag_mouse_from_toDrag the mouse from a startX, startY position to an endX, endY position.
type_textType text at the current cursor position. Requires text.
type_text_with_delayType text with a delay between keystrokes. Requires text. Optional delayMs.
press_keyPress a specific keyboard key. Requires key.
press_key_shortcutPress a keyboard shortcut (combination of keys). Requires keys array.
hold_keyHold down a keyboard key. Requires key.
release_keyRelease a held keyboard key. Requires key.
get_clipboard_textGet text from the clipboard.
set_clipboard_textSet text to the clipboard. Requires text.
copy_selected_textCopy selected text to clipboard and return it (uses Ctrl+C/Cmd+C).
paste_textPaste text at current cursor position (uses Ctrl+V/Cmd+V). Requires text.
get_clipboard_imageGet image from the clipboard (if available) as base64 data.
get_ui_element_infoFinds a UI element within a specified window and returns its properties (Name, AutomationId, ClassName, ControlType, BoundingRectangle, IsEnabled, IsOffscreen,
invoke_ui_element_actionPerforms an action on a specified UI element.

How to install the Total PC Control MCP Server

{
  "mcpServers": {
    "total-pc-control": {
      "command": "node",
      "args": [
        "/ABSOLUTE/PATH/TO/total-pc-control/build/index.js"
      ]
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.