firmforge
FirmForge
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、 | ブロッキング |
S4 Flash | ブートローダリセットを伴うavrdudeプログラミング(ATmega2560は | ブロッキング |
S5 Verify | パターンマッチングによるシリアル読み戻し。ライブブラウザパネル | 非ブロッキング |
Related MCP server: agentic-hil
対応ターゲット
ボード | MCU | 備考 |
| ATmega2560 | 知識ベース内の202レジスタ(GCCエイリアスを含む) |
| ATmega328P(UNO/Nano) | 知識ベース内の91レジスタ |
カスタムボードは--boards-dirでサポートされています。
インストール
要件: Python ≥ 3.10。ハードウェアが必要なのはFlashステージとVerifyステージのみです。
pip install git+https://github.com/NotchStone/firmforge.git
ff setupff 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.hexMCPサーバー
エージェント(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
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
MCP server for building and testing AI agents with multi-model experimentation and insights.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceMCP 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.17MIT
- AlicenseAqualityAmaintenanceAgentic Hardware-in-the-Loop (Agentic HIL) lets coding agents develop firmware on real embedded boards: flash, reset, read UART and exchange CAN traffic, diagnose and fix. Local, policy-gated MCP tools support OpenOCD, pyOCD and STM32CubeProgrammer, with pytest for CI.441,138 PyPI18Apache 2.0
- AlicenseCqualityAmaintenanceMCP 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.1920 PyPI6MIT
- AlicenseAqualityBmaintenanceAn MCP server that enables AI agents to inspect, plan, validate, and apply STM32CubeMX .ioc configuration changes, and generate STM32CubeIDE projects, ensuring safe and testable embedded-system workflows.93MIT