openocd-mcp AGENTS.md

An MCP server that lets an AI assistant control OpenOCD, a tool for flashing firmware and debugging embedded devices, through natural-language-callable tools.

In plain words
What is it for?
Programming microcontrollers, starting GDB debugging sessions, and exposing embedded development workflows through local or HTTP-based AI clients.
Why use it?
It reuses the project's VS Code launch targets and manages OpenOCD and GDB sessions, reducing the need to configure and coordinate those tools manually.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/luiox/openocd-mcp/agents-md
Clone the repo
git clone --depth 1 https://github.com/luiox/openocd-mcp

Made for: Codex, OpenCode.

Per session 1,261 This file is loaded in full into every session.
When invoked 1,261 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.01261 $0.01261
Opus 5 $0.00630 $0.00630
Sonnet 5 $0.00252 $0.00252
Haiku 4.5 $0.00126 $0.00126

Measured 2d ago against content hash 8944fc496909, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

openocd-mcp AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

AGENTS.md · 85 lines

How it starts

The opening of the file, as written. The whole thing — 85 lines — stays where its author put it; the contents beside it link to each section on GitHub.

openocd-mcp — AI Agent Guide

What This Project Does

An MCP server (via fastmcp) that exposes OpenOCD flashing & debugging workflows through natural-language-callable tools. It reuses the project's .vscode/launch.json as the source of debug targets — no extra config needed.

Quick Start

# Install dependencies
uv sync

# Run with custom tool paths
uv run openocd-mcp --openocd-path openocd --gdb-path arm-none-eabi-gdb

# Run in SSE/HTTP mode (for local AI clients)
uv run openocd-mcp -sse --host 127.0.0.1 --port 9000

Parameter priority: CLI args > env vars > config.json > built-in defaults.

Key Architecture

Module Responsibility
ProjectConfigManager Parses .vscode/launch.json, resolves ${workspaceFolder}, caches configs
OpenOCDController Spawns OpenOCD for flash (program) or as GDB server (target remote :3333)
GDBMISession GDB/MI 异步会话,协议解析、事件驱动、无需轮询提示符
DebugSessionManager Single active session; coordinates OpenOCD + GDB lifecycle
  • All tools return strings. Failures are prefixed with "Error: ".
  • launch.json supports JSON with C-style comments and trailing commas (custom parser in _parse_launch_content).

MCP Tools

Tool Purpose
set_project(project_dir) Load .vscode/launch.json from a project
refresh_debug_targets() Reload launch.json configs
flash_download(config_name, firmware_path?) One-shot flash via OpenOCD program
debug_start(config_name, firmware_path?) Start OpenOCD + GDB, load firmware, optionally run to entry point
debug_attach(config_name, firmware_path?) Attach to running target without reset/download (Attach mode)
debug_stop() Kill OpenOCD & GDB
debug_command(command) Send arbitrary GDB command to active session
debug_continue() Continue target execution (async, returns immediately via MI ^running)
debug_interrupt() Interrupt/pause running target (MI -exec-interrupt, Windows fallback to telnet halt)
debug_state() Get target execution state (running/stopped) and last stop reason
debug_status() JSON with session state, PIDs, available configs
get_runtime_config() Show effective OpenOCD/GDB paths and their sources
read_rtt(max_lines) Read RTT log from active debug session
shutdown() Gracefully shut down MCP server

Read the full file on GitHub · 85 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 85 lines · 1,261 tokens per session scan A 8944fc496909

Subscribe to this mod's changes

openocd-mcp AGENTS.md is an instructions file published in the GitHub repository luiox/openocd-mcp (8 stars, last pushed 3mo ago), licensed MIT. It adds 1,261 tokens to every session, about $0.0063 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other instructions, from other repositories

FastLED GEMINI.md

Gemini CLI instructions for FastLED/FastLED, a project described as: The FastLED library for colored LED animation on Arduino. Please direct questions/requests for help to the FastLED Reddit community: http://fastled.io/r We'd like to use github "issues" just for tracking library bugs / enhancements.

FastLED/FastLED · 9 tokens

kicad-happy GEMINI.md

Instructions for aklofas/kicad-happy, covering kicad-happy, agent guidelines, skills, running analysis and schematic analysis.

aklofas/kicad-happy · 1,207 tokens

brilliant_sdk AGENTS.md

Instructions for brilliantlabsAR/brilliant_sdk, covering brilliant sdk — agent guide, how an app works (the pattern behind everything), minimal reading paths, verify without hardware and testing.

brilliantlabsAR/brilliant_sdk · 1,817 tokens

NeoMind CLAUDE.md

Instructions for camthink-ai/NeoMind, covering neomind — edge ai platform for iot, development commands, ecosystem repositories, extension package contract (.nep) and device type template contract (json).

camthink-ai/NeoMind · 4,296 tokens

Nothan-OS CLAUDE.md

Instructions for Vinalinux-Org/Nothan-OS, covering claude.md — nothanos, hard rules, toolchain, driver and design philosophy.

Vinalinux-Org/Nothan-OS · 499 tokens

Meta-Spatial-SDK-Samples meta-quest.instructions.md

Instructions for meta-quest/Meta-Spatial-SDK-Samples: For this repository, prefer Meta Quest Agentic Tools, the Meta Horizon VS Code/Cursor extension, and the hzdb MCP server.

meta-quest/Meta-Spatial-SDK-Samples · 68 tokens