fix: consistent resource name parsing for prefixed names #11
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
Fixes #3: Add support for prefixed resource names in MCP clients
This PR implements consistent resource name parsing to handle prefixed tool names (e.g., "ngrok weather:get-alerts") that MCP clients may use when routing through proxies or different transports.
Changes
src/utils/resource-parser.ts
utility module with functions for parsing resource namesextractToolName()
into the SDK's authentication flow at two key points:Key Features
Testing
Added 33 new tests covering:
All tests pass with 100% coverage of the new utility module.
Example Usage
Technical Approach
The solution uses a simple, efficient approach:
This minimal change ensures compatibility across different MCP client implementations without requiring clients to modify their naming schemes.