issue: Problem with MCP server of memos app

在 Open WebUI 中集成 memos MCP server 后,用户触发 memos_search_memos 工具(查询参数为 ovh ),测试连接成功但实际搜索返回空结果。用户在任意浏览器中发起搜索请求均无返回。

issue: Problem with MCP server of memos app

issue: Problem with MCP server of memos app

快速结论:此问题发生在 Open WebUI 调用 memos MCP server 的搜索工具时,由于 MCP 工具返回的数据结构不符合 Open WebUI 对 CallToolResult 的验证要求,导致搜索结果显示为空。优先排查 Open WebUI 对 MCP 响应中 structuredContent 字段的处理逻辑。

问题场景

在 Open WebUI 中集成 memos MCP server 后,用户触发 memos_search_memos 工具(查询参数为 ovh),测试连接成功但实际搜索返回空结果。用户在任意浏览器中发起搜索请求均无返回。

报错原文

View Result from memos_search_memos
Input
query ovh

Output
1 validation error for CallToolResult
structuredContent
  Input should be a valid dictionary [type=dict_type, input_value=[{'name': 'memos/N3eGyJtd...complete_tasks': True}}], input_type=list]
    For further information visit https://errors.pydantic.dev/2.13/v/dict_type

原因分析

可能原因:Open WebUI 在处理 MCP 工具返回的 CallToolResult 对象时,期望 structuredContent 是一个字典(dict)类型,但 memos MCP server 实际返回的是一个列表(list)结构。这导致 Pydantic 验证失败,工具输出被丢弃,用户看到的结果为空。

相关联的已知缺陷可参考 #20629(MCP server 响应失败)和 #24038(MCP 工具结果中 resource content 类型被静默丢弃),这两个 Issue 也指向了 MCP 结果处理层的同一类 Schema 校验问题。

环境排查

  • Open WebUI 版本:0.10.2(使用 Docker 方式部署)
  • 操作系统:Debian Testing
  • Ollama 版本:不适用(n/a)
  • memos 版本:请确认 memos 是否使用最新版本(Issue 中提及 memos 日志无错误)
  • MCP server 配置:请检查 memos MCP server 的连接配置和日志

解决步骤

  1. 确认 Open WebUI 版本:确保使用的是最新版 Open WebUI(Issue 提交时版本为 0.10.2,建议升级到更新版本检查是否已修复)。
  2. 检查 MCP server 端数据结构:在 memos MCP server 的实现中,确认 structuredContent 字段返回的是字典格式还是列表格式。可优先参考 memos 的 MCP server 实现代码和 memos 相关 Issue
  3. 可优先尝试:修改 memos MCP server 返回值格式(如果可自定义)——将 structuredContent 从列表改为单层字典格式,或在列表外层包一层字典。
  4. 临时降级或绕过:如果无法修改 memos MCP server,考虑在 Open WebUI 的 MCP 结果处理逻辑中增加对列表输入的支持(参考 #24038 中的修复思路)。
  5. 查阅关联 Issue:仔细阅读 #20629#24038 中的讨论和补丁,它们可能有直接可用的修复。

验证方法

修复后,在 Open WebUI 中再次对 memos MCP server 发起包含搜索词的查询(例如 “search for all notes related to ovh”),确认搜索工具返回了正确的笔记结果,不再产生 CallToolResult 验证错误。同时检查 Docker 容器日志中不再出现 validation error for CallToolResult 相关输出。

参考来源

open-webui/open-webui #27021

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

celebrityanime
celebrityanime
文章: 13224

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注