# Agentic HIL

Connects your AI agent to embedded hardware through a debug probe. It flashes boards, drives UART and CAN, and verifies execution on physical silicon.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 20
- Author: agentic-hil
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/agentic-hil/agentic-hil
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/agentic-hil

## What it does

Embedded testing fails if code only compiles. This MCP server lets coding assistants interact with real hardware on the bench. It exposes strictly scoped functions for chip inspection, flashing through `flash_firmware`, reset routines, and serial exchange via `com_read`.

The system supports ST-Link adapters using OpenOCD or the STM32CubeProgrammer CLI, alongside CMSIS-DAP probes powered by pyOCD. Security policies stay outside the target repository. This prevents the LLM from tampering with its own execution permissions.

Without an attached probe and appropriate backend utilities, hardware steps fail immediately. Every hardware run writes an execution report, giving reviewers concrete evidence inside pull requests.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add agentic-hil -- uvx agentic-hil
```
uvx runs the command named after the package; if the README names another one, use uvx --from agentic-hil <command>

### Codex

**Platform CLI**
```bash
codex mcp add agentic-hil -- uvx agentic-hil
```
uvx runs the command named after the package; if the README names another one, use uvx --from agentic-hil <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "agentic-hil": {
            "command": "uvx",
            "args": [
                "agentic-hil"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from agentic-hil <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "agentic-hil": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "agentic-hil"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from agentic-hil <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add agentic-hil uvx agentic-hil
```
uvx runs the command named after the package; if the README names another one, use uvx --from agentic-hil <command>

## When to use it
- flash compiled firmware binaries to physical boards
- verify hardware behavior over serial UART and CAN channels
- isolate host resources while granting debugger access
- produce verifiable execution logs for pull request reviews

## Example prompts
- Inspect the connected bench and flash the new firmware build
- Send a test command over UART and inspect the incoming board response
- Run the test plan against the microcontroller and generate a report

## Similar
- [Front-End Checklist](https://affpapa.org/en/nevibecode/mcp/front-end-checklist.md) — MCP server · ★ 74559
- [Keploy](https://affpapa.org/en/nevibecode/mcp/keploy.md) — MCP server · ★ 18727
- [SeleniumBase MCP](https://affpapa.org/en/nevibecode/mcp/seleniumbase-mcp.md) — MCP server · ★ 13169
- [mobile-mcp](https://affpapa.org/en/nevibecode/mcp/mobile-mcp.md) — MCP server · ★ 9946
- [e2e](https://affpapa.org/en/nevibecode/mcp/e2e.md) — MCP server · ★ 11912
- [mockserver](https://affpapa.org/en/nevibecode/mcp/mockserver.md) — MCP server · ★ 4996

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
