- Home
- MCP servers
- Commodore 64 Ultimate Computer
Commodore 64 Ultimate Computer
- python
5
GitHub Stars
python
Language
5 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You can expose and control the Commodore 64 Ultimate Computer REST API through an MCP server. This lets you orchestrate the C64U device from any MCP client, issuing commands, loading media, managing memory and drives, and more, using familiar MCP tooling.
How to use
To use the Commodore 64 MCP Server, connect via a suitable MCP client and point it at either the local CLI-based server or the remote HTTP endpoint. You can start the server locally to run all endpoints as MCP tools or interact with a running remote MCP server if you have a URL. You will access the full set of capabilities, including loading programs, controlling the machine, driving floppy images, and performing memory operations.
How to install
Prerequisites: you need a working environment with a shell, Python installed, and the UV tooling available. You will also configure the target device URL before running the server.
Step 1: Clone or prepare the MCP server directory.
Step 2: Install dependencies if required by the server implementation.
Step 3: Start the server locally using the runtime command shown below.
Configuration
Set the device URL so the server can reach your Commodore 64 Ultimate Computer. Use the following environment variable to point to your device IP and API:
C64U_URL should be your device base URL, for example http://192.168.200.157.
Claude Desktop Configuration
{
"mcpServers": {
"commodore64": {
"command": "uv",
"args": ["run", "--directory", "/path/to/c64u-mcp-server", "python", "server.py"],
"env": {
"C64U_URL": "http://192.168.200.157"
}
}
}
}
Notes
The server exposes a comprehensive set of tools corresponding to actions you can perform on the C64U device. Make sure your device is reachable at the configured URL before starting the server, and ensure your environment variables are set as required by your MCP client or automation workflow.
Available tools
get_version
Get REST API version of the underlying Commodore 64 Ultimate Computer service.
sidplay_file
Play SID file from device filesystem.
sidplay_upload
Upload and play SID file (base64) on the device.
modplay_file
Play MOD file from device filesystem.
modplay_upload
Upload and play MOD file (base64) on the device.
load_prg_file
Load PRG into memory without executing.
load_prg_upload
Upload and load PRG (base64) into memory.
run_prg_file
Load and run PRG from filesystem.
run_prg_upload
Upload and run PRG (base64) from memory.
run_crt_file
Start cartridge from filesystem.
run_crt_upload
Upload and start cartridge (base64).
list_config_categories
List all config categories.
get_config_category
Get items in a configuration category.
get_config_item
Get a specific config item.
set_config_item
Set the value of a config item.
batch_set_config
Set multiple config items in a single operation.
load_config_from_flash
Restore config from flash memory.
save_config_to_flash
Save current config to flash memory.
reset_config_to_default
Reset config to factory defaults.
machine_reset
Reset the C64.
machine_reboot
Reboot the Ultimate device.
machine_pause
Pause CPU via DMA.
machine_resume
Resume from CPU pause.
machine_poweroff
Power off the device (U64 only).
write_memory
Write hex data to C64 memory.
write_memory_binary
Write binary data to memory (base64).
read_memory
Read C64 memory.
read_debug_register
Read a debug register (U64).
write_debug_register
Write a debug register (U64).
capture_screen
Capture C64 screen as PNG image.
type_text
Type text into keyboard buffer (supports special keys).
send_key
Send a special key to keyboard buffer.
list_drives
List all drives and mounted images.
mount_disk_file
Mount disk from filesystem.
mount_disk_upload
Upload and mount disk (base64).
drive_reset
Reset drive.
drive_remove
Unmount disk.
drive_on
Enable drive.
drive_off
Disable drive.
drive_load_rom_file
Load custom ROM.
drive_load_rom_upload
Upload custom ROM (base64).
drive_set_mode
Change drive type (1541/1571/1581).
stream_start
Start video/audio/debug stream (U64 only).
stream_stop
Stop active stream.
get_file_info
Get file metadata.
create_d64
Create D64 disk image.
create_d71
Create D71 disk image.
create_d81
Create D81 disk image.
create_dnp
Create DNP disk image.