[all-commits] [llvm/llvm-project] 3c4c2f: [lldb] Expose debuggers and target as resources th...
Jonas Devlieghere via All-commits
all-commits at lists.llvm.org
Fri Jul 11 15:49:48 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 3c4c2fada26f479be7c2f9744f5b7364f7612446
https://github.com/llvm/llvm-project/commit/3c4c2fada26f479be7c2f9744f5b7364f7612446
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Target/Target.h
M lldb/source/Plugins/Protocol/MCP/CMakeLists.txt
M lldb/source/Plugins/Protocol/MCP/MCPError.cpp
M lldb/source/Plugins/Protocol/MCP/MCPError.h
M lldb/source/Plugins/Protocol/MCP/Protocol.cpp
M lldb/source/Plugins/Protocol/MCP/Protocol.h
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h
A lldb/source/Plugins/Protocol/MCP/Resource.cpp
A lldb/source/Plugins/Protocol/MCP/Resource.h
M lldb/source/Plugins/Protocol/MCP/Tool.cpp
M lldb/source/Plugins/Protocol/MCP/Tool.h
M lldb/unittests/Protocol/ProtocolMCPServerTest.cpp
M lldb/unittests/Protocol/ProtocolMCPTest.cpp
Log Message:
-----------
[lldb] Expose debuggers and target as resources through MCP (#148075)
Expose debuggers and target as resources through MCP. This has two
advantages:
1. Enables returning data in a structured way. Although tools can return
structured data with the latest revision of the protocol, we might not
be able to update before the majority of clients has adopted it.
2. Enables the user to specify a resource themselves, rather than
letting the model guess which debugger instance it should use.
This PR exposes a resource for debuggers and targets.
The following URI returns information about a given debugger instance:
```
lldb://debugger/<debugger id>
```
For example:
```
{
uri: "lldb://debugger/0"
mimeType: "application/json"
text: "{"debugger_id":0,"num_targets":2}"
}
```
The following URI returns information about a given target:
```
lldb://debugger/<debugger id>/target/<target id>
```
For example:
```
{
uri: "lldb://debugger/0/target/0"
mimeType: "application/json"
text: "{"arch":"arm64-apple-macosx26.0.0","debugger_id":0,"path":"/Users/jonas/llvm/build-ra/bin/count","target_id":0}"
}
```
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list