Skip to main content
Glama
sbergeron42

gdb-multiarch-mcp

by sbergeron42

switch_my_bt

Generate absolute address backtraces for Nintendo Switch debugging by walking the frame pointer chain. Use with gdb-multiarch-mcp to analyze game execution flow.

Instructions

Print the backtrace as absolute addresses by walking the frame pointer chain. Often misses the first address — use 'p/x $lr' for that.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The handler in `call_tool` that executes the `my_bt` command via `session.execute_command`.
    elif name == "switch_my_bt":
        result = session.execute_command("my_bt")
  • Tool definition and registration for `switch_my_bt`.
        name="switch_my_bt",
        description=(
            "Print the backtrace as absolute addresses by walking the frame pointer "
            "chain. Often misses the first address — use 'p/x $lr' for that."
        ),
        inputSchema=NO_ARGS_SCHEMA,
    ),
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Discloses important behavioral limitation (misses first address) and implementation method (walking frame pointer chain). Implies read-only operation via 'Print', though could explicitly state no side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero waste. First sentence defines function and mechanism; second provides critical limitation and workaround. Perfectly front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without output schema, the description adequately explains the output format ('absolute addresses') and a key limitation. Given the tool's narrow scope (0 parameters, simple output), this is sufficient, though mentioning read-only safety would strengthen it further.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has zero parameters. Baseline score of 4 applies as there are no parameters requiring semantic clarification.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool prints backtraces as absolute addresses using frame pointer chain walking. Specific about method and output format. However, it does not explicitly differentiate from sibling 'switch_my_bt2', which appears to be a variant.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear guidance about a key limitation ('Often misses the first address') and explicitly recommends an alternative command ('p/x $lr') for that case. Lacks explicit comparison to sibling tools like 'switch_my_bt2' for when to use which variant.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sbergeron42/gdb-multiarch-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server