Provides comprehensive control of Commodore 64 Ultimate Computer hardware via REST API, including running SID/MOD/PRG/CRT files, controlling floppy drives, managing machine state (reset, pause, power), reading/writing C64 memory, configuring device settings, creating disk images, and streaming video/audio/debug output on U64 devices.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Commodore 64 Ultimate Computer MCP Serverplay the SID file 'monty_on_the_run.sid' from the filesystem"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Commodore 64 Ultimate MCP Server
Control your Commodore 64 Ultimate device with AI. This MCP server lets Claude and other AI assistants interact with your C64 Ultimate hardware over your local network.
What Can You Do?
Create and Debug Programs - Claude can write C64 BASIC or machine code programs, run them, capture the screen to see the results, inspect memory, and iteratively fix issues. Describe what you want and watch Claude develop it on real hardware.
Write and Run BASIC Programs - Ask Claude to write a BASIC program and it will tokenize the code, inject it directly into C64 memory, and run it. No typing required.
Play Classic Games and Demos - Load and run .PRG programs or .CRT cartridge images from your device's storage or upload them directly.
Listen to SID Music - Play classic C64 SID tunes or Amiga MOD tracker files. Just point to a file on your device or upload one.
See What's on Screen - Capture screenshots from any graphics mode: text, multicolor, hires bitmap, and more. Claude can see what's happening and respond accordingly.
Type and Control - Send keystrokes, navigate menus, and interact with running programs through the keyboard buffer.
Manage Floppy Drives - Mount and unmount D64/D71/D81 disk images, switch between 1541/1571/1581 emulation modes, and create new disk images.
Read and Write Memory - Inspect and modify C64 memory directly via DMA. Useful for debugging, poking values, or examining program state.
Configure Your Device - Adjust device settings, save configurations to flash, and manage your C64 Ultimate setup.
How It Works
This server implements the Model Context Protocol (MCP) to expose the C64 Ultimate REST API as tools that AI assistants can use. When connected to Claude Desktop or another MCP client, you can have natural conversations about your C64 and Claude will use these tools to carry out your requests.
Prerequisites
Enable Web Remote Control Service from the C64 Ultimate menu:
Navigate to:
Network Settings→Web Remote Control Service→Enabled
Installation
Configuration
Set the C64U_URL environment variable to your device's IP address:
Default: http://192.168.200.157
Running the Server
Claude Desktop Configuration
Add to your Claude Desktop claude_desktop_config.json:
Available Tools
Machine Control
machine_reset- Reset the C64machine_reboot- Reboot Ultimate devicemachine_pause- Pause CPU via DMAmachine_resume- Resume from pausemachine_poweroff- Power off (U64 only)capture_screen- Capture C64 screen as PNG imagetype_text- Type text into keyboard buffer (supports special keys)send_key- Send a special key to keyboard bufferenter_basic_program- Enter BASIC program directly into memory (tokenized)
Memory Access
write_memory- Write hex data to C64 memorywrite_memory_binary- Write binary data to memory (base64)read_memory- Read C64 memoryread_debug_register- Read debug register (U64)write_debug_register- Write debug register (U64)
Runners (SID/MOD/PRG/CRT)
sidplay_file- Play SID file from device filesystemsidplay_upload- Upload and play SID file (base64)modplay_file- Play MOD file from device filesystemmodplay_upload- Upload and play MOD file (base64)load_prg_file- Load PRG without executingload_prg_upload- Upload and load PRG (base64)run_prg_file- Load and run PRG from filesystemrun_prg_upload- Upload and run PRG (base64)run_crt_file- Start cartridge from filesystemrun_crt_upload- Upload and start cartridge (base64)
Floppy Drives
list_drives- List all drives and mounted imagesmount_disk_file- Mount disk from filesystemmount_disk_upload- Upload and mount disk (base64)drive_reset- Reset drivedrive_remove- Unmount diskdrive_on- Enable drivedrive_off- Disable drivedrive_load_rom_file- Load custom ROMdrive_load_rom_upload- Upload custom ROM (base64)drive_set_mode- Change drive type (1541/1571/1581)
Configuration
list_config_categories- List all config categoriesget_config_category- Get items in a categoryget_config_item- Get specific config itemset_config_item- Set config item valuebatch_set_config- Set multiple config itemsload_config_from_flash- Restore config from flashsave_config_to_flash- Save config to flashreset_config_to_default- Reset to factory defaults
Streams (U64 only)
stream_start- Start video/audio/debug streamstream_stop- Stop active stream
File Operations
get_file_info- Get file metadataget_version- Get REST API versioncreate_d64- Create D64 disk imagecreate_d71- Create D71 disk imagecreate_d81- Create D81 disk imagecreate_dnp- Create DNP disk image
API Reference
Based on: https://1541u-documentation.readthedocs.io/en/latest/api/api_calls.html