Skip to content

Proposal: Lazy Tool Hydration for Large Tool Sets #1978

@neverinfamous

Description

@neverinfamous

Is your feature request related to a problem? Please describe.

MCP servers with many tools (50+) consume significant tokens listing all tool schemas. For example, a MySQL MCP server with 106 tools sends ~207KB (~54,600 tokens) on every initialization—even when the model only needs 2-3 tools. This creates unnecessary cost and latency for servers with comprehensive tool sets.

Describe the solution you'd like

Add Lazy Tool Hydration with two protocol changes:

  1. minimal flag for tools/list: Return only tool names, categories, and summaries (~5K tokens) instead of full schemas
  2. New tools/get_schema method: Fetch full schema on-demand for specific tools (~400 tokens each)

This provides 91% token savings while maintaining backward compatibility—servers without the capability continue to work unchanged.

Describe alternatives you've considered

  • Pagination only: Doesn't reduce per-page token cost
  • Server-side filtering: Still requires schema knowledge for filtering
  • Schema compression: Limited gains, adds complexity

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions