Skip to content

Improve error handling for message enqueue failure #283

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

codeboyzhou
Copy link
Contributor

  • Update sendMessage method to provide more detailed error information
  • Remove unnecessary imports and improve code readability

Motivation and Context

While debugging an MCP server in STDIO mode, I encountered RuntimeException: Failed to enqueue message. The exception stack trace pointed to StdioMcpSessionTransport#sendMessage() but without more error details, I can only see that outboundSink.tryEmitNext(message).isSuccess() actually return false but there is no more helpful info to locate the root cause what results in this false. I think the return value of tryEmitNext(message) is needed to be included in the error message to make it more clear.

How Has This Been Tested?

Yes, I tested this in my local MCP server example application.

Breaking Changes

No breaking changes

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

Additional context

No additional context

- Update sendMessage method to provide more detailed error information
- Remove unnecessary imports and improve code readability
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants