diff --git a/cli.py b/cli.py index dca9268..2f5097e 100644 --- a/cli.py +++ b/cli.py @@ -83,9 +83,10 @@ async def cmd_status() -> None: print("[cli] Получаю список заданий...") journal = load_journal_toolsets() tools = {t.name: t for t in journal.tasks_submissions_tools} - tool = tools.get("tasks_list") + tool = tools.get("mcp__journal-bh-professor__tasks_list") \ + or next((v for k, v in tools.items() if "tasks_list" in k), None) if not tool: - print("Ошибка: инструмент tasks_list не найден") + print(f"Ошибка: инструмент tasks_list не найден. Доступны: {list(tools.keys())}") return raw = await tool.ainvoke({"courseId": "698b49da77cb6d4d2e43ce78"}) diff --git a/ui.py b/ui.py index 736f331..bf31c71 100644 --- a/ui.py +++ b/ui.py @@ -464,9 +464,15 @@ with tab_status: async def _fetch(): j = load_journal_toolsets() + # Инструменты имеют префикс mcp__journal-bh-professor__ tools = {t.name: t for t in j.tasks_submissions_tools} - t = tools.get("tasks_list") + full_name = "mcp__journal-bh-professor__tasks_list" + t = tools.get(full_name) if not t: + # fallback: ищем по любому имени содержащему tasks_list + t = next((v for k, v in tools.items() if "tasks_list" in k), None) + if not t: + st.warning(f"Инструмент tasks_list не найден. Доступны: {list(tools.keys())}") return [] raw = await t.ainvoke({"courseId": "698b49da77cb6d4d2e43ce78"}) text = next((x["text"] for x in raw if x.get("type") == "text"), str(raw)) if isinstance(raw, list) else str(raw)