Can’t view the MCP Details Page

用户在 Windows 系统上通过 Chrome 浏览器,以 Docker 自托管方式部署 LobeChat 最新版本(Web 桌面端),尝试访问市场中的 MCP 详情页面时触发。

Can't view the MCP Details Page

Can’t view the MCP Details Page

快速结论:该报错通常出现在 LobeChat 自托管 Docker 部署场景中,主要原因是由于 HTTP 访问导致浏览器 crypto.subtle API 不可用,或 M2M token 过期。优先尝试将访问协议切换到 HTTPS。

问题场景

用户在 Windows 系统上通过 Chrome 浏览器,以 Docker 自托管方式部署 LobeChat 最新版本(Web 桌面端),尝试访问市场中的 MCP 详情页面时触发。

报错原文

Request error: {"error":"invalid_token","error_description":"Access token is invalid or expired"}
Error fetching mcp detail: Error [MarketAPIError]: invalid_token

原因分析

  • HTTP 访问(最常见):如果通过 http:// 而非 https:// 访问实例,浏览器的 crypto.subtle API 不可用,这会破坏市场访问所需的 PKCE 认证流程。
  • M2M token 过期/时机问题:用于市场 API 调用的机器对机器(M2M)令牌可能已过期或未能正确设置。

环境排查

  • 确认 LobeChat Docker 镜像是否已更新至最新版本(latest)。
  • 确认访问协议:当前是通过 http:// 还是 https:// 访问实例。
  • 检查是否有配置 MARKET_TRUSTED_CLIENT_IDMARKET_TRUSTED_CLIENT_SECRET 环境变量。

解决步骤

  1. 切换到 HTTPS 访问(可优先尝试):这是最直接的修复方式。为 Docker 部署配置有效的 SSL 证书,确保通过 https:// 访问 LobeChat 实例。
  2. 设置可信客户端环境变量:如果无法切换到 HTTPS,可以通过设置以下环境变量绕过脆弱的 M2M cookie 流程:
    MARKET_TRUSTED_CLIENT_ID=your_client_id
    MARKET_TRUSTED_CLIENT_SECRET=your_client_secret
  3. 创建在线账号:在 LobeChat 设置中创建一个在线账号(Online Profile),这可以为市场访问建立合适的凭证。
  4. 确保拉取的是最新的 Docker 镜像,因为近期 PR(如 #15923)已改进了认证错误处理,使其能够更优雅地降级而不是直接抛错。

验证方法

完成上述任一解决步骤后,重新加载 MCP 详情页面。如果不再显示 invalid_token 错误且能够正常查看详情,则问题已解决。

参考来源

lobehub/lobe-chat #16026

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

celebrityanime
celebrityanime
文章: 9616

发表回复

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