Claude Desktop MCP client caches manifest/tools; no option to fetch updated tools dynamically

Resolved 💬 5 comments Opened Sep 12, 2025 by jigarvyasidea Closed Sep 16, 2025

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Claude Desktop MCP client caches the manifest/tools data in memory at runtime.
Even if the MCP server (running on EC2) updates tools.json on S3,
the client continues to use the cached data.
There is currently no option in the client or cloud_desktop_config.json to disable this cache or force fresh fetch per request.
This prevents updated tool definitions and descriptions from being immediately reflected on the client.

Proposed Solution

Provide a mechanism in Claude Desktop (or via configuration) to:

  • Disable client-side caching of MCP manifest/tools, or
  • Automatically detect changes in the server manifest/tools and fetch updates dynamically per request.

Alternative Solutions

  1. Server-side workarounds:
  • Always fetch fresh data from S3 inside the MCP server tool handlers.
  • This ensures tool outputs are up-to-date, but tool metadata/description still requires client restart.
  1. Manifest versioning:
  • Include a version number in manifest.json; update it whenever tools change.
  • Claude Desktop could detect version changes and refresh tools automatically.

Priority

High - Significant impact on productivity

Feature Category

MCP server integration

Use Case Example

  1. Developer updates tools.json in S3 with new tool description or parameters.
  2. MCP server fetches fresh data from S3 per request.
  3. Claude Desktop client should display the updated tools without requiring a restart.

Additional Context

  • MCP Server running on EC2.
  • Tools are loaded dynamically via S3.
  • Currently, only tool output (data processed) can be made fresh per request; tool metadata requires client restart due to runtime cache.

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗