Skip to content

Conversation

@mattt
Copy link
Contributor

@mattt mattt commented Mar 17, 2025

Resolves #14

  1. The current implementation of Server.Capabilities.Resources defines nonstandard read and list capabilities.
  2. The current implementation of Client.listResources and Client.readResources include a specific check for that capability. This causes requests to fail because servers won't include that capability.

This PR removes these nonstandard capabilities from the Server.Capabilities type and updates the checks in Client accordingly.

@mattt mattt mentioned this pull request Mar 17, 2025
@mattt mattt merged commit a2a0044 into main Mar 17, 2025
1 check passed
@mattt mattt deleted the mattt/resources-server-capabilities branch March 17, 2025 11:17
devyhan pushed a commit to devyhan/swift-sdk that referenced this pull request Apr 4, 2025
…lcontextprotocol#15)

* Remove nonstandard read and list capabilities for server

* Update README
dcherrera added a commit to dcherrera/swift-sdk that referenced this pull request Nov 5, 2025
…cking logger calls from ProcessTransport stderr + Add 30s timeout to Client.send()

Bug modelcontextprotocol#14: ProcessTransport.logStderr() had 2 blocking logger calls
- logger.warning() and logger.error() cause actor isolation delays
- Replaced with NSLog for synchronous stderr logging

Bug modelcontextprotocol#15: Client.send() had no timeout mechanism
- Requests would hang indefinitely if MCP server didn't respond
- Added 30-second timeout using withThrowingTaskGroup
- Properly cleans up pending requests on timeout
- Logs timeout with clear error message

These fixes allow us to:
1. See stderr output from MCP servers without delays
2. Detect and recover from hung MCP server processes
3. Provide better error messages to users when tools fail

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
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.

Spec compliance issues

2 participants