Structured trace levels
Prefix a line with !I, !W or !E and it's colored as info, warning or error. ANSI colors work too.
Built-in MCP server · Serial terminal for Windows and Linux
Termethos bridges AI coding agents and embedded systems through a built-in MCP server. Connect Claude Code and other AI agents to real devices for intelligent debugging, live monitoring, and hardware interaction.
Your AI writes the firmware. Termethos connects it to the hardware.
$49 $24.50 one-time purchase −50% until December 31, 2026
AI agents
Devices
How it works
Your agent already reads and writes your firmware source. Termethos gives it a way to see and talk to the device that runs it.
AI coding agents
Termethos on your computer
Embedded devices
read_traceThe newest lines, only lines after a cursor, only warnings and errors, or lines matching a regular expression. Up to 50,000 lines are kept by default.
wait_for_traceWait up to 60 seconds for a line such as a boot banner or ready, instead of polling.
read_dashboardAll 24 dashboard fields, when each one last changed and which changed last.
send_commandSends a command with your line ending and returns the lines the device printed in reply.
run_quick_commandRuns your saved quick commands, including JavaScript scripts that set DTR and RTS to reset a board, if you allow scripts.
create_connection · update_connection · connectCreates connections and sets their port, baud rate and serial settings, switches between them, and opens or closes the port, for example around a flash.
You choose what agents may do: read, send commands, run scripts, connect and disconnect, create and edit connections. All tools
The MCP server is built into Termethos, so there's nothing else to install. Turn it on, add it to your agent with one command, and ask in plain language.
Runs inside Termethos, on 127.0.0.1 only, with a token for every request. It's off until you turn it on.
The setup dialog shows a ready-to-run claude mcp add command with your port and token. Claude Code guide
Cursor and VS Code work with a few lines of JSON, and so does any client that supports Streamable HTTP. Setup for each
The agent reads leveled log lines and live values from the board, not a summary you typed, and checks its fix after you flash.
Choose what agents may do: read, send commands, run scripts, connect, or create and edit connections. Every agent command shows as [agent] in the history.
claude mcp add --transport http termethos http://127.0.0.1:7471/mcp --header "Authorization: Bearer <token>"
# read only
Read the last 200 trace lines and tell me why the I2C sensor stops answering.
# with commands allowed
Run the "Reset board" quick command, wait for "ready",
and tell me if any errors were printed during boot.
# after flashing your fix
Wait for the boot banner, then check the dashboard:
is field 4 (free heap) still dropping?
Try it with your agent today. Simulation mode is free, no board needed.
Everything your agent uses, you get first: a serial terminal built for long debugging sessions on real boards.
Prefix a line with !I, !W or !E and it's colored as info, warning or error. ANSI colors work too.
Print @{3:21.5} and field 3 shows 21.5. 24 fields, with the last change highlighted, and the trace stays clean.
Quick commands can run a script with the serial port, to send test sequences or raw bytes, or to toggle DTR and RTS.
Bind commands to buttons and keys, like an emergency stop on space. Sent commands are kept in the history.
Standard and custom baud rates such as 74880, and DTR and RTS states chosen per connection, so an Arduino doesn't reset when you connect.
Keep a profile for each board and switch in one click. Termethos reconnects by itself after a reset or re-plug.
Save a session as .log or .jsonl with millisecond times, or copy a Markdown summary to paste into any AI chat.
Boxed banners, alternating line shading and error highlighting make the important line stand out in a fast log.
// DBG_LogLn() is just printf() + newline
DBG_Log("\x1b[2J"); // clear trace
DBG_LogLn("!#MicroBot Firmware v1.0");
DBG_LogLn("!ISystem initialization started");
DBG_LogLn("!WSensor 1 data lost");
DBG_LogLn("!EError initializing device");
DBG_Log("@{8:21}"); // dashboard field 8
See it in action
Without Termethos you are the bridge: you flash, copy the log, paste it back and repeat. With it, the agent reads the board itself.
You
In Claude Code: “The ESP32 reboots right after Wi-Fi connects. Find out why.”
Agent → Termethos
The agent calls read_trace with level: "error" and reads the lines around the reboot, through the connection you have open.
Agent
It compares the reset reason in the log with values on the dashboard from read_dashboard, such as supply voltage or free heap.
Agent → Device
It sends diagnostic commands with send_command, or runs a quick command such as your reset script, and reads the reply.
Agent
It explains the cause and proposes or edits the change in your firmware source, in your editor.
Agent → Termethos
The agent frees the port with disconnect, flashes the fix, reconnects, waits for the boot banner with wait_for_trace and checks that the errors are gone.
> The ESP32 reboots right after Wi-Fi connects. Find out why.
termethos · read_trace level: "error", lines: 50
→ lines with the reset reason, cursor 18342
termethos · read_dashboard
→ 24 fields, last changed: 4
termethos · send_command "heap", waitMs: 1000
→ sent: true, the device's reply lines
… the agent explains the cause, edits and flashes the firmware …
termethos · wait_for_trace pattern: "ready", since: 18342
→ matched: true
termethos · read_trace level: "error", since: 18342
→ lines: [] (no errors since boot)
The tool names and parameters are the real ones. What they return depends on your device.
Who it's for
Debug microcontrollers with leveled logs and a live dashboard, and turn diagnostic steps into quick commands and scripts that run the same way every time.
Connect Claude Code, Cursor or VS Code to the board on your desk, so the agent checks its firmware changes on real hardware instead of guessing.
Watch sensor readings and connection state on the dashboard, keep a profile per device, and export sessions for a bug report.
Inspect controller output while motors run, bind start and stop commands to hotkeys, and let an agent read the trace during a test.
A friendlier serial monitor for ESP32, RP2040 and Arduino projects, with AI integration there when you want it.
Serial monitor settings, a reset script and the agent loop for ESP32 boards.
Why Termethos
Many terminals show serial output, and some have dashboards or scripting. Termethos puts them in one place, and gives your AI agent direct access to all of it.
Pricing
Termethos — $49 one-time purchase, now $24.50 with 50% off. Try everything free first.
Simulation mode
Download Termethos and try the whole app with a simulated device. Set up your AI agent against the simulated trace and dashboard before you buy.
Termethos license
50% off until December 31, 2026. The code APTERM50 is applied for you at checkout.
Unlock real serial ports, so you and your AI agent work with the actual hardware.
Secure checkout by Polar, our reseller. Any sales tax or VAT is shown before you pay. For Windows and Linux.
FAQ
Authorization header.read_trace, read_dashboard and send_command on the connection you have open. See all tools/dev/ttyUSB… or /dev/ttyACM… on Linux, directly over USB or through a USB-to-serial adapter. That includes ESP32, ESP8266, STM32 (through an ST-LINK virtual COM port or a USB-UART adapter), RP2040 and RP2350, Arduino boards and most other microcontrollers. You can add custom baud rates, such as 74880.printf() output you already have.127.0.0.1 and needs a token for every request, so other computers can't reach it. Termethos doesn't send your serial data anywhere. Keep in mind that the AI agent you connect sends what it reads to its own model provider, as it does with the rest of your code.Download Termethos and try it free in simulation mode. When you're ready, a one-time $24.50 license unlocks real serial ports, 50% off its usual $49 until December 31, 2026.