Classic Mac Hardware MCP
MCP server for deploying to and testing on real Classic Macintosh hardware
Classic Mac Hardware MCP is a Model Context Protocol server that lets Claude Code deploy, test, and manage software on real Classic Macintosh computers. It connects to each Mac over plain FTP via RumpusFTP, and can launch binaries remotely using Retro68's LaunchAPPL. I built it because I got tired of manually copying files to three different Macs every time I changed a line of code.
It started as part of the PeerTalk repo, but once CSend and BomberTalk needed the same deployment workflow I pulled it out into its own project. All three repos now reference it as a shared MCP server.
How it fits in
The MCP server sits alongside the Classic Mac software stack. It doesn't run on the Macs themselves. It runs on my Linux box and talks to them over the network.
Tools
| Tool | Protocol | Purpose |
|---|---|---|
list_machines | Config | Show configured machines and their capabilities |
test_connection | FTP + TCP | Verify FTP and LaunchAPPL connectivity |
list_directory | FTP | Browse files on a Mac (accepts / or : paths) |
upload_file | FTP | Upload with auto-mkdir for parent directories |
download_file | FTP | Download files to local filesystem |
delete_files | FTP | Delete files or directories |
execute_binary | LaunchAPPL | Run a compiled binary on the Mac remotely |
Features
- Plain FTP for RumpusFTP compatibility (passive mode, rate-limited)
- Remote binary execution via Retro68's LaunchAPPL
- Machine config hot-reloads when the JSON file changes
- Mac-style colon path normalisation (accepts Unix or Mac separators)
- Serialised LaunchAPPL execution to prevent port conflicts
- Password environment variable expansion for credentials
- Log collection from PT_Log files on each machine
Tech Stack
Used by
The MCP server is referenced in the .mcp.json of each Classic Mac project:
- PeerTalk - networking SDK
- CSend - peer-to-peer chat
- BomberTalk - networked Bomberman