Ryan Malloy 64c1505a00 Add QEMU ESP32 emulation support
Integrate Espressif's QEMU fork for virtual ESP device management:

- QemuManager component with 5 MCP tools (start/stop/list/status/flash)
- Config auto-detects QEMU binaries from ~/.espressif/tools/
- Supports esp32, esp32s2, esp32s3, esp32c3 chip emulation
- Virtual serial over TCP (socket://localhost:PORT) transparent to esptool
- Scan integration: QEMU instances appear in esp_scan_ports results
- Blank flash images initialized to 0xFF (erased NOR flash state)
- 38 unit tests covering lifecycle, port allocation, flash writes
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00
2026-01-28 15:35:22 -07:00

MCP ESPTool Server

FastMCP server providing AI-powered ESP32/ESP8266 development workflows through natural language interfaces.

Features

  • Chip Control: Advanced ESP device detection, connection, and control
  • Flash Operations: Comprehensive flash memory management with safety features
  • Security Management: ESP security features including secure boot and flash encryption
  • Production Tools: Factory programming and batch operations
  • Middleware System: Universal CLI tool integration with bidirectional MCP communication
  • ESP-IDF Integration: Host application support for hardware-free development

Quick Start

Installation

# Install with uvx (recommended)
uvx mcp-esptool-server

# Or install in project
uv add mcp-esptool-server

Claude Code Integration

# Add to Claude Code
claude mcp add mcp-esptool-server "uvx mcp-esptool-server"

Development Setup

# Clone and setup
git clone <repository>
cd mcp-esptool
make dev

# Run development server
make run-debug

# Run tests
make test

Architecture

The server implements a component-based architecture with middleware for CLI tool integration:

  • Components: Specialized modules for different ESP development workflows
  • Middleware: Universal pattern for intercepting and redirecting CLI tool output to MCP context
  • Configuration: Environment-based configuration with auto-detection
  • Production Ready: Docker support with development and production modes

Components

  • ChipControl: Device detection, connection management, reset operations
  • FlashManager: Flash operations with verification and backup
  • PartitionManager: Partition table management and OTA support
  • SecurityManager: Security features and eFuse management
  • FirmwareBuilder: ESP-IDF integration and binary operations
  • OTAManager: Over-the-air update workflows
  • ProductionTools: Factory programming and quality control
  • Diagnostics: Memory dumps and performance profiling

Configuration

Configure via environment variables or .env file:

ESPTOOL_PATH=esptool
ESP_DEFAULT_BAUD_RATE=460800
ESP_IDF_PATH=/path/to/esp-idf
MCP_ENABLE_PROGRESS=true
PRODUCTION_MODE=false

Docker

# Development with hot reload
make docker-up

# Production deployment
DOCKER_TARGET=production make docker-up

License

MIT License - see LICENSE file for details.

Description
FastMCP server for ESP32/ESP8266 development with esptool
Readme MIT 583 KiB
Languages
Python 51.5%
MDX 46%
JavaScript 0.8%
Dockerfile 0.8%
Makefile 0.6%
Other 0.2%