Command Palette

Search for a command to run...

UnylyUnyly
Browse all

C64u

FreeNot checked

MCP (Model Context Protocol) server for the Commodore 64 Ultimate Computer.

GitHubEmbed

About

MCP (Model Context Protocol) server for the Commodore 64 Ultimate Computer.

README

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 SettingsWeb Remote Control ServiceEnabled

Installation

cd c64u-mcp-server
uv sync

Configuration

Set the C64U_URL environment variable to your device's IP address:

export C64U_URL="http://192.168.200.157"

Default: http://192.168.200.157

Running the Server

uv run python server.py

Claude Desktop Configuration

Add to your Claude Desktop claude_desktop_config.json:

{
  "mcpServers": {
    "commodore64": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/c64u-mcp-server", "python", "server.py"],
      "env": {
        "C64U_URL": "http://192.168.200.157"
      }
    }
  }
}

Available Tools

Machine Control

  • machine_reset - Reset the C64
  • machine_reboot - Reboot Ultimate device
  • machine_pause - Pause CPU via DMA
  • machine_resume - Resume from pause
  • machine_poweroff - Power off (U64 only)
  • 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
  • enter_basic_program - Enter BASIC program directly into memory (tokenized)

Memory Access

  • 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 debug register (U64)
  • write_debug_register - Write debug register (U64)

Runners (SID/MOD/PRG/CRT)

  • sidplay_file - Play SID file from device filesystem
  • sidplay_upload - Upload and play SID file (base64)
  • modplay_file - Play MOD file from device filesystem
  • modplay_upload - Upload and play MOD file (base64)
  • load_prg_file - Load PRG without executing
  • load_prg_upload - Upload and load PRG (base64)
  • run_prg_file - Load and run PRG from filesystem
  • run_prg_upload - Upload and run PRG (base64)
  • run_crt_file - Start cartridge from filesystem
  • run_crt_upload - Upload and start cartridge (base64)

Floppy Drives

  • 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)

Configuration

  • list_config_categories - List all config categories
  • get_config_category - Get items in a category
  • get_config_item - Get specific config item
  • set_config_item - Set config item value
  • batch_set_config - Set multiple config items
  • load_config_from_flash - Restore config from flash
  • save_config_to_flash - Save config to flash
  • reset_config_to_default - Reset to factory defaults

Streams (U64 only)

  • stream_start - Start video/audio/debug stream
  • stream_stop - Stop active stream

File Operations

  • get_file_info - Get file metadata
  • get_version - Get REST API version
  • create_d64 - Create D64 disk image
  • create_d71 - Create D71 disk image
  • create_d81 - Create D81 disk image
  • create_dnp - Create DNP disk image

API Reference

Based on: https://1541u-documentation.readthedocs.io/en/latest/api/api_calls.html

from github.com/xphileby/c64u-mcp-server

Installing C64u

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/xphileby/c64u-mcp-server

FAQ

Is C64u MCP free?

Yes, C64u MCP is free — one-click install via Unyly at no cost.

Does C64u need an API key?

No, C64u runs without API keys or environment variables.

Is C64u hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install C64u in Claude Desktop, Claude Code or Cursor?

Open C64u on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare C64u with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs