# Arduino MCP Server

MCP-сервер связывает ИИ-агента с Arduino: помогает находить платы, собирать и загружать скетчи, читать Serial и проверять безопасность распиновки.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 23
- Автор: hardware-mcp
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/hardware-mcp/arduino-mcp-server
- Обновлён: 2026-08-22
- HTML: https://affpapa.org/nevibecode/mcp/arduino-mcp-server

## Что делает

Arduino MCP Server оборачивает `arduino-cli` в MCP-интерфейс. Агент может обнаружить подключённые платы и порты, проверить ядра, собрать скетч, загрузить его на плату и дождаться сигнала готовности. Для Serial предусмотрены состояния с открытием, чтением, ожиданием шаблона, записью и закрытием.

Сервер также даёт справку по платам и запускает `safety_preflight` перед операциями с железом. Проверки учитывают опасные GPIO ESP32, контакты SPI flash, загрузочные пины, входы без встроенной подтяжки и параметры батареи. Без `arduino-cli` в `PATH` настройка зависит от его установки сервером или от заданного `ARDUINO_CLI_PATH`.

В конфигурации можно задать `ARDUINO_SKETCH_ROOT`, чтобы ограничить каталог скетчей. Для работы пакета нужен Node.js 20+; подключение к Claude Code выполняется через `npx`.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `ARDUINO_CLI_PATH`, `ARDUINO_SKETCH_ROOT` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env ARDUINO_CLI_PATH=<ARDUINO_CLI_PATH> --env ARDUINO_SKETCH_ROOT=<ARDUINO_SKETCH_ROOT> --transport stdio arduino-mcp-server -- npx -y arduino-mcp-server
```
Вместо <…> подставьте свои значения

### Codex

**Командой платформы**
```bash
codex mcp add arduino-mcp-server --env ARDUINO_CLI_PATH=<ARDUINO_CLI_PATH> --env ARDUINO_SKETCH_ROOT=<ARDUINO_SKETCH_ROOT> -- npx -y arduino-mcp-server
```
Вместо <…> подставьте свои значения

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "arduino-mcp-server": {
            "command": "npx",
            "args": [
                "-y",
                "arduino-mcp-server"
            ],
            "env": {
                "ARDUINO_CLI_PATH": "<ARDUINO_CLI_PATH>",
                "ARDUINO_SKETCH_ROOT": "<ARDUINO_SKETCH_ROOT>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "arduino-mcp-server": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "arduino-mcp-server"
            ],
            "env": {
                "ARDUINO_CLI_PATH": "<ARDUINO_CLI_PATH>",
                "ARDUINO_SKETCH_ROOT": "<ARDUINO_SKETCH_ROOT>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e ARDUINO_CLI_PATH=<ARDUINO_CLI_PATH> -e ARDUINO_SKETCH_ROOT=<ARDUINO_SKETCH_ROOT> arduino-mcp-server npx -y arduino-mcp-server
```
Вместо <…> подставьте свои значения

## Когда брать
- обнаружить подключённую Arduino-плату и её порт
- собрать скетч под выбранную плату
- загрузить прошивку без ручного запуска терминала
- читать и проверять сообщения Serial
- проверить распиновку и параметры батареи перед запуском

## Примеры запросов агенту
- Проверь установку `arduino-cli`, настрой окружение для Arduino Uno и найди подключённую плату.
- Собери скетч `Blink` и загрузи его на Arduino Uno через найденный порт.
- Открой Serial на скорости `115200` и жди, пока устройство напечатает `READY`; перед записью выполни проверку безопасности.

## Похожие
- [Scrapling MCP Server](https://affpapa.org/nevibecode/mcp/scrapling-mcp-server.md) — MCP-сервер · ★ 89433
- [browser-use](https://affpapa.org/nevibecode/mcp/browser-use.md) — MCP-сервер · ★ 119160
- [AIHawk](https://affpapa.org/nevibecode/mcp/aihawk.md) — MCP-сервер · ★ 32221
- [Skyvern](https://affpapa.org/nevibecode/mcp/skyvern.md) — MCP-сервер · ★ 23263
- [SeleniumBase MCP](https://affpapa.org/nevibecode/mcp/seleniumbase-mcp.md) — MCP-сервер · ★ 13169
- [Inbox Zero](https://affpapa.org/nevibecode/mcp/inbox-zero.md) — MCP-сервер · ★ 12791

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
