io.github.BorisGujvin/dittu
io.github.BorisGujvin/dittu · v1.0.0
Turns a phone into a camera+Bluetooth remote so AI assistants can see and control any PC.
MCPremoteno credentialsImages, video & audio
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 12 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 72/100
What it does: 12 tools · 2 read, 2 write · Images, video & audio
Test call get_raw_screenshot: needs a key: tool error: Error executing tool get_raw_screenshot: Missing API key — connect with Authorization: Bearer <key> (1,443 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +6
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +3
- Read/write annotations: 0
- Safe test call: +8
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://app.dittu.org/mcpTools
12 tools listed at last check
take_screenshotCapture 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_gridCapture 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.take_screenshot_with_crosshairCapture 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 cursor lines up with the crosshair (where it SHOget_raw_screenshotCapture 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 corners with get_corners/set_corners.get_cornersGet 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 camera view onto a flat rectangle representing the moset_cornersUpdate 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 perspective — not a rectangle). Call get_cormove_mouseMove mouse cursor to normalized coordinates WITHOUT clicking. nx, ny: float 0.0000–1.0000.clickClick at normalized screen coordinates. nx, ny: float 0.0000–1.0000 where (0,0) = top-left, (1,1) = bottom-right.double_clickDouble-click at normalized screen coordinates.type_textType text on the computer keyboard.keyPress 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])scrollScroll the mouse wheel. delta: number of ticks. Positive = scroll down, negative = scroll up.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.github.BorisGujvin/dittu)