claude-code - 💡(How to fix) Fix [DOCS] MCP docs missing `alwaysLoad` server configuration option [1 comments, 1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#54158Fetched 2026-04-29 06:34:44
View on GitHub
Comments
1
Participants
1
Timeline
6
Reactions
0
Author
Participants
Timeline (top)
labeled ×4closed ×1commented ×1

Code Example

{
"mcpServers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/",
"alwaysLoad": true
}
}
}
RAW_BUFFERClick to expand / collapse

Documentation Type

Missing documentation (feature not documented)

Documentation Location

https://code.claude.com/docs/en/mcp

Section/Topic

Scale with MCP Tool Search and the MCP server configuration examples for .mcp.json

Current Documentation

The docs currently say:

Tool search is enabled by default. MCP tools are deferred rather than loaded into context upfront, and Claude uses a search tool to discover relevant ones when a task needs them. Only the tools Claude actually uses enter context.

Control tool search behavior with the ENABLE_TOOL_SEARCH environment variable:

| Value | Behavior | | (unset) | All MCP tools deferred and loaded on demand. Falls back to loading upfront on Vertex AI or when ANTHROPIC_BASE_URL is a non-first-party host | | true | All MCP tools deferred, including on Vertex AI and for non-first-party ANTHROPIC_BASE_URL | | auto | Threshold mode: tools load upfront if they fit within 10% of the context window, deferred otherwise | | false | All MCP tools loaded upfront, no deferral |

And the .mcp.json config documentation currently lists expansion/examples for fields like:

  • command - The server executable path
  • args - Command-line arguments
  • env - Environment variables passed to the server
  • url - For HTTP server types
  • headers - For HTTP server authentication

No documentation currently explains an alwaysLoad field on individual MCP server configs.

What's Wrong or Missing?

Changelog v2.1.121 added alwaysLoad to MCP server config: when true, all tools from that server skip tool-search deferral and are always available.

The current docs only describe global tool-search behavior through ENABLE_TOOL_SEARCH; they do not document:

  • where alwaysLoad belongs in MCP server config
  • an example showing the field in .mcp.json or equivalent server config
  • how it changes behavior relative to the default deferred tool-search flow
  • how users should choose between alwaysLoad and global ENABLE_TOOL_SEARCH settings

That leaves a new user-facing MCP configuration option discoverable only from the changelog.

Suggested Improvement

Add alwaysLoad to the MCP configuration docs and to the Tool Search section, with a short example such as:

{
"mcpServers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/",
"alwaysLoad": true
}
}
}

The docs should explicitly state that alwaysLoad: true forces that server's tools to skip tool-search deferral and stay available from session start, and clarify how this interacts with global ENABLE_TOOL_SEARCH behavior.

Impact

Medium - Makes feature difficult to understand

Additional Context

Affected Pages:

PageContext
https://code.claude.com/docs/en/mcpPrimary MCP configuration and tool-search documentation; currently documents only global tool-search controls
https://code.claude.com/docs/en/context-windowSays MCP schemas stay deferred by default and only mentions ENABLE_TOOL_SEARCH overrides
https://code.claude.com/docs/en/how-claude-code-worksExplains deferred MCP tool definitions without mentioning a per-server override
https://code.claude.com/docs/en/claude-directoryDescribes .mcp.json as loading deferred tool schemas by default, with no alwaysLoad mention

Total scope: 4 pages affected

Source: Changelog v2.1.121

Exact changelog entry:

Added alwaysLoad option to MCP server config — when true, all tools from that server skip tool-search deferral and are always available

extent analysis

TL;DR

Add documentation for the alwaysLoad field in the MCP server configuration to explain its behavior and interaction with the global ENABLE_TOOL_SEARCH setting.

Guidance

  • Update the MCP configuration documentation to include the alwaysLoad field, describing where it belongs in the .mcp.json file and its effect on tool-search deferral.
  • Provide an example of the alwaysLoad field in the .mcp.json configuration, such as the suggested improvement in the issue.
  • Clarify how alwaysLoad interacts with the global ENABLE_TOOL_SEARCH setting to avoid confusion.
  • Review the affected pages (MCP configuration, context window, how Claude code works, and Claude directory) to ensure consistency in the documentation.

Example

{
  "mcpServers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "alwaysLoad": true
    }
  }
}

Notes

The current documentation only describes global tool-search behavior, leaving a new configuration option discoverable only from the changelog. Adding clear documentation for alwaysLoad will improve the user experience and reduce confusion.

Recommendation

Apply workaround: Add the missing documentation for alwaysLoad to the MCP configuration docs and affected pages to provide a clear understanding of its behavior and interaction with global settings.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING