Previously resources were generated as 50 text resources followed by 50 blob resources.
Now they alternate: Text, Blob, Text, Blob, etc. This provides better variety
when using tools like getResourceLinks and maintains the useful interleaving
pattern that was present before the UUID-based refactor.
Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
Implements @domdomegg's proposal to use UUIDs for resource identification instead of array indices:
- Generate UUIDs for all 100 resources (50 text, 50 blob)
- Use semantic paths: test://static/resource/text/{uuid} and test://static/resource/blob/{uuid}
- Remove dependency on array indices for URI construction
- Update resource templates to reflect new URI patterns
- Modify getResourceReference tool to accept resourceUri instead of resourceId
- Update resource_prompt argument from resourceId to resourceUri
- Improve resource link descriptions to mention UUID-based identification
- Update README documentation to reflect UUID-based system
This eliminates the confusion between array indices (0-based) and URI numbers (1-based)
while providing more intuitive resource categorization through semantic paths.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: adam jones <domdomegg@users.noreply.github.com>
* fix: comprehensive Windows path handling improvements
- Add path-utils module for consistent path handling
- Handle Windows paths with spaces via proper quoting
- Support Unix-style Windows paths (/c/path)
- Support WSL paths (/mnt/c/path)
- Add comprehensive test coverage
- Fix path normalization for all path formats
Closes#447
* tested locally and working now
* Add filesystem path utils and tests
* Ensure Windows drive letters are capitalized in normalizePath
* adding test for gh pr comment
* pushing jest and windows testing config
* last commit? fixing comments on PR
* Fix bin and bump sdk
* Remove redundant commonjs version of path-utils and import from ts version
* Remove copying cjs file
* Remove copying run-server
* Remove complex args parsing and do other cleanup
* Add missing tools details to Readme
* Move utility functions from index to lib
* Add more tests and handle very small and very large files edge cases
* Finish refactoring and include original security fix comments
* On Windows, also check for drive root
* Check symlink support on restricted Windows environments
* Fix tests
* Bump SDK and package version
* Clean up
---------
Co-authored-by: olaservo <olahungerford@gmail.com>
Co-authored-by: adam jones <adamj+git@anthropic.com>
The tool description was ambiguous about subdirectory access within allowed directories.
Updated the description to explicitly state that subdirectories are also accessible.
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
Fixes issue where array indices (0-based) didn't match URI numbers (1-based),
causing confusion where:
- Resource at index 0 was accessed via 'test://static/resource/1'
- Even indices (text resources) mapped to odd URI numbers
Changes:
- Resource URIs now use 0-based numbering to match array indices
- Resource 0 is now accessed via 'test://static/resource/0'
- Even indices now map to even URI numbers (more intuitive)
Resolves#475🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
- Move setInterval calls from server creation to startNotificationIntervals function
- Only start notification timers when a client actually connects to the SSE server
- Prevents 'Not connected' error when server tries to send notifications before client connection
- Fixes issue where server crashes after 5 seconds when running 'npx @modelcontextprotocol/server-everything sse'
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
The filesystem server does not actually implement MCP Resources capability
but the README incorrectly claimed it provides 'file://system' resource interface.
Fixes#399
Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
We are now hosting the official Alpha Vantage MCP server at https://mcp.alphavantage.co/, hence this PR to update the target URL.
Submitted by Steve (Cofounder of Alpha Vantage)
Resolves issue where DICOM MCP was incorrectly listed in both
official and community servers sections. It should only be in
the community servers section.
Fixes#2562
Co-authored-by: adam jones <domdomegg@users.noreply.github.com>
- Changed 'community built servers' to 'community-built servers'
- Fixed 'A MCP server' to 'An MCP server' throughout
- Fixed 'a AnalyticDB' to 'an AnalyticDB'
- Added missing periods to reference server descriptions
- Fixed spacing and punctuation issues
Co-authored-by: Adam Jones <domdomegg+git@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>