Skip to content

Conversation

@He-Pin
Copy link
Contributor

@He-Pin He-Pin commented Nov 19, 2025

Motivation and Context

Helpful for users who want to have a different implementation but the same interface for better third part integration.
#680

How Has This Been Tested?

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

.
Signed-off-by: He-Pin <[email protected]>
.
Signed-off-by: He-Pin <[email protected]>
.
Signed-off-by: He-Pin <[email protected]>
.
Signed-off-by: He-Pin <[email protected]>
.
Signed-off-by: He-Pin <[email protected]>
.
Signed-off-by: He-Pin <[email protected]>
.
Signed-off-by: He-Pin <[email protected]>
@He-Pin He-Pin marked this pull request as ready for review November 19, 2025 13:55
@He-Pin
Copy link
Contributor Author

He-Pin commented Nov 19, 2025

Our current implementation requires significant extensions to McpAsyncClient to implement custom behaviors. However, because some methods are private, we cannot modify them externally, forcing us to copy the code. This necessitates using different class names, resulting in a poor user experience for our second-party applications and third-party integrations. Therefore, we aim to transform McpAsyncClient and McpSyncClient into a single interface, allowing us to return our custom implementation when needed. This way, users in the community with similar requirements can also return the same interface with different implementations.

This is a basic source code compatibility change.

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.

1 participant