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
| Name | Required | Description | Default |
|---|---|---|---|
| expression | Yes | C/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} - src/gdb_multiarch_mcp/server.py:319-323 (registration)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): - src/gdb_multiarch_mcp/server.py:512-514 (handler)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)