# Touchpoint-Labs/touchpoint [Health: Active]

**Category:** 🤖 Coding Agents  
**Repository:** https://github.com/Touchpoint-Labs/touchpoint  
**GitHub Stars:** 47  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/touchpoint-labs-touchpoint

## Description
Playwright for the entire OS. Gives AI agents the ability to see, find, and interact with UI elements in any desktop application.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "touchpoint": {
    "command": "uvx",
    "args": ["touchpoint-py"],
    "env": {
      "TOUCHPOINT_MODE": ""
    }
  }
}
```

**Requires environment variables:** `TOUCHPOINT_MODE` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What Touchpoint-Labs/touchpoint MCP server does

Touchpoint-Labs/touchpoint MCP server connects MCP-compatible agents to desktop interfaces on Linux, macOS, and Windows. It exposes the accessibility tree rather than relying on pixel scraping or a vision model, so agents can work with element names, roles, states, positions, and stable element IDs.

The server can interact with native applications, browsers, and Electron applications. Chromium and Electron support uses Chrome DevTools Protocol (CDP), while other desktop applications are accessed through the platform's native accessibility system. This makes it applicable to workflows involving tools such as Slack, VS Code, terminals, browsers, and spreadsheet applications, provided the operating system exposes their UI through the supported interfaces.

## How it works

Touchpoint-Labs/touchpoint MCP server supports two operating modes. Vision mode lets an agent use screenshots, element IDs, or coordinates. No-vision mode uses a compact structured snapshot of the active window and allows actions to target element IDs directly. No-vision mode is intended for models that cannot process images, including local models.

The recommended interaction pattern is to orient, locate, act, and verify. An agent can inspect applications or windows, find an element by text and role, perform an action such as clicking or setting a value, then check the resulting state. In no-vision mode, several action responses include indicators for changes such as a new window, focus movement, or no detected change.

## Setup and configuration

Install the Python distribution with Python 3.10 or newer:

```bash
pip install touchpoint-py
```

The package includes the MCP server, platform backends, CDP support, and screenshot functionality. The executable used in the documented Claude Desktop configuration is `touchpoint-mcp`.

Linux deployments require `xdotool` for input and minimizing windows and `wmctrl` for window management and X11 ID mapping. Some Linux systems may also need `python3-gi` and `gir1.2-atspi-2.0`. Windows uses built-in UI Automation APIs. macOS requires Accessibility permission in System Settings under Privacy & Security.

Set `TOUCHPOINT_MODE=no-vision` to select structured, non-image interaction. The default is `vision` mode. Claude Desktop can load the server through its MCP configuration file, with platform-specific locations documented for macOS and Windows. The README also identifies Claude, Cursor, and other MCP-compatible clients as supported consumers.

## Tools and capabilities

Touchpoint-Labs/touchpoint MCP server provides tools for:

- Listing applications and windows, taking screenshots, and reading structured snapshots.
- Finding elements, retrieving an element, and reading text.
- Clicking, focusing, invoking actions, setting text or numeric values, and selecting text.
- Typing text, pressing keys, moving the mouse, and scrolling.
- Activating, minimizing, maximizing to fullscreen, closing, moving, and resizing windows where the selected mode supports those operations.
- Waiting for elements, applications, or windows to appear.
- Comparing snapshots in no-vision mode and running diagnostics.

Element references can be represented by returned objects or ID strings. Results can be formatted as flat text, a tree, or JSON when using the underlying Python library.

_Full upstream README: https://allmcps.com/mcp/touchpoint-labs-touchpoint/readme_

