AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
MCP verified MIT Self-run

Oh My Embedded

mcp-captainluzik-oh-my-embedded · by captainluzik

OpenCode plugin for embedded systems engineering — ESP32, STM32, FreeRTOS, PCB design, component sourcing. Embedded engineer on steroids.

No reviews yet
0 installs
42 views
0.0% view→install

Install

$ agentstack add mcp-captainluzik-oh-my-embedded

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/mcp-captainluzik-oh-my-embedded)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
6mo ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Oh My Embedded? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

[](https://github.com/captainluzik/oh-my-embedded/releases) [](https://www.npmjs.com/package/oh-my-embedded) [](https://github.com/captainluzik/oh-my-embedded/graphs/contributors) [](https://github.com/captainluzik/oh-my-embedded/stargazers) [](https://github.com/captainluzik/oh-my-embedded/issues) [](LICENSE)

> [!TIP] > Embedded systems engineering, straight from your terminal. ESP32, STM32, FreeRTOS, KiCad, RF design, power budgets — all wired into OpenCode.

oh-my-embedded

An OpenCode plugin for embedded engineers. It brings specialized agents, on-demand skills with MCP server integrations, and always-available calculation tools for the kind of work that doesn't fit neatly into a generic coding assistant.

Works standalone or alongside oh-my-opencode.

Installation

For Humans

Copy and paste this prompt to your LLM agent (Claude Code, OpenCode, AmpCode, Cursor, etc.):

Install and configure oh-my-embedded by following the instructions here:
https://raw.githubusercontent.com/captainluzik/oh-my-embedded/main/docs/guide/installation.md

Or read the [Installation Guide](docs/guide/installation.md) directly — but we recommend letting an agent handle it.

For LLM Agents

Fetch the installation guide and follow it:

curl -s https://raw.githubusercontent.com/captainluzik/oh-my-embedded/main/docs/guide/installation.md

What's Inside

Agents

Press Tab in the OpenCode TUI to cycle through agents. @embedded and @hardware appear alongside your existing agents.

| Agent | Color | Mode | What it does | |-------|-------|------|--------------| | @embedded | 🟢 Green | primary | Firmware engineer. ESP32/STM32, FreeRTOS, peripherals, WiFi/BLE, deep sleep, OTA, power management | | @hardware | 🟠 Orange | primary | PCB/RF engineer. Schematics, layout, component selection, RF design, impedance matching | | @review-hw | 🔴 Red | subagent | Read-only firmware code reviewer. P0-P3 severity findings, memory safety, ISR pitfalls |

Skills

Skills load on-demand via the skill tool. Each skill carries its own MCP servers — they start when you load the skill and stop when idle.

| Skill | MCP Servers | What it does | |-------|-------------|--------------| | embedded-engineer | esp-mcp | ESP32/STM32 firmware, FreeRTOS, peripherals, WiFi/BLE, deep sleep, OTA | | embedded-review | — | Firmware code review: memory safety, ISR, RTOS pitfalls, C/C++ UB. P0-P3 severity | | pcb-designer | kicad-mcp-server | KiCad PCB design: schematic, placement, routing, DRC, Gerber, JLCPCB BOM | | component-sourcer | @jlcpcb/mcp | Component search, BOM optimization, JLCPCB Basic Parts, alternatives | | firmware-debugger | mcp-server-gdb, serial-mcp-server | GDB debugging, JTAG/SWD, hard fault analysis, serial monitor | | circuit-simulator | spicebridge | ngspice simulation: power supplies, filters, impedance matching |

Tools

These tools are always available — no skill loading, no MCP servers, no install needed.

| Tool | What it does | |------|--------------| | embedded-power-calculator | Battery life estimation, LDO vs DC-DC, per-component current breakdown | | embedded-impedance-calculator | RF L/Pi matching networks, microstrip impedance, Butterworth LC filters | | embedded-resistor-divider | Voltage divider design with E24 standard values, load effect analysis | | embedded-pin-mapper | ESP32 GPIO pin map, conflict detection, strapping pin warnings | | embedded-decoupling-advisor | Per-IC decoupling cap recommendations (ESP32, STM32, LDO, DC-DC, ADC) |

Commands

| Command | What it does | |---------|--------------| | /flash | Build + flash firmware (auto-detects ESP-IDF or PlatformIO) | | /debug | Start GDB debug session with OpenOCD/J-Link/probe-rs | | /bom | Generate JLCPCB-ready BOM from KiCad project | | /power-budget | Analyze project peripherals and calculate power budget | | /review-firmware | Run structured firmware code review with P0-P3 severity |

Auto-Detection

The plugin detects your project type automatically and injects relevant context into every session.

| File | Detected as | |------|-------------| | sdkconfig, sdkconfig.defaults | ESP-IDF | | platformio.ini | PlatformIO | | prj.conf, west.yml | Zephyr RTOS | | .ioc | STM32CubeMX |

For ESP-IDF projects, it parses sdkconfig and injects: target chip, flash size, PSRAM, WiFi/BLE status, partition table, and ADC2+WiFi conflict warnings.

Prerequisites

The plugin has no mandatory dependencies. MCP servers install on-demand when you load a skill.

| MCP Server | Install | Used by | |------------|---------|---------| | esp-mcp | pip install esp-mcp | embedded-engineer | | kicad-mcp-server | npm i -g kicad-mcp-server | pcb-designer | | @jlcpcb/mcp | auto-installed via npx | component-sourcer | | mcp-server-gdb | cargo install mcp-server-gdb | firmware-debugger | | serial-mcp-server | cargo install serial-mcp-server | firmware-debugger | | spicebridge | pip install spicebridge | circuit-simulator |

Usage Examples

Battery life for a sensor node

Use embedded-power-calculator to estimate battery life:
- ESP32 with WiFi, 10% duty cycle (240mA active, 10uA deep sleep)
- BME280 sensor (0.35mA active, 0.1uA sleep, 1% duty cycle)
- LED indicator (20mA, 0.1% duty cycle)
Supply: 3.3V via LDO from 4.2V LiPo, 2000mAh battery

Impedance matching for a 915 MHz antenna

Use embedded-impedance-calculator to design an L-match network:
50 Ohm source to 150 Ohm antenna at 915 MHz

Check ESP32 pin assignments for conflicts

Use embedded-pin-mapper to check these assignments:
GPIO18 = SPI_CLK, GPIO23 = SPI_MOSI, GPIO19 = SPI_MISO,
GPIO5 = SPI_CS, GPIO21 = I2C_SDA, GPIO22 = I2C_SCL,
GPIO12 = LED, GPIO34 = ADC_INPUT

Full firmware review

/review-firmware src/

Roadmap

| Feature | Status | |---------|--------| | @embedded agent (ESP32/STM32, FreeRTOS) | ✅ Done | | @hardware agent (PCB/RF design) | ✅ Done | | @review-hw subagent | ✅ Done | | 6 skills with MCP server integrations | ✅ Done | | 5 always-available calculation tools | ✅ Done | | 5 slash commands | ✅ Done | | Auto-detection (ESP-IDF, PlatformIO, Zephyr, STM32) | ✅ Done | | sdkconfig context injection | ✅ Done | | npm publish | ✅ Done | | TUI installer with model selection | 🔲 Planned | | STM32CubeMX MCP integration | 🔲 Planned | | Zephyr RTOS skill | 🔲 Planned | | RF/antenna design skill (no MCP exists yet) | 🔲 Planned | | ESP32-S3/C3 pin maps for pin-mapper tool | 🔲 Planned | | PlatformIO MCP server integration | 🔲 Planned | | More circuit simulation templates | 🔲 Planned |

Contributing

This project is early and shaped by whoever shows up. If you work with embedded systems and want better AI tooling, this is the place to build it.

PRs are welcome. New MCP server integrations are especially wanted — if you know of a good one for embedded work that isn't here yet, open an issue or send a PR.

See [CONTRIBUTING.md](CONTRIBUTING.md) for the full guide.

Good First Issues

Not sure where to start? These are concrete, self-contained tasks that don't require deep knowledge of the codebase:

| Task | Difficulty | |------|------------| | Add ESP32-S3 pin map to embedded-pin-mapper tool | Easy | | Add ESP32-C3 pin map to embedded-pin-mapper tool | Easy | | Add decoupling cap profiles for RP2040 and nRF52840 | Easy | | Add impedance calculator presets for common antenna matches | Medium | | Write unit tests for the calculator tools | Medium | | Improve error messages in tools (clearer, more actionable) | Easy |

Open an issue if you want to claim one, or just send the PR directly.

Author's Note

I built this because I kept switching between datasheets, calculators, and a generic AI assistant that didn't know what a strapping pin was. The embedded world has a lot of specialized knowledge that doesn't fit into a general-purpose coding tool.

oh-my-opencode's plugin architecture made it possible to build something focused. This is that thing, for embedded engineers.

The embedded community deserves better AI tooling. I don't think one person can build all of it, so I'm putting this out early and hoping others want to shape it too. If you're an embedded engineer who uses AI in your workflow, your feedback and contributions matter more than anything else here.

Uninstallation

# Remove the plugin from your opencode.json
cat ~/.config/opencode/opencode.json | jq 'del(.plugin[] | select(. == "oh-my-embedded"))' > tmp.json && mv tmp.json ~/.config/opencode/opencode.json

Then delete any copied skills and commands from ~/.config/opencode/skills/ and ~/.config/opencode/commands/.

Development

git clone https://github.com/captainluzik/oh-my-embedded
cd oh-my-embedded
bun install
bun run build
bun run typecheck

License

MIT

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.