io.github.BorisGujvin/dittu is an MCP server with 12 tools an agent can call, among them click, double_click, get_corners. It answers at https://app.dittu.org/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 6 of 6 times since 11 September 2026; the last check, on 19 October 2026, succeeded.
Turns a phone into a camera+Bluetooth remote so AI assistants can see and control any PC.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
click | Click at normalized screen coordinates. nx, ny: float 0.0000–1.0000 where (0,0) = top-left, (1,1) = bottom-right. Inputs: nx, ny |
double_click | Double-click at normalized screen coordinates. Inputs: nx, ny |
get_corners | Get the phone's current screen-corner calibration. Returns {"tl": [nx,ny], "tr": [nx,ny], "br": [nx,ny], "bl": [nx,ny]} — each corner is a normalized point (0.0–1.0) in the RAW camera frame, defining the perspective warp that maps the camer |
get_raw_screenshot | Capture the RAW camera frame — no perspective warp, no crop to the calibrated screen quad. Use this to see exactly what the camera sees before any correction, e.g. when troubleshooting why take_screenshot looks wrong, or before adjusting co |
key | Press a key combination. modifiers bitmask: LCtrl=1, LShift=2, LAlt=4, LWin=8 Common keycodes: Enter=40, Escape=41, Tab=43, Space=44, F4=61, PageDown=78, PageUp=75, Win=227 Examples: Alt+F4 → key(4, [61]) Ctrl+W → key(1, [26]) Inputs: modifiers, keycodes |
move_mouse | Move mouse cursor to normalized coordinates WITHOUT clicking. nx, ny: float 0.0000–1.0000. Inputs: nx, ny |
scroll | Scroll the mouse wheel. delta: number of ticks. Positive = scroll down, negative = scroll up. Inputs: delta |
set_corners | Update the phone's screen-corner calibration. Each corner is [nx, ny] normalized 0.0–1.0 in the raw camera frame. tl/tr/br/bl = top-left/top-right/bottom-right/bottom-left of the monitor as seen by the camera (an arbitrary trapezoid due to Inputs: tl, tr, br, bl |
take_screenshot | Capture the current screen via the Dittu phone camera. Returns a JPEG image. Call this to see what's on screen before acting. |
take_screenshot_with_crosshair | Capture the screen, crop tightly around (nx, ny), zoom in, and draw a crosshair at exactly that expected position. Use this for screen-corner calibration: move_mouse(nx, ny) near a screen edge, then call this to see whether the actual curso Inputs: nx, ny, zoom |
take_screenshot_with_grid | Capture the screen and overlay a coordinate grid. step: grid spacing (default 0.1, use 0.05 for finer grid on small UI elements). Returns a JPEG image with grid drawn on top. Inputs: step |
type_text | Type text on the computer keyboard. Inputs: text |
Every block below points at https://app.dittu.org/mcp. Pick your client and copy.
claude mcp add --transport http io-github-borisgujvin-dittu https://app.dittu.org/mcp
{
"mcpServers": {
"io-github-borisgujvin-dittu": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://app.dittu.org/mcp"]
}
}
}{
"mcpServers": {
"io-github-borisgujvin-dittu": {
"url": "https://app.dittu.org/mcp"
}
}
}{
"servers": {
"io-github-borisgujvin-dittu": {
"type": "http",
"url": "https://app.dittu.org/mcp"
}
}
}{
"context_servers": {
"io-github-borisgujvin-dittu": {
"url": "https://app.dittu.org/mcp"
}
}
}{
"mcpServers": {
"io-github-borisgujvin-dittu": {
"serverUrl": "https://app.dittu.org/mcp"
}
}
}{
"mcpServers": {
"io-github-borisgujvin-dittu": {
"url": "https://app.dittu.org/mcp"
}
}
}name: io.github.BorisGujvin/dittu
version: 0.0.1
schema: v1
mcpServers:
- name: io.github.BorisGujvin/dittu
type: streamable-http
url: https://app.dittu.org/mcp{
"mcpServers": {
"io-github-borisgujvin-dittu": {
"httpUrl": "https://app.dittu.org/mcp"
}
}
}{
"mcpServers": {
"io-github-borisgujvin-dittu": {
"type": "http",
"url": "https://app.dittu.org/mcp"
}
}
}{
"mcpServers": {
"io-github-borisgujvin-dittu": {
"url": "https://app.dittu.org/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fapp.dittu.org%2Fmcp&type=streamable_http&id=io-github-borisgujvin-dittu&name=io.github.BorisGujvin/dittu
It answered our last check on 19 October 2026 in 230 ms. Over 6 checks since 11 September 2026 it answered 6. Status here comes from Neuronto's own probes, not from the publisher.
12, as returned by the server's own tools/list on 12 September 2026: click, double_click, get_corners, get_raw_screenshot, key, move_mouse, scroll, set_corners, and 4 more.
It answered our last check on 19 October 2026 in 230 ms. Over 6 checks since 11 September 2026 it answered 6.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://app.dittu.org/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: io.github.borisgujvin. Endpoint host: app.dittu.org. ARD identifier: urn:air:io.github.borisgujvin:mcp:dittu.
First indexed 10 September 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.