Skip to main content
Glama

FirmForge

English · 中文(README_CN.md)

FirmForge ist eine MCP-basierte Firmware-Verifizierungs-Toolchain für die MCU-Entwicklung mit KI-Codierungsagenten. Sie bietet eine fünfstufige Hardware-Pipeline — Detect, Review, Build, Flash, Verify — und stellt die Stufen den Agenten als MCP-Tools zur Verfügung (ff_detect, ff_context, ff_build, ff_run, ff_flash, ff_monitor).

Die Toolchain kompiliert Firmware mit einem echten Compiler (avr-gcc / ArduinoCore-avr), programmiert das Ziel mit avrdude und verifiziert das Ergebnis über serielles Auslesen. Die Codegenerierung liegt außerhalb des Anwendungsbereichs.

Pipeline

Stufe

Beschreibung

Fehlerbehandlung

S1 Detect

Board-Identifizierung über avrdude-Chip-Signatur-Sonde; USB-VID/PID- und Workspace-Inferenz als Fallback

Blockierend

S2 Review

Statische Analyse: cppcheck, Register-/Bitfeld-Validierung gegen die Chip-Wissensbasis, Konfidenzbewertung

Nicht blockierend

S3 Build

Kompilierung zu firmware.hex: Bare-Register-C (avr-gcc, -std=c11) oder Arduino-API (ArduinoCore-avr); SHA256-Fingerprint-Caching

Blockierend

S4 Flash

avrdude-Programmierung (ATmega2560 verwendet -D Skip-Chip-Erase) mit Bootloader-Reset

Blockierend

S5 Verify

Serielles Auslesen mit Musterabgleich; Live-Browser-Panel

Nicht blockierend

Related MCP server: Chiplab

Unterstützte Zielsysteme

Board

MCU

Notizen

arduino_mega

ATmega2560

202 Register in der Wissensbasis (inkl. GCC-Aliase)

arduino_328p

ATmega328P (UNO/Nano)

91 Register in der Wissensbasis

Benutzerdefinierte Boards werden über --boards-dir unterstützt.

Installation

Anforderungen: Python ≥ 3.10. Hardware ist nur für die Flash- und Verify-Stufen erforderlich.

pip install git+https://github.com/NotchStone/firmforge.git
ff setup

ff setup lädt avr-gcc, avrdude, cppcheck und ArduinoCore-avr herunter und installiert sie in ~/.firmforge/. Ein erneutes Ausführen ist idempotent.

Für MCP-Unterstützung (Agentenintegration):

pip install "firmforge[mcp] @ git+https://github.com/NotchStone/firmforge.git"

Stabile Wheels sind den GitHub Releases beigefügt.

Ein China-Mirror ist auf Gitee verfügbar: siehe README_CN.md (中文).

Verwendung

# Detect connected board
ff detect

# Review + compile only (no hardware required)
ff build arduino_mega --app path/to/source

# Full pipeline on hardware
ff run arduino_mega --app path/to/source --expected "Hello World"

# Flash a pre-built hex
ff flash arduino_mega --firmware firmware.hex

MCP-Server

Registrieren Sie den Server bei Ihrem Agenten (CodeBuddy, Cursor, Claude Desktop, ...):

{
  "mcpServers": {
    "firmforge": {
      "command": "python",
      "args": ["-m", "firmforge.adapters.mcp_server"],
      "cwd": "/path/to/your/firmware/project"
    }
  }
}

Agenten-Workflow: Fragen Sie ff_context nach Register-/Pin-Referenzen ab, bevor Sie Firmware schreiben, und verwenden Sie dann ff_run zum Kompilieren, Flashen und Verifizieren. Gebündelte Daten (Board-Definitionen, Chip-Wissen, Toolchain-Manifeste) werden aus dem Paket heraus aufgelöst; der Server läuft aus jedem Arbeitsverzeichnis.

Entwicklung

pip install -e .[test,mcp]
pytest

Lizenz

MIT © FirmForge Contributors

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    C
    quality
    D
    maintenance
    A comprehensive Model Context Protocol (MCP) server for Arduino CLI interactions, built with FastMCP. This server enables AI agents to seamlessly interact with Arduino CLI for development, debugging, code verification, and more.
    16
    2
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server for simulating firmware on virtual microcontroller instances, allowing AI agents to upload, run, and read UART output from supported boards such as STM32 and Nordic.
    16
    MIT
  • A
    license
    C
    quality
    A
    maintenance
    MCP server for AI-assisted MCU and embedded firmware debugging. It connects to real hardware via debug probes, inspects CPU/memory/peripherals, manages Keil builds, and provides structured evidence for fault diagnosis.
    43
    4
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/NotchStone/Firmforge'

If you have feedback or need assistance with the MCP directory API, please join our Discord server