Skip to content

85893 mcp log search by - #107

Open
scaree wants to merge 16 commits into
mainfrom
85893_mcp_log_search_by_id
Open

85893 mcp log search by#107
scaree wants to merge 16 commits into
mainfrom
85893_mcp_log_search_by_id

Conversation

@scaree

@scaree scaree commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

No description provided.

scaree and others added 16 commits August 19, 2026 13:53
Moves the integration onto the per-server container layout: the controller is
aliased to mcp.server.<server_name>.controller, both request handlers take that
server's registry, and the tool-list page size is read from the server config
now that the mcp.pagination_limit parameter is gone. File-based discovery is
replaced by the mcp.tool tag plus a registry pattern, so the bundle prepends its
own tool namespace instead of a vendor scan dir. The controller builds its
middleware through the McpBundle MiddlewareFactory, because SDK 0.8 applies
ProtocolVersionMiddleware to handshake-era traffic itself and a hand-built list
carrying it rejects every 2026-07-28 request. allowed_hosts stays on this side:
the McpBundle option is validated as an array at compile time, which an env-csv
value cannot satisfy.

Also carries the MCP review findings: tool errors answer with isError set
instead of a successful result holding an error key, the rate limit is charged
per JSON-RPC message so a batch cannot spend one token on 100 tool calls, the
log tools warn about a truncated result only when rows were really cut off, and
an empty tool_permissions map fails at compile time like an empty allowed_hosts.
Ordered imports in McpLogFinder, the stray blank lines the MCP tool imports and
the log search response trait picked up, and the chained ToolResultFormatter
call split onto its own line.
…lias

ContainerBuilder::getParameter() returns the whole parameter union, so psalm
rejected passing it to sprintf. The guard mirrors the one the pass used for the
session cache pool and fails at compile time on a misconfigured parameter.
The pass no longer owns the session cache definition and aliases
mcp.server.<server_name>.controller instead of mcp.server.controller, so the
test drops the removed SESSION_CACHE_POOL_PARAM assertions and covers the
server name guard instead.
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