Skip to main content
Glama

FirmForge

English · 中文(README_CN.md)

FirmForge는 AI 코딩 에이전트와 함께하는 MCU 개발을 위한 MCP 기반 펌웨어 검증 툴체인입니다. Detect, Review, Build, Flash, Verify의 5단계 하드웨어 파이프라인을 제공하며, 각 단계를 MCP 도구(ff_detect, ff_context, ff_build, ff_run, ff_flash, ff_monitor)로 에이전트에 노출합니다.

이 툴체인은 실제 컴파일러(avr-gcc / ArduinoCore-avr)로 펌웨어를 컴파일하고, avrdude로 타깃을 프로그래밍하며, 시리얼 리드백을 통해 결과를 검증합니다. 코드 생성은 범위에 포함되지 않습니다.

파이프라인

단계

설명

실패 처리

S1 Detect

avrdude 칩 시그니처 프로브를 통한 보드 식별; USB VID/PID 및 워크스페이스 추론을 대체 수단으로 사용

차단

S2 Review

정적 분석: cppcheck, 칩 지식 베이스에 대한 레지스터/비트필드 검증, 신뢰도 점수

비차단

S3 Build

firmware.hex로 컴파일: 베어 레지스터 C(avr-gcc, -std=c11) 또는 Arduino API(ArduinoCore-avr); SHA256 지문 캐싱

차단

S4 Flash

avrdude 프로그래밍(ATmega2560은 -D 칩 지우기 건너뛰기 사용) 및 부트로더 리셋

차단

S5 Verify

패턴 매칭을 통한 시리얼 리드백; 실시간 브라우저 패널

비차단

Related MCP server: Chiplab

지원 타깃

보드

MCU

참고

arduino_mega

ATmega2560

지식 베이스에 202개 레지스터(GCC 별칭 포함)

arduino_328p

ATmega328P (UNO/Nano)

지식 베이스에 91개 레지스터

사용자 정의 보드는 --boards-dir을 통해 지원됩니다.

설치

요구 사항: Python ≥ 3.10. 하드웨어는 Flash 및 Verify 단계에서만 필요합니다.

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

ff setup은 avr-gcc, avrdude, cppcheck, ArduinoCore-avr을 ~/.firmforge/에 다운로드하여 설치합니다. 다시 실행해도 멱등적입니다.

MCP 지원(에이전트 통합)을 위해:

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

안정적인 wheel 패키지는 GitHub Releases에 첨부되어 있습니다.

Gitee에서 중국 미러를 사용할 수 있습니다: README_CN.md(中文)를 참조하세요.

사용법

# 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 서버

에이전트(CodeBuddy, Cursor, Claude Desktop 등)에 서버를 등록하세요:

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

에이전트 워크플로우: 펌웨어를 작성하기 전에 ff_context를 조회하여 레지스터/핀 참조를 확인한 다음, ff_run으로 컴파일, 플래시, 검증을 수행합니다. 번들 데이터(보드 정의, 칩 지식, 툴체인 매니페스트)는 패키지 내부에서 해석되며, 서버는 모든 작업 디렉터리에서 실행됩니다.

개발

pip install -e .[test,mcp]
pytest

라이선스

MIT © FirmForge 기여자들

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