Skip to content

Bound mcp_list_tools and mcp_read payloads - #451

Merged
TheGreatAxios merged 3 commits into
mainfrom
cl-7169-bound-mcp-list_tools-and-read-payloads
Aug 29, 2026
Merged

TheGreatAxios merged 3 commits into
mainfrom
cl-7169-bound-mcp-list_tools-and-read-payloads

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Contributor

Port of the Canva-tree payload bounds so MCP discovery and read results cannot swamp model context.

  • mcp_list_tools truncates descriptions and schemas to 100 characters with a [truncated] suffix (same bound as the catalog), including {server} and {server, toolName}.
  • mcp_read caps a single payload at about 8,000 characters.

Closes CL-7169.

Long MCP tool descriptions, schemas, and read results were returned in full and could swamp the model context. Truncate list_tools descriptions and schemas to 100 characters like the catalog, and cap a single mcp_read payload at about 8k characters.
The live list/read path already truncates. The factory descriptions the model sees must match.
Tool resolution keys on name@version, so new source under an unchanged
version never reaches a running or freshly launched agent. Ripple the
pin to every workflow that names this package.
@TheGreatAxios
TheGreatAxios force-pushed the cl-7169-bound-mcp-list_tools-and-read-payloads branch from 5919f19 to 5ca7017 Compare August 29, 2026 04:46
@TheGreatAxios
TheGreatAxios merged commit db23e45 into main Aug 29, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant