Added tool info for every MCP server.

This commit is contained in:
famez
2026-02-08 20:03:43 +01:00
parent 6cd91830b6
commit 8b103031b8

View File

@@ -496,7 +496,9 @@ class MCPScreen(ModalScreen):
servers = self.mcp_manager.get_all_servers()
for server in servers:
root.add(server.name, data={"server": server})
server_node = root.add(server.name, data={"server": server})
for tool in server.tools:
server_node.add(tool['name'], data={"tool": tool})
try:
tree.focus()
@@ -514,6 +516,7 @@ class MCPScreen(ModalScreen):
node = event.node
try:
mcp = node.data.get("server") if node.data else None
tool = node.data.get("tool") if node.data else None
# Update right-hand description pane
try:
@@ -530,6 +533,8 @@ class MCPScreen(ModalScreen):
connected_icon = "🟢" if mcp.config.enabled else "🔴"
text.append(f"Connected: {connected_icon}\n", style="#9a9a9a")
elif tool is not None:
text.append(f"{tool['description']}\n", style="#d4d4d4")
else:
text.append(f"Choose a server\n", style="#d4d4d4")
desc_widget.update(text)