Poki MCP
Enables Poki Agent to run as an iMessage channel, allowing it to receive and respond to messages through iMessage after an authorized channel is configured.
Lets agents control a real iPhone running iOS by interacting with apps and websites on the device, including physical iPhone and simulator-based automation.
Enables Poki Agent to run as a Telegram channel, allowing it to receive and respond to Telegram messages after an authorized channel is configured.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Quick start
Let your agent install it. Copy this to your agent:
Install https://github.com/JosssphZhou/poki following its root AGENTS.md, including the MCP skill, and stop whenever you need me to act.Poki MCP. Already using Claude Code, Codex, or another MCP client? Connect Poki MCP and use your own subscription. No extra model account needed.
Start the server and keep it running:
git clone https://github.com/JosssphZhou/poki.git
cd poki
./bin/setup
npm startRequires macOS 15 or later, full Xcode, Rust, Node.js 24+, and ffmpeg. ./bin/setup checks for missing dependencies. The initial build takes a few minutes.
Poki targets macOS. For Linux, see the community port poki-for-linux (#16), maintained outside this repo.
Prebuilt macOS arm64 package
Download poki-v0.1.1-macos-arm64.tar.gz from the release and run:
tar -xzf poki-v0.1.1-macos-arm64.tar.gz
cd poki-v0.1.1
npm ci --no-audit --no-fund
npm startThe package includes the native bridge and idevice tools. You do not need Rust or ./bin/setup. You still need macOS on Apple Silicon, full Xcode, Node.js 24+, Python 3, and ffmpeg. Register your MCP client and install the optional Agent as described below.
In another terminal, from the same directory, register the MCP server:
claude mcp add --scope user poki-mcp -- node "$PWD/src/stdio.mjs" # Claude Code
codex mcp add poki-mcp -- node "$PWD/src/stdio.mjs" # CodexPoki Agent. For Poki's standalone terminal agent or messaging channels, keep npm start running and open another terminal in the same directory. Install the agent, add its command to this terminal's path, and sign in:
npm ci --prefix agent
export PATH="$PWD/bin:$PATH"
poki login
poki statusPoki Agent uses GPT-6.1 Terra (gpt-6.1-terra) with low reasoning by default. We recommend keeping it: it is the fastest setup we have tested for phone tasks. Override it with POKI_AGENT_MODEL; see Run Poki Agent.
For a physical iPhone, pair it with your Mac over USB first. See Physical iPhone setup.
Update with ./bin/poki update. Set POKI_NO_UPDATE_CHECK=1 to disable the daily anonymous GitHub release check. See Update for the request URL, restart steps, and prebuilt packages.
Related MCP server: iPhone MCP
Try a task
With Poki Agent, one connected iPhone is selected automatically. With multiple devices, add --device '<device UUID>'.
node bin/call.mjs list_devices # Find your device UUID
poki "Search esp32 in Chrome and summarize the top result"Note: Poki controls your real iPhone. If you ask it to send messages or make payments, it will. Screen contents are sent to your configured model service.
Gets faster with use: Poki Agent remembers past tasks and runs them faster on repeat.
Channels: After configuring an authorized channel, start it with poki imessage or poki telegram. See Poki Agent for setup.
MCP clients: Claude Code, Codex, and any client supporting mcpServers JSON.
Physical iPhone support has been verified only on iPhones using the Chinese interface. Physical devices support portrait orientation only. App container export and direct links to Settings subpages are unavailable. See verification and known limits.
Docs
Topic | Read |
Installation, other MCP clients, and troubleshooting | |
Poki Agent, models, iMessage, and Telegram | |
MCP tool reference | |
Environment variables and sessions | |
USB pairing, Developer Mode, and Wi-Fi | |
Test results, known limits, and disclaimers | |
Bridge architecture | |
Roadmap |
Roadmap
Star History
Core contributors
Thanks
Thanks to everyone who opened an issue or pull request. Your feedback and fixes make Poki better.
Disclaimer
Poki is an independent open source project. It is not affiliated with, or endorsed by, Apple, OpenAI, or the makers of any app or website it operates. iPhone is a trademark of Apple Inc.
Automating third-party apps and websites may violate their terms of service. Decide for yourself whether to use Poki with a given service. You are responsible for what it does on your device and accounts, including messages it sends, changes it makes, and any account restrictions that result.
Poki is provided "as is", without warranty, as set out in the AGPL-3.0 license.
License
Poki is open source under the AGPL-3.0-only license.
Copyright (c) 2026 Joseph Zhou and contributors. Open-source dependencies retain their respective licenses; see THIRD_PARTY_NOTICES.md. To contribute, see CONTRIBUTING.md.
Acknowledgments
This server cannot be deployed
Maintenance
Related MCP Connectors
Let your AI agent control real iPhones: screenshots, tap, swipe, type and open apps.
Give an AI agent an iPhone to see, tap and type on over MCP. Free early access (Simulator).
Give your AI agent a memory and body on your iPhone: set alarms, ring your phone, over MCP.
Let AI agents control Android and iOS devices on Mobilerun Cloud: screen, input, apps, workflows.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI to control iOS simulators through the MCP protocol. Supports device management, UI automation, and network interception including screenshot capture, text input, and HTTP request mocking.-
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to control real iPhones and simulators on macOS, allowing for UI interaction, testing, and automation.65 npm95MIT
- AlicenseNot gradedqualityAmaintenanceAn MCP server that lets AI agents control a real iPhone via macOS iPhone Mirroring, enabling screen observation, taps, typing, and gestures.283Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to operate a real iPhone from a Mac by reading the screen over USB and sending taps, swipes, typing, and app launches over Bluetooth, with every action returning a fresh screenshot so the agent can verify its work. Runs as a local MCP server, so agents can test iOS apps on physical devices and automate everyday phone tasks.43 npm10MIT