嵌入式硬件交互服务

MCP Board Farm 是一个允许AI编码代理通过模型上下文协议与物理嵌入式硬件交互的平台,支持构建、烧录、调试和测试功能。

  • by seventhsu
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 seventhsu/boardfarm-mcp

使用说明

MCP董事会农场

让AI编码代理通过模型上下文协议与物理嵌入式硬件交互。

┌─────────────┐     MCP Protocol     ┌──────────────┐     USB/JTAG     ┌─────────┐
│  AI Agent   │ ◄──────────────────► │ Board Server │ ◄──────────────► │  Nucleo │
│ (Claude/    │   build, flash,      │              │                  │  Boards │
│  Cursor)    │   debug, test        │              │                  │         │
└─────────────┘                      └──────────────┘                  └─────────┘

快速开始

硬件要求

  • 2x STM32 Nucleo板(建议使用F401RE)
  • USB电缆
  • Linux主机(您的机器)

软件需求

  • Python 3.11+
  • OpenCD
  • ARM GCC(gcc-arm-none-eabi)
  • stlink工具(适用于ST-Link V2/V3)
  • Zephyr SDK(用于Zephyr版本)
  • Docker(可选,用于容器化构建)

硬件设置(第一次)

对于ST-Link V3调试器和串行访问:

# Run the setup script with sudo
cd docs
sudo ./setup_hardware.sh

# Log out and back in for group changes to take effect

这将:

  1. 为ST-Link V2/V3安装udev规则
  2. 将您的用户添加到 dialout 组(用于串行端口访问)
  3. 安装ARM工具链、stlink工具和OpenCD

安装

git clone https://github.com/yourusername/mcp-boardfarm.git
cd mcp-boardfarm
pip install -e .

配置

编辑 config/boards.yaml 定义您的连接板。

运行服务器

mcp-boardfarm serve

使用Claude Desktop进行测试

增添 claude_desktop_config.json:

{
  "mcpServers": {
    "boardfarm": {
      "command": "python",
      "args": ["-m", "mcp_boardfarm"],
      "env": {
        "BOARDFARM_CONFIG": "/path/to/config"
      }
    }
  }
}

试试看

问克劳德:

为STM32F401RE构建Zephyr hello_world示例,将其闪存到board-01,并向我显示串行输出

特性

  • 🔧 构建系统: Zephyr、Arduino、STM32Cube、裸金属
  • ⚡ 闪光灯: OpenCD、pyocd、串行引导加载程序
  • 📊 监视器: 实时串行日志、RTT、SWO
  • 🧪 测试: pytest嵌入式机器人框架
  • 🔒 安全: 板隔离、沙盒、速率限制
  • 🔌 可扩展: 添加新板、调试器、协议

建筑

看 docs/ARCHITECTURE.md 用于完整的系统设计。

支持的板

板 MCU 核心 状态
Nucleo-H755ZI-Q STM32H755ZI Cortex-M7+M4 ✅ 检测到,需要工具链
Nucle-F401RE STM32F401RE Cortex-M4 ✅ 已配置(模拟)

H755ZI-Q核培养

H755ZI-Q是一款双核板(Cortex-M7@480MHz+Cortex-M4@240MHz)。

当前状态: 检测到板,正在等待闪烁的权限修复。

看 docs/H755_BRINGUP_STATUS.md 查看详细的启动日志。

权限固定后快速测试:

# Flash test firmware
cd test_firmware/h755_blink
st-flash write h755_blink.bin 0x08000000

# Watch serial output
picocom -b 115200 /dev/ttyACM0

状态

MVP正在进行中。 目标:单Nucleo板,Zephyr构建,基本MCP工具。

许可证

麻省理工学院


内置于🤖 MCP董事会农场团队