fix mcp list

This commit is contained in:
larssand
2026-06-22 22:31:04 +02:00
parent 8f102b3fb9
commit 5bd5710ea0

View File

@@ -275,7 +275,13 @@ def serve_dashboard(host: str, port: int, status_file: str, *, image_dir: str |
content = result.get("result", {}).get("content", [])
text = next((item.get("text", "") for item in content if isinstance(item, dict)), "")
if isinstance(result.get("result"), dict) and result["result"].get("isError"):
raise RuntimeError(str(text or "Graylog list_streams failed"))
fallback = client.call_tool("list_resource", {"resource_type": "stream"})
resources = fallback.get("result", {}).get("structuredContent", {}).get("resources", [])
streams = [
{"id": str(item.get("uri", "")).rsplit(":", 1)[-1], "title": item.get("title", item.get("name", "")), "description": item.get("description", "")}
for item in resources if isinstance(item, dict) and item.get("uri")
]
else:
if not text:
raise RuntimeError("Graylog list_streams returned no text content")
streams = json.loads(text)