Skip to main content
Glama

FirmForge

English · 中文(README_CN.md)

FirmForgeは、AIコーディングエージェントを用いたMCU開発のためのMCPベースのファームウェア検証ツールチェーンです。Detect、Review、Build、Flash、Verifyの5段階のハードウェアパイプラインを提供し、各ステージをMCPツール(ff_detectff_contextff_buildff_runff_flashff_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 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