Thumbly: connect an MCP agent to a real iPhone from your Mac
I'm the maker of Thumbly , a free, open-source Mac app that lets MCP agents see and operate a real iPhone. Version 0.1.0 is available now. The short demo below shows Claude Code using it. // Detect dark theme var iframe = document.getElementById('tweet-2114497140542283954-678'); if (document.body.className.includes('dark-theme')) { iframe.src =…
Thumbly is a free, open-source Mac application that enables MCP agents to interact with a real iPhone from a Mac computer. This version 0.1.0 release allows users to perform various actions such as screenshots, taps, swipes, long-presses, text entry, hardware button presses, app launching, and retrieve device information.
The iPhone connects to the Mac over USB or Wi-Fi after the first USB pairing. The service communicates with Apple's CoreDevice services via pymobiledevice3, and no jailbreak is required. The interaction is managed through three components: the MCP client, the Thumbly service on the Mac, and the iPhone itself.
The flow involves the MCP client connecting to the Thumbly service on the Mac, which then approves or inspects actions before pausing the connection. Each new client requires approval in the Mac app and doesn't necessitate individual confirmation for each tap. The device connection does not go through a cloud relay, and the choice of agent does impact the results, as a cloud-backed agent can access the screenshots sent back to its MCP client.
To try Thumbly with Claude Code, users need macOS 14 or later, an iPhone with iOS 17.4 or later, a USB data cable, and Apple's Command Line Tools. Installation involves downloading the Thumbly app and setting up the Python service. After connecting and unlocking the iPhone, users must trust the connection, enable Developer Mode, and restart the phone. The initial setup can take a few minutes, and users should add the local MCP endpoint to Claude Code before starting a task.
The repository includes the SwiftUI Mac app, Python service, Python SDK, and documentation. The Mac app and SDK are licensed under Apache-2.0, while the device service uses GPL-3.0 due to its linkage with pymobiledevice3. There's also a simulated-device mode for development without an iPhone. Feedback on pairing, client authentication, and workflows that fail is encouraged, and when reporting issues, users should include their macOS and iOS versions, USB or Wi-Fi connection type, and the steps that led to the problem.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.