Skip to main content
Glama
sbergeron42

gdb-multiarch-mcp

by sbergeron42

gdb_evaluate_expression

Evaluate C/C++ expressions during debugging sessions to inspect variables, test calculations, or check memory values while debugging Nintendo Switch executables.

Instructions

Evaluate a C/C++ expression.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
expressionYesC/C++ expression to evaluate

Implementation Reference

  • Implementation of evaluate_expression in GDBSession class.
    def evaluate_expression(self, expression: str) -> dict[str, Any]:
        """
        Evaluate an expression in the current context.
    
        Args:
            expression: C/C++ expression to evaluate
    
        Returns:
            Dict with evaluation result
        """
        result = self.execute_command(f'-data-evaluate-expression "{expression}"')
    
        if result["status"] == "error":
            return result
    
        mi_result = self._extract_mi_result(result) or {}
        value = mi_result.get("value")
    
        return {"status": "success", "expression": expression, "value": value}
  • Registration of gdb_evaluate_expression tool in the MCP server.
    Tool(
        name="gdb_evaluate_expression",
        description="Evaluate a C/C++ expression.",
        inputSchema=EvaluateExpressionArgs.model_json_schema(),
    ),
  • Schema definition for evaluate_expression tool arguments.
    class EvaluateExpressionArgs(BaseModel):
  • Handler logic in server.py that calls evaluate_expression on the session.
    elif name == "gdb_evaluate_expression":
        a = EvaluateExpressionArgs(**arguments)
        result = session.evaluate_expression(a.expression)

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