Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Oh My Pi

Why this agent

Oh My Pi (omp) is a terminal AI coding agent forked from pi-mono, with OMP-specific tools, model roles, sessions/branching, subagents, and plugin/skill extensibility. Its MCP-server story is inheritance-based — on first run, omp reads MCP servers from your existing IDE configs (.claude, .cursor, .codex, etc.), so any agent you’ve already set up via install://claude-code (or similar) is automatically reachable in Oh My Pi too.

Prerequisites

  • Oh My Pi installed; omp --version succeeds. Install instructions at https://github.com/can1357/oh-my-pi#installation.
  • espctl installed somewhere stable on disk (full path needed below).
  • At least one of the IDE config files Oh My Pi inherits from: .claude/settings.json, .cursor/mcp.json, ~/.codex/config.toml, .gemini/..., .windsurf/..., .cline/..., .github/copilot/..., or .vscode/....
  • (Optional, for remote builds) An Aegis build server URL + MCP_AUTH_SECRET.

Install snippet (or alternative)

Oh My Pi has no separate MCP-server config file — it inherits MCP servers from your IDE configs. The simplest setup is to paste the Claude Code snippet into .claude/settings.json (project or global):

{
  "mcpServers": {
    "espctl": {
      "command": "/path/to/espctl",
      "args": ["mcp", "serve"],
      "cwd": "/path/to/your/esp-idf/project",
      "env": {
        "CONTROL_BASE_URL": "https://esphome.cloud",
        "MCP_AUTH_SECRET": "your-access-key"
      }
    }
  }
}

Replace:

  • /path/to/espctl — full path to the espctl program on your computer.
  • /path/to/your/esp-idf/project — full path to the project Oh My Pi should work on.
  • CONTROL_BASE_URL — your Aegis build server URL.
  • MCP_AUTH_SECRET — your access key from the build server.

On first run, omp will discover this entry and register espctl as an MCP server. No omp-side config edit needed.

Already set up Claude Code, Cursor, or another IDE? omp inherits their MCP servers automatically — nothing more to do.

Alternative — fetch a pre-filled snippet:

Read the install://oh-my-pi resource.

First-run verification

cd /path/to/your/esp-idf/project
omp --model deepseek/deepseek-v4-pro

In the omp session, ask:

What espctl tools do you have?

Expected: ~40 espctl tools listed.

Troubleshooting

  • omp doesn’t see espctl in tools — Oh My Pi only inherits on first run. If you added the .claude/settings.json entry after running omp once, force a re-discovery via /reload-plugins or remove ~/.omp/agent/plugins.json to retrigger inheritance.
  • Wrong IDE config inherited — if you have BOTH .claude and .cursor configs that conflict, omp’s precedence order may not match your intent. Set up only one MCP source for predictable behaviour.
  • MCP_AUTH_SECRET not propagating — Oh My Pi inherits the whole env block from .claude/settings.json. Verify the value is the literal token (not an unexpanded $VAR).

Tested as-of 2026-05-19

Oh My Pi-specific notes

  • Per the Oh My Pi README: “On first run omp inherits whatever is already on disk: rules, skills, and MCP servers from .claude, .cursor, .windsurf, .gemini, .codex, .cline, .github/copilot, and .vscode.”
  • For OMP-specific model provider configuration (not MCP servers), see ~/.omp/agent/models.yml — the awesome-deepseek-agent guide covers this for DeepSeek-V4-Pro/Flash specifically.
  • /reload-plugins re-scans inherited configs without restarting omp.