refactor(mcp): extract connection/manager modules, add discovery caching and tests#194
Merged
Merged
Conversation
…ing and tests - Extract connection logic from client.ts into connection.ts (transport candidates, timeout, batch connect) - Add MCPClientManager in manager.ts with connection pooling, ping health checks, config-change detection, and auto-cleanup - Add per-client discovery caching in tools-integration.ts with ToolListChanged/PromptListChanged notification invalidation - Fix stderr listener timing in connection.ts: register before connectWithTimeout to capture handshake-phase output - Add assertJsonPayloadBudget validation on MCP tool arguments in mcp.ts - Use normalizeImageMediaType for safe Anthropic image block conversion - Fix mergeAbortSignals listener cleanup (track and remove all listeners) - Fix ListMcpResourcesTool indentation and add error logging to catch block - Add cache.clear() compatibility shims on getClients/getMCPTools/getMCPCommands - Add tests: MCPClientManager lifecycle, connection internals, content normalization
…up-bash-completion
- Use normalizeAnthropicUsage/createAnthropicUsage for Usage type compliance - Replace Hunk import with StructuredPatchHunk from diff@9 - Remove @anthropic-ai/sdk/shims/node import (no longer exists) - Use normalizeImageMediaType for safe image content type conversion - Add ToolUseLikeBlockParam type for mcp_tool_use/server_tool_use handling - Fix ContentBlock text property access with proper type narrowing - Fix ToolUseBlock caller property and Message container/stop_details fields
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ormalizeImageMediaType for safe Anthropic image block conversion
Changes
Verification