Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| lldb_run_command | Execute an arbitrary LLDB command and return the output. This is a flexible tool for running any LLDB command. Use this when
other specialized tools don't cover your specific need.
Common commands:
- 'help' - Show help for commands
- 'version' - Show LLDB version
- 'settings list' - Show all settings
- 'type summary list' - List type summaries
- 'platform list' - List available platforms
Args:
params: RunCommandInput containing the command and optional target
Returns:
str: Command output or error message |
| lldb_analyze_crash | Analyze a crashed program or core dump to determine the cause. This tool loads a core dump or crashed executable and provides:
- Backtrace showing the crash location
- Register state at crash time
- Local variables in the crash frame
- Loaded modules information
Args:
params: AnalyzeCrashInput with executable path and optional core file
Returns:
str: Crash analysis including backtrace, registers, and variables |
| lldb_set_breakpoint | Set a breakpoint in a program. Breakpoints can be set by:
- Function name: 'main', 'MyClass::method'
- File and line: 'main.cpp:42'
- Address: '0x400500'
- Regex: Use 'breakpoint set -r pattern'
Args:
params: SetBreakpointInput with location and optional condition
Returns:
str: Confirmation of breakpoint creation with details |
| lldb_examine_variables | Examine local variables and arguments at a breakpoint. Runs the program until the specified breakpoint, then displays
the values of local variables and function arguments.
Args:
params: ExamineVariablesInput with executable, breakpoint, and optional variable names
Returns:
str: Variable values at the breakpoint |
| lldb_disassemble | Disassemble machine code to view assembly instructions. Can disassemble:
- A named function: 'main', 'MyClass::method'
- An address range: '0x1000-0x1100' or '0x1000 0x1100'
- Current frame (when stopped at breakpoint)
Options:
- show_bytes: Include raw opcode bytes
- mixed: Interleave source code with assembly
Args:
params: DisassembleInput with target and display options
Returns:
str: Assembly listing |
| lldb_read_memory | Read and display memory contents at a specified address. Memory can be displayed in various formats:
- 'x': Hexadecimal (default)
- 'b': Binary
- 'd': Decimal
- 's': String (null-terminated)
- 'i': Instructions (disassembly)
Args:
params: ReadMemoryInput with address, count, and format
Returns:
str: Memory contents in requested format |
| lldb_evaluate | Evaluate a C/C++ expression in the debugger context. Expressions can include:
- Variable access: 'my_var', 'ptr->member'
- Array indexing: 'array[5]'
- Function calls: 'strlen(str)'
- Casts: '(int*)ptr'
- Arithmetic: 'x + y * 2'
- sizeof: 'sizeof(MyStruct)'
Args:
params: EvaluateExpressionInput with expression and context
Returns:
str: Expression result with type information |
| lldb_backtrace | Get a stack backtrace showing the call chain. The backtrace shows:
- Frame numbers (0 is current frame)
- Function names and addresses
- Source file and line numbers (if available)
- Module/library names
Args:
params: BacktraceInput with executable and stopping point
Returns:
str: Stack backtrace with frame information |
| lldb_source | List source code for a file, function, or current location. Can display:
- Source around a specific line
- Source for a named function
- Source at the current debug position
Args:
params: ListSourceInput specifying what source to show
Returns:
str: Source code listing with line numbers |
| lldb_symbols | Look up symbols (functions, variables, types) in an executable. Search types:
- 'name': Exact symbol name lookup
- 'regex': Regular expression pattern matching
- 'address': Find symbol at a specific address
- 'type': Look up a type definition
Args:
params: SymbolLookupInput with query and search type
Returns:
str: Symbol information including address and source location |
| lldb_registers | View CPU register values at a breakpoint. Register sets:
- 'general': General purpose registers (rax, rbx, rsp, etc.)
- 'float': Floating point registers
- 'vector': SIMD/vector registers (xmm, ymm)
- 'all': All register sets
Args:
params: RegistersInput with breakpoint and register selection
Returns:
str: Register values in hexadecimal format |
| lldb_watchpoint | Set a watchpoint to break when a variable is accessed. Watch types:
- 'write': Break when value is written (modified)
- 'read': Break when value is read
- 'read_write': Break on any access
Args:
params: WatchpointInput with variable and access type
Returns:
str: Confirmation of watchpoint creation |
| lldb_run | Run a program under the debugger with optional breakpoints. This tool:
1. Loads the executable
2. Sets any specified breakpoints
3. Runs the program (optionally stopping at entry)
4. Returns the state when stopped
Args:
params: RunProgramInput with executable, args, and breakpoints
Returns:
str: Program state after stopping (backtrace, variables) |
| lldb_threads | List all threads and their current state. Shows:
- Thread IDs and names
- Current execution point for each thread
- Stop reason (if stopped)
- Optionally: backtrace for each thread
Args:
params: ThreadsInput with executable and optional core file
Returns:
str: Thread listing with state information |
| lldb_images | List loaded executable images and shared libraries. Shows:
- Main executable
- Shared libraries (.so, .dylib, .dll)
- Load addresses
- File paths
Args:
params: ImageListInput with executable and optional filter
Returns:
str: List of loaded images with addresses |
| lldb_help | Get help on LLDB commands and usage. Provides:
- General LLDB usage (empty topic)
- Help on specific commands (e.g., 'breakpoint', 'memory')
- Command syntax and options
Args:
topic: Command or topic to get help on (empty for general help)
Returns:
str: Help text for the specified topic |
| lldb_version | Get LLDB version information. Returns:
str: LLDB version and build information |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |