-
Notifications
You must be signed in to change notification settings - Fork 23
v1.0.0 #48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
v1.0.0 #48
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #48 +/- ##
===========================================
+ Coverage 45.55% 70.01% +24.46%
===========================================
Files 15 16 +1
Lines 2880 3042 +162
===========================================
+ Hits 1312 2130 +818
+ Misses 1568 912 -656
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Achieved +12.1% overall coverage improvement (56.9% → ~69%) Phase 1: External API Coverage - Server MCP high-level API: 0% → 56.7% (19 tests) - URI template system: 0% → 24.3% (55 tests, bug fix included) - Client elicitation & capability checks (17 tests) - Server capability assertions (17 tests) Phase 2: Transport Coverage - Server stdio transport: 0% → 84.2% (16 tests) - Server SSE manager: 0% → 66.2% (16 tests) - Client streamable HTTPS edge cases (6 tests) Phase 3: Types & Edge Cases - Types edge cases: 76% → 78% (30 tests) - Protocol edge cases: 61% → 68% (15 tests) Total: 191 new tests, all passing (339/339 tests ✅) Key fixes: - URI template variable duplication bug - McpError code preservation in request handlers 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Phase 4 completion adds 12 comprehensive tests covering advanced edge cases and integration scenarios, achieving 70.0% overall coverage (+0.6%). New Tests Added: - Protocol Advanced Scenarios (3 tests): * Progress notification error handling with invalid token types * Request timeout mechanism validation * Abort signal cancellation of pending requests - Streamable HTTPS Integration (9 tests): * Exponential backoff reconnection delay calculation * Max reconnection attempts preventing infinite retries * HTTP request failure handling (500 errors) * Network timeout during send operations * Authentication flow with missing authProvider * Token refresh mechanism validation * Malformed SSE data graceful handling * Custom reconnection options configuration * Unauthorized response handling (401 errors) Coverage Impact: - Overall: 69.4% → 70.0% (+0.6%, +17 lines covered) - Protocol: 68.7% (timeout, abort, progress error handling) - Client HTTPS: Advanced integration scenarios validated - Total tests: 351 (all passing ✅) All Phases Summary: - Phase 1: External APIs (+108 tests) - Phase 2: Transport Layer (+38 tests) - Phase 3: Types & Edge Cases (+45 tests) - Phase 4: Advanced Scenarios (+12 tests) - Total improvement: 56.9% → 70.0% (+13.1%, +400 lines) 🤖 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
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.
This pull request introduces MCP protocol version
2025-06-18with major feature updates, improved documentation, and several critical fixes. The most significant addition is support for "elicitation"—server-initiated structured input collection from clients—along with comprehensive documentation enhancements and a critical logging fix to prevent protocol corruption. There are also improvements to test coverage, bug fixes, and API adjustments for better clarity and reliability.Protocol and Feature Updates
elicitation/createmethod, including API methods (McpServer.elicitUserInput()), client handler (Client.onElicitRequest), new types (ElicitRequestParams,ElicitResult,ClientCapabilitiesElicitation), and helpers for common result actions. [1] [2] [3] [4] [5]2025-06-18and ensures backward compatibility with previous versions. [1] [2] [3]Documentation and Examples
README.mdto clarify the MCP architecture, add detailed guides and documentation links, highlight new features (including elicitation), and provide clearer quick start and platform support information. [1] [2] [3] [4]toolInputSchemaAPI andCallToolResult.fromContentfor clarity and correctness.Critical Fixes and Reliability
stdouttostderrto prevent JSON-RPC protocol corruption when using stdio transport. [1] [2]McpErrorcodes are preserved through request handlers and parameter parsing errors are handled correctly. [1] [2]Test Coverage and Bug Fixes
Minor Improvements
DropdownButtonFormFieldin Flutter client example for proper initial value handling. [1] [2]These changes collectively bring the SDK up to date with the latest MCP specification, enhance developer experience, and improve overall reliability and maintainability.