From b79fb898664d52699623b6cbff508ca7b9997bf8 Mon Sep 17 00:00:00 2001 From: YueGuobin Date: Mon, 15 Jun 2026 21:51:17 +0800 Subject: [PATCH] Fix: add missing _filter_link_response function Previously the function was referenced in create_link_handler but never defined, causing NameError at runtime. --- gns3server/api/routes/mcp/links.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gns3server/api/routes/mcp/links.py b/gns3server/api/routes/mcp/links.py index 5ddd0389d..4b3837f55 100644 --- a/gns3server/api/routes/mcp/links.py +++ b/gns3server/api/routes/mcp/links.py @@ -96,6 +96,16 @@ VALID_LINK_FIELDS = { } +LINK_DEFAULT_FIELDS = ["link_id", "link_type", "nodes"] + + +def _filter_link_response(link: dict, fields: list[str] = None) -> dict: + """Filter link response to only include requested fields.""" + if not fields: + fields = LINK_DEFAULT_FIELDS + return {k: link[k] for k in fields if k in link} + + def get_links_handler(params: dict[str, Any], gns3_ctx: dict[str, Any]) -> dict[str, Any]: project_id = params.get("project_id") if not project_id: