[Bug]: MCP Gateway returns hardcoded `serverInfo.name = “litellm-mcp-server”` for every `/mcp/{alias}` endpoint

用户在 LiteLLM 代理的 config.yaml 中配置了多个 mcp_servers (如 Grafana、Home Assistant、N8N 等),并通过 /mcp/{alias} 端点访问每个服务器。MCP 客户端(如 VS Code MCP 选择器、MCP Inspector、Fas

[Bug]: MCP Gateway returns hardcoded `serverInfo.name = "litellm-mcp-server"` for every `/mcp/{alias}` endpoint

[Bug]: MCP Gateway returns hardcoded `serverInfo.name = “litellm-mcp-server”` for every `/mcp/{alias}` endpoint

快速结论:该问题发生在 LiteLLM 代理配置了多个 MCP 服务器时,所有 `/mcp/{alias}` 端点返回的 InitializeResult.serverInfo.name 均硬编码为 "litellm-mcp-server",导致 MCP 客户端无法区分不同服务器。问题根因在源码中,当前未确认已合并修复,优先检查您使用的 LiteLLM 版本是否包含此补丁。

问题场景

用户在 LiteLLM 代理的 config.yaml 中配置了多个 mcp_servers(如 Grafana、Home Assistant、N8N 等),并通过 /mcp/{alias} 端点访问每个服务器。MCP 客户端(如 VS Code MCP 选择器、MCP Inspector、FastMCP)在初始化握手后获取的服务器名称始终是 "litellm-mcp-server",导致所有服务器在客户端界面中无法区分。

报错原文

# 每个 /mcp/{alias} 端点返回相同的 serverInfo.name
grafana        -> litellm-mcp-server 1.0.0
home_assistant -> litellm-mcp-server 1.0.0
n8n_mcp        -> litellm-mcp-server 1.0.0
playwright     -> litellm-mcp-server 1.0.0

原因分析

可能原因是 LiteLLM 在 litellm/proxy/_experimental/mcp_server/utils.py 中硬编码了服务器名称常量:

LITELLM_MCP_SERVER_NAME = "litellm-mcp-server"
LITELLM_MCP_SERVER_VERSION = "1.0.0"
LITELLM_MCP_SERVER_DESCRIPTION = "MCP Server for LiteLLM"

同时在 litellm/proxy/_experimental/mcp_server/server.py 中使用该常量创建单个 Server 实例处理所有 /mcp/{alias} 请求,URL 路径中的 alias 从未传递给 InitializeResult.serverInfo。这导致每个端点的服务器身份信息均一致。

环境排查

  • 确认 LiteLLM 版本:运行 litellm --version 或检查 Python 包版本
  • 检查 config.yaml 中是否配置了多个 mcp_servers 及其 alias 字段
  • 验证 MCP 客户端(如 FastMCP)复现问题:参考 Issue 中的最小复现脚本

解决步骤

  1. 检查当前版本是否包含修复:查看 LiteLLM 发布说明或 Git 历史,确认 Issue #29800 的补丁是否已合并。截至关闭日期 2026-06-09,Issue 标记为已关闭,但评论中仍有用户询问 “Did this get merged? The issue is still there”,表明可能未合并或未完全修复。可优先尝试升级到最新版本。
  2. 临时规避方案(手动修改源码):如果未修复,考虑在 litellm/proxy/_experimental/mcp_server/server.py 中修改 Server 初始化逻辑,将 alias 参数传递到 serverInfo.name 中。注意:这是临时修改,需备份源码,并在升级 LiteLLM 时恢复。
  3. 等待官方修复或提交 PR:可监控 Issue 或相关 PR 的进展,或自行提交 PR 贡献代码。
  4. 使用聚合端点 /mcp 作为回退:如果只需要单一网关身份,可暂时使用聚合端点 /mcp(不指定 alias),但会失去服务器区分能力。

验证方法

运行 Issue 中提供的最小复现脚本,检查每个 alias 端点返回的 serverInfo.name 是否已匹配对应的 alias(如 "grafana")。如果所有端点仍然返回 "litellm-mcp-server",则问题未解决。

参考来源

BerriAI/litellm #29800

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

celebrityanime
celebrityanime
文章: 9599

发表回复

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