apple2-mcp
An MCP server that wraps the Bobbin Apple II emulator, providing tools for memory access, screen reading, BASIC program execution, and disk image management to enable autonomous experimentation with Apple II control techniques.
README
Apple II MCP Server
An MCP server for autonomous experimentation with Apple II control techniques via the Bobbin emulator.
Overview
This MCP server wraps the Bobbin Apple II emulator, providing tools for:
- Memory read/write access
- Screen reading
- BASIC program tokenization and injection
- Knowledge base for recording discovered techniques
Installation
pip install -e .
Usage
Configure in your Claude MCP settings:
{
"mcpServers": {
"apple2": {
"command": "apple2-mcp"
}
}
}
Tools
Machine Control
boot- Start the Apple II emulator (Apple II+ or //e)shutdown- Stop the emulatorreset- Warm or cold reset
Memory Access
peek/poke- Read/write memoryload_binary- Load binary data from hex string
Screen & Graphics
read_screen- Get 40x24 text displaycapture_gr/read_gr_ascii- Lo-res graphics (40x48, 16 colors)capture_hgr/read_hgr_ascii- Hi-res graphics (280x192)capture_dgr/read_dgr_ascii- Double lo-res (80x48, //e only)capture_dhgr/read_dhgr_ascii- Double hi-res (560x192, //e only)clear_gr- Clear lo-res screen to solid colorclear_hgr- Clear hi-res screen to black
Input
type_text- Type into the emulatorsend_key- Send special keys (RETURN, ESCAPE, CTRL-C, CTRL-RESET)
BASIC Execution
run_basic- Execute BASIC command and wait for promptrun_and_capture- Run program and capture screen automaticallysend_keys_and_capture- Send keys to interactive program, then capture
Tokenization
type_and_capture- Type BASIC and see tokenizationtokenize- Tokenize BASIC source using Bobbincompare_tokenization- Compare against native Apple II tokenizationinject_tokenized_basic- Direct memory injection
Disk Image Tools
create_disk- Create new DOS 3.3 disk imagedisk_catalog- List files on disk imagesave_basic_to_disk- Save BASIC source to disk (auto-tokenizes)save_file_to_disk- Save .bas file to disk
Observation
get_registers- Get 6502 CPU register stateget_basic_pointers- Get BASIC memory pointers
Knowledge Base
record_technique/query_techniques- Save and search techniques
Requirements
- Python 3.10+
- Bobbin emulator (compiled)
- pexpect
- mcp
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.