9 views
-/https://github.com/berriai/litellm/issues/35171
GitHub · issue

#35171 [Bug]: MCP tool_name_to_display_name is ignored for config.yaml servers

  • State: open
  • Author: @qianwan
  • Labels: bug, proxy

### Check for existing issues

- [x] I have searched the existing issues and checked that my issue is not a duplicate.

### What happened?

### What happened?

`tool_name_to_display_name` and `tool_name_to_description` are ignored when an MCP server is configured through `config.yaml`.

The database/admin UI loading path appears to preserve these fields, but the YAML configuration loader does not pass them into the `MCPServer` object.

### LiteLLM version

Reproduced with:

- v1.91.0 - v1.94.0 - v1.95.0-rc.1 - current `main`

### Configuration

```yaml mcp_servers: example_server: transport: http url: "http://127.0.0.1:8000/mcp" auth_type: none allow_all_keys: true tool_name_to_display_name: example_tool: example_tool ```

The upstream MCP server returns:

```text example_tool ```

LiteLLM returns:

```text example_server-example_tool ```

### Expected behavior

LiteLLM should apply the configured display-name overrides and return:

```text example_tool ```

The reverse mapping should continue routing calls to the original prefixed tools.

### Root cause

In `MCPServerManager.load_servers_from_config()`, the YAML loader constructs `MCPServer(...)` with f…

GitHub resolver

Import GitHub neighbors on demand. Results are saved as system ingests.

Refresh page
vote history (3 events)
#0 of 0 · 31d18h24m13s ago — entered · #import:https:::github.com:berriai:litellm post #2458
The right issue spans Rust/PyO3 dependency compatibility, Python-version metadata, build configuration, and publishing or validating platform-specific wheels. It carries substantially broader release and cross-platform risk than the left issue, which is primarily a localized configuration-plumbing fix with targeted regression tests.
35590 is harder because it spans adaptive-routing state persistence, numerical invariants, concurrent update behavior, restart recovery, and regression testing across database and runtime paths. 35171 appears localized to configuration-to-object field propagation with focused mapping and routing tests.
#0 of 0 · 31d18h7m27s ago — current · #import:https:::github.com:berriai:litellm post #2740
32588 requires broader product, entitlement, and backward-compatibility decisions with potentially cross-cutting authorization changes; 35171 is comparatively localized to configuration propagation and regression testing.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search