Docs › Mobile apps
Real phones
A dev tunnel, so a phone on any network reaches the server on your machine.
Phones: a dev tunnel#
The mobile SDKs (.NET MAUI, SwiftUI, Android, React Native, Flutter) reach notato dev on localhost, which a simulator shares with your machine but a phone does not. notato dev --tunnel (or NOTATO_TUNNEL=1) also puts the server behind a Microsoft dev tunnel, a public https URL that forwards to it:
devtunnel user login # once; the devtunnel CLI is `brew install --cask devtunnel`
claude mcp add notato -- npx notato dev --port 4748 --tunnel # or codex mcp add …, or the args in your agent's config
- It makes the tunnel the first time and reuses it after, so the URL stays the same (a tunnel unused for 30 days expires, and a new one is made). The tunnel runs while the server does.
- The tunnel allows anonymous access, so a phone needs no Microsoft sign-in; the server answers anything that comes through it only with a device token, made once and kept. Requests from your own machine are unchanged.
- The token is built into every debug build of your app, so whoever has a build has it, and it reaches only what an app does: its notes, their screenshots, replies and picks, its events, test bundles and the relay's answers. Settings, webhooks (and their test), creating, renaming or deleting projects, and tokens are refused through the tunnel (
403), token or not, and so is acting as an agent; so is the MCP. The same goes for anything that comes through another proxy. Change them on the board or with the CLI on your machine. - The URL and the token are written to
.notato/device.json. The .NET MAUI package reads it into debug builds, and then a phone and the Android emulator use the tunnel and the iOS simulator localhost, with nothing to configure. Keep.notato/out of git: the token is a key to your server. - Only the process that runs the server hosts its tunnel: give a project that needs one its own port, so it is not attached to another project's
notato dev. - Or run one server for everything, apart from any agent session:
npx notato --tunnel --dir ~/.notatoruns just the server until it is stopped (notato dev --standaloneis the same), and every session's ownnotato devattaches to it on the same port, so the board shows every project. Agents can also connect to its/mcpdirectly. Point an app's build at its folder (<NotatoDataDirectory>, for .NET MAUI).