McuBuddy
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCUBUDDY_TOOL_PROFILE | No | Tool profile to use. Set to 'full' to expose the complete expert catalog from earlier alpha releases. | core |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_runtime_configD | – |
| inspect_project_memoryC | Read target-project memory or prepare a read-only onboarding proposal. |
| write_project_memoryC | Write canonical memory inside a confirmed target project. |
| match_chip_nameB | Resolve a chip alias to a backend-specific target name. |
| get_target_infoC | Return alias-match and device-patch info for a target on a given backend. |
| list_tool_safetyC | List safety levels for public McuBuddy tools. |
| list_validation_recordsB | List machine-readable real-hardware validation records. |
| pack_diagnoseB | Find and checksum-verify the managed CMSIS-Pack for a target. |
| configure_probeB | Set probe connection parameters. Run list_connected_probes first to find unique_id. |
| configure_elfB | Set the ELF/AXF file path for symbol resolution. |
| doctorB | Run a read-only environment, dependency, probe, target, and config preflight. |
| first_contactC | Run the safest first board contact flow and suggest next debug tools. |
| list_connected_probesA | List all probes currently connected to this machine. Start here if unsure what probe to use. |
| probe_connectD | – |
| read_stopped_contextD | – |
| elf_loadD | – |
| disconnect_allD | – |
| finish_debug_sessionB | Stop registered actuators, reset and run the target, then disconnect. |
| svd_loadA | Load a CMSIS-SVD file to enable peripheral register interpretation. SVD files define the register map of a chip. You can find SVD files in your chip vendor's SDK, or at https://github.com/posborne/cmsis-svd-data Example: svd_load('/path/to/STM32L496.svd') |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
Several tools have unclear or overlapping boundaries: configure_probe, probe_connect, and first_contact all relate to probe/debug session startup, while disconnect_all and finish_debug_session both end sessions. match_chip_name and get_target_info also overlap in alias resolution, and some tools have no description at all, making selection risky.
Most tools follow a verb_noun pattern (list_, configure_, get_), but several break it: elf_load, svd_load, and pack_diagnose are noun_verb, and doctor and first_contact are one-off non-pattern names. Overall readable but noticeably inconsistent.
Nineteen tools is on the heavy side for an MCU debug server, and some tools could be consolidated, especially around probe connection and session teardown. Still, the count is not extreme and many tools serve distinct preflight, validation, and configuration purposes.
The tool surface covers setup, probe detection, configuration, ELF/SVD loading, and a few validation/read-only checks, but core MCU debugging operations are missing: no read/write memory, no register access, no step/continue, no breakpoints, and no flash programming. This is a significant gap for a debug-oriented server.