EmbedForge
Enables AI-driven embedded development: generate, build, flash, and debug firmware using natural language commands through MCP.
README
EmbedForge
AI 嵌入式一体化开发平台 — MCP-first 架构,让 AI 直接帮你写嵌入式代码
EmbedForge 把 AI 代码生成 → 编译 → 烧录 → 测试 → 自动修复 打通成一个闭环, 并以 MCP Server 形式接入 Claude Code / Trae / Cursor 等编程工具,让你用自然语言就能完成嵌入式开发。
核心能力
| 能力 | 说明 |
|---|---|
| AI 代码生成 | 支持多 LLM 后端(Ollama / OpenAI / Anthropic / Echo) |
| 多构建系统 | 自动检测 PlatformIO / CMake / Makefile / ESP-IDF / GCC 裸机 |
| 硬件交互 | 串口监视、OpenOCD 烧录、Wokwi 仿真 |
| 闭环编排 | 生成→编译→烧录→测试→自动修复,最多 N 轮迭代 |
| 独立修复 | fix 命令根据编译错误或串口日志修复已有代码 |
| MCP Server | 一键接入 Claude Code / Trae / Cursor |
快速开始
方式一:一键安装脚本(推荐)
# 克隆项目
git clone https://github.com/He-user520/EmbedForge.git
cd EmbedForge
# 运行安装脚本(自动安装依赖 + 配置 MCP)
.\install.ps1
方式二:手动安装
# 克隆
git clone https://github.com/He-user520/EmbedForge.git
cd EmbedForge
# 安装
pip install -e ".[dev]"
# 一键接入编程工具
embedforge mcp install
安装完成后 重启 Claude Code / Trae / Cursor,即可使用。
接入编程工具
# 自动检测并安装到所有可用工具
embedforge mcp install
# 只安装到 Claude Code
embedforge mcp install -t claude
# 只安装到 Trae(项目级配置)
embedforge mcp install -t trae -p .
# 只安装到 Cursor
embedforge mcp install -t cursor
# 强制覆盖已有配置
embedforge mcp install --force
接入后,你可以在编程工具里直接说:
- "帮我创建一个 STM32 的点灯程序"
- "编译一下这个项目"
- "把固件烧录到开发板"
- "读取串口日志,看看哪里错了,帮我修"
CLI 命令一览
# 一键开发:AI生成 → 编译 → 烧录 → 测试 → 自动修复
embedforge dev "在STM32F407上配置USART2发送Hello World" --mcu STM32F407VG
# 编译项目
embedforge build -p ./myproject
# 烧录固件
embedforge flash -p ./myproject
# 串口监视器
embedforge monitor --port COM3
# 初始化新项目
embedforge init myproject --mcu STM32F407VG
# 根据编译错误修复代码
embedforge fix compile -p ./myproject
# 根据串口运行时日志修复代码
embedforge fix runtime -p ./myproject --port COM3
# 以 MCP Server 模式启动
embedforge mcp start -s ai
# 检查依赖环境
embedforge doctor
项目结构
embedforge/
├── cli/ # 命令行接口
│ └── main.py # 所有 CLI 命令
├── core/ # 核心模块
│ ├── config.py # 配置管理
│ ├── orchestrator.py # 闭环编排器
│ ├── templates.py # 代码模板
│ └── exceptions.py # 异常定义
├── servers/ # MCP Server 实现
│ ├── ai_server/ # AI 代码生成服务
│ ├── build_server/ # 构建编译服务
│ │ ├── base.py # 构建系统自动检测
│ │ ├── platformio.py # PlatformIO 后端
│ │ ├── cmake.py # CMake 后端
│ │ ├── esp_idf.py # ESP-IDF 后端
│ │ └── gcc.py # GCC 裸机后端
│ └── hardware_server/ # 硬件交互服务
│ ├── serial.py # 串口通信
│ ├── flash.py # 固件烧录
│ ├── debug.py # 调试接口
│ └── simulation.py # Wokwi 仿真
├── templates/ # 项目模板
│ ├── stm32_baremetal/ # STM32 裸机模板
│ ├── stm32_freertos/ # STM32 FreeRTOS 模板
│ ├── arduino_basic/ # Arduino 基础模板
│ └── esp32_wifi/ # ESP32 WiFi 模板
└── tests/ # 测试套件(44 个用例)
支持的硬件
| MCU | 构建系统 | 烧录方式 |
|---|---|---|
| STM32 (F1/F4/H7) | PlatformIO / CMake / GCC | OpenOCD / ST-Link |
| ESP32 / ESP8266 | ESP-IDF / PlatformIO | esptool |
| Arduino | PlatformIO | avrdude |
| 通用 ARM | GCC 裸机 | OpenOCD |
开发
# 运行测试
pytest tests/ -v
# 代码检查
ruff check embedforge/
# 类型检查
mypy embedforge/
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。