From e72291bc9a092e2b21c1115df50fdd1da82274e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=99=AB?= Date: Thu, 12 Feb 2026 15:40:15 +0800 Subject: [PATCH] Fix the bug where the mcp service tools/list does not return knowledge base IDs information. (#13123) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix the issue where the server-side parameter validation fails when the id parameter is None in the asynchronous list_datasets method. ### What problem does this PR solve? Fix the issue where the server-side parameter validation fails when the id parameter is None in the asynchronous list_datasets method. ### Type of change - [√ ] Bug Fix (non-breaking change which fixes an issue) --- mcp/server/server.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/mcp/server/server.py b/mcp/server/server.py index 07cb10d94..9b1bd4f1d 100644 --- a/mcp/server/server.py +++ b/mcp/server/server.py @@ -138,7 +138,13 @@ class RAGFlowConnector: id: str | None = None, name: str | None = None, ): - res = await self._get("/datasets", {"page": page, "page_size": page_size, "orderby": orderby, "desc": desc, "id": id, "name": name}, api_key=api_key) + params = {"page": page, "page_size": page_size, "orderby": orderby, "desc": desc} + if id: + params['id'] = id + if name : + params['name'] = name + + res = await self._get("/datasets", params, api_key=api_key) if not res or res.status_code != 200: raise Exception([types.TextContent(type="text", text="Cannot process this operation.")])