-
Notifications
You must be signed in to change notification settings - Fork 0
Home
AboveColin edited this page Jul 26, 2026
·
1 revision
Drive a homebrew Nintendo Switch from an AI agent, over MCP.
[Atmosphère only] [tested on HOS 22.1.0] [emuMMC and sysMMC]
An Atmosphère sysmodule runs on the console and exposes a control protocol; a Python MCP server on your computer turns it into tools an LLM can call. The agent can see the screen, press buttons, move files, read save data, inspect running processes and search live game memory.
A fresh install is read-only and stays that way until you raise the tier.
| Page | |
|---|---|
| Installation | Get it onto the SD card and connected |
| Configuration | Tiers, tool groups, and every config option |
| Tools | All 102 tools, grouped, with parameters |
| Examples | Working recipes — navigate a menu, find a value, triage a crash |
| Troubleshooting | When it will not connect, or the console goes quiet |
-
Seeing and acting. Screenshots are scaled to ~20% of native size by
default, and
screen_changedreturns an image only if something changed, so watching a UI does not burn tokens. -
Finding things on the console.
fs_findandfs_greprun on the device;list_savesenumerates every save without needing a title ID first. - Live memory. Read a running game without pausing it, and narrow a value search from tens of thousands of candidates to a handful.
-
Not breaking anything. Read-only default,
dry_runon every mutating command, confirmation tokens for destructive ones, and an on-device audit journal.
Stated plainly so you do not lose an evening to it:
- Hardware watchpoints and breakpoints arm but never fire on HOS 22.1.0. Use the narrowing memory search instead.
- USB transport is inert — device side only, no host client, never tested.
- One client at a time. Not one command — one session.
- Installing titles is out of scope and not implemented.
Full detail in the repo's Known limitations.