Executive Summary
- Tier 1 — all requirements met; the C# MCP SDK achieves the highest tier classification
- Server conformance: 100% (30/30 scenarios passing across both
2025-06-18 and 2025-11-25 spec versions)
- Client conformance: 100% of date-versioned scenarios (23/23); 3
extension-spec scenarios fail but are informational only (not counted toward tier)
- Issue triage: 100% compliance rate across 113 issues, median triage time 0 hours
- P0 status: 0 open P0 issues; no P0 SLA violations
- Stable release: v1.2.0 (non-prerelease, >= 1.0.0)
- Spec tracking: 0-day gap between latest spec release (2025-11-25) and SDK release
- Documentation coverage: 48/48 non-experimental features documented with prose and code examples
- No blockers for Tier 1; SDK is fully compliant on all 8 requirements
MCP SDK Tier Audit: modelcontextprotocol/csharp-sdk
Date: 2026-04-05
Branch: main
Auditor: mcp-sdk-tier-audit skill (automated + subagent evaluation)
Tier Assessment: Tier 1
All deterministic checks pass at Tier 1 thresholds, and the AI-assisted evaluation confirms comprehensive documentation (48/48 features with examples), a published dependency update policy, a published roadmap tracking spec implementation, and a detailed versioning/breaking-change policy.
Requirements Summary
| # |
Requirement |
Tier 1 Standard |
Tier 2 Standard |
Current Value |
T1? |
T2? |
Gap |
| 1a |
Server Conformance |
100% pass rate |
>= 80% pass rate |
100% (30/30) |
PASS |
PASS |
None |
| 1b |
Client Conformance |
100% pass rate |
>= 80% pass rate |
100% (23/23 date-versioned) |
PASS |
PASS |
3 extension-spec scenarios fail (not counted toward tier) |
| 2 |
Issue Triage |
>= 90% within 2 biz days |
>= 80% within 1 month |
100% (113/113) |
PASS |
PASS |
None |
| 2b |
Labels |
12 required labels |
12 required labels |
12/12 |
PASS |
PASS |
None |
| 3 |
Critical Bug Resolution |
All P0s within 7 days |
All P0s within 2 weeks |
0 open P0s |
PASS |
PASS |
None |
| 4 |
Stable Release |
Required + clear versioning |
At least one stable release |
1.2.0 |
PASS |
PASS |
None |
| 4b |
Spec Tracking |
Timeline agreed per release |
Within 6 months |
0d gap (PASS) |
PASS |
PASS |
None |
| 5 |
Documentation |
Comprehensive w/ examples |
Basic docs for core features |
48/48 features |
PASS |
PASS |
None |
| 6 |
Dependency Policy |
Published update policy |
Published update policy |
Found (.github/dependabot.yml) |
PASS |
PASS |
None |
| 7 |
Roadmap |
Published roadmap |
Plan toward Tier 1 |
Found (docs/roadmap.md) |
PASS |
PASS |
None |
| 8 |
Versioning Policy |
Documented breaking change policy |
N/A |
Found (docs/versioning.md) |
PASS |
N/A |
None |
Tier Determination
- Tier 1: PASS — 8/8 requirements met
- Tier 2: PASS — 7/7 requirements met
- Final Tier: 1
Server Conformance Details
Pass rate: 100% (30/30)
| Scenario |
Status |
Checks |
| server-tools-list |
PASS |
1/1 |
| server-tools-call-with-progress |
PASS |
1/1 |
| server-tools-call-with-logging |
PASS |
1/1 |
| server-tools-call-simple-text |
PASS |
1/1 |
| server-tools-call-sampling |
PASS |
1/1 |
| server-tools-call-mixed-content |
PASS |
1/1 |
| server-tools-call-image |
PASS |
1/1 |
| server-tools-call-error |
PASS |
1/1 |
| server-tools-call-embedded-resource |
PASS |
1/1 |
| server-tools-call-elicitation |
PASS |
1/1 |
| server-tools-call-audio |
PASS |
1/1 |
| server-server-sse-multiple-streams |
PASS |
2/2 |
| server-server-initialize |
PASS |
1/1 |
| server-resources-unsubscribe |
PASS |
1/1 |
| server-resources-templates-read |
PASS |
1/1 |
| server-resources-subscribe |
PASS |
1/1 |
| server-resources-read-text |
PASS |
1/1 |
| server-resources-read-binary |
PASS |
1/1 |
| server-resources-list |
PASS |
1/1 |
| server-prompts-list |
PASS |
1/1 |
| server-prompts-get-with-image |
PASS |
1/1 |
| server-prompts-get-with-args |
PASS |
1/1 |
| server-prompts-get-simple |
PASS |
1/1 |
| server-prompts-get-embedded-resource |
PASS |
1/1 |
| server-ping |
PASS |
1/1 |
| server-logging-set-level |
PASS |
1/1 |
| server-elicitation-sep1330-enums |
PASS |
5/5 |
| server-elicitation-sep1034-defaults |
PASS |
5/5 |
| server-dns-rebinding-protection |
PASS |
2/2 |
| server-completion-complete |
PASS |
1/1 |
Client Conformance Details
Full suite pass rate: 88.5% (23/26 total); 100% for date-versioned scenarios (23/23)
Suite breakdown: Core: 4/4 (100%), Auth date-versioned: 19/19 (100%), Auth extension: 0/3 (0% — informational only, not counted toward tier scoring)
Baseline: 3 known failures in extension spec scenarios. These scenarios are not counted in the tier pass rate per SEP-1730 scoring rules.
Core Scenarios
| Scenario |
Status |
Checks |
| tools_call |
PASS |
1/1 |
| sse-retry |
PASS |
2/2 |
| initialize |
PASS |
1/1 |
| elicitation-sep1034-client-defaults |
PASS |
5/5 |
Auth Scenarios
| Scenario |
Status |
Checks |
Notes |
| auth/token-endpoint-auth-post |
PASS |
16/16 |
|
| auth/token-endpoint-auth-none |
PASS |
16/16 |
|
| auth/token-endpoint-auth-basic |
PASS |
16/16 |
|
| auth/scope-step-up |
PASS |
22/22 |
|
| auth/scope-retry-limit |
PASS |
10/10 |
|
| auth/scope-omitted-when-undefined |
PASS |
12/12 |
|
| auth/scope-from-www-authenticate |
PASS |
12/12 |
|
| auth/scope-from-scopes-supported |
PASS |
12/12 |
|
| auth/resource-mismatch |
PASS |
2/2 |
draft spec |
| auth/pre-registration |
PASS |
11/11 |
|
| auth/offline-access-scope |
PASS |
10/10 |
draft spec |
| auth/offline-access-not-supported |
PASS |
12/12 |
draft spec |
| auth/metadata-var3 |
PASS |
11/11 |
|
| auth/metadata-var2 |
PASS |
11/11 |
|
| auth/metadata-var1 |
PASS |
11/11 |
|
| auth/metadata-default |
PASS |
11/11 |
|
| auth/cross-app-access-complete-flow |
FAIL |
8/10 |
extension spec — not counted toward tier |
| auth/client-credentials-jwt |
FAIL |
8/10 |
extension spec — not counted toward tier |
| auth/client-credentials-basic |
FAIL |
8/10 |
extension spec — not counted toward tier |
| auth/basic-cimd |
PASS |
11/11 |
|
| auth/2025-03-26-oauth-metadata-backcompat |
PASS |
10/10 |
|
| auth/2025-03-26-oauth-endpoint-fallback |
PASS |
5/5 |
|
Issue Triage Details
Analysis period: 113 issues
Labels: All 12 required labels present (bug, enhancement, question, needs confirmation, needs repro, ready for work, good first issue, help wanted, P0, P1, P2, P3)
| Metric |
Value |
T1 Req |
T2 Req |
Verdict |
| Compliance rate |
100% |
>= 90% |
>= 80% |
PASS |
| Exceeding SLA |
0 |
-- |
-- |
-- |
| Open P0s |
0 |
0 |
0 |
PASS |
| Median triage time |
0h |
-- |
-- |
Excellent |
Documentation Coverage
Documentation Coverage Assessment
SDK path: /tmp/csharp-sdk
Documentation locations found:
README.md: Overview, quick-start, feature list
docs/concepts/tools/tools.md: Full tool documentation with examples
docs/concepts/resources/resources.md: Full resource documentation with examples
docs/concepts/prompts/prompts.md: Full prompt documentation with examples
docs/concepts/sampling/sampling.md: Sampling documentation with examples
docs/concepts/elicitation/elicitation.md: Elicitation documentation with examples
docs/concepts/roots/roots.md: Roots documentation with examples
docs/concepts/logging/logging.md: Logging documentation with examples
docs/concepts/completions/completions.md: Completions documentation with examples
docs/concepts/progress/progress.md: Progress documentation with examples
docs/concepts/cancellation/cancellation.md: Cancellation documentation with examples
docs/concepts/pagination/pagination.md: Pagination documentation with examples
docs/concepts/capabilities/capabilities.md: Capabilities and protocol version negotiation with examples
docs/concepts/ping/ping.md: Ping documentation with examples
docs/concepts/transports/transports.md: All transport types documented with examples
docs/concepts/getting-started.md: Getting started guide with code examples
samples/: Multiple sample projects demonstrating end-to-end usage
docs/concepts/elicitation/samples/: Runnable sample projects for elicitation
Feature Documentation Table
| # |
Feature |
Documented? |
Where |
Has Examples? |
Verdict |
| 1 |
Tools - listing |
Yes |
docs/concepts/tools/tools.md |
Yes (2+ examples) |
PASS |
| 2 |
Tools - calling |
Yes |
docs/concepts/tools/tools.md |
Yes (2+ examples) |
PASS |
| 3 |
Tools - text results |
Yes |
docs/concepts/tools/tools.md:Text content section |
Yes (2 examples) |
PASS |
| 4 |
Tools - image results |
Yes |
docs/concepts/tools/tools.md:Image content section |
Yes (1 example) |
PASS |
| 5 |
Tools - audio results |
Yes |
docs/concepts/tools/tools.md:Audio content section |
Yes (1 example) |
PASS |
| 6 |
Tools - embedded resources |
Yes |
docs/concepts/tools/tools.md:Embedded resources section |
Yes (2 examples) |
PASS |
| 7 |
Tools - error handling |
Yes |
docs/concepts/tools/tools.md:Error handling section |
Yes (3 examples) |
PASS |
| 8 |
Tools - change notifications |
Yes |
docs/concepts/tools/tools.md:Tool list change notifications |
Yes (2 examples) |
PASS |
| 9 |
Resources - listing |
Yes |
docs/concepts/resources/resources.md |
Yes (1 example) |
PASS |
| 10 |
Resources - reading text |
Yes |
docs/concepts/resources/resources.md:Reading text resources |
Yes (1 example) |
PASS |
| 11 |
Resources - reading binary |
Yes |
docs/concepts/resources/resources.md:Reading binary resources |
Yes (1 example) |
PASS |
| 12 |
Resources - templates |
Yes |
docs/concepts/resources/resources.md:Template resources section |
Yes (1 example) |
PASS |
| 13 |
Resources - template reading |
Yes |
docs/concepts/resources/resources.md:Reading a template resource |
Yes (1 example) |
PASS |
| 14 |
Resources - subscribing |
Yes |
docs/concepts/resources/resources.md:Resource subscriptions |
Yes (2 examples) |
PASS |
| 15 |
Resources - unsubscribing |
Yes |
docs/concepts/resources/resources.md:Resource subscriptions |
Yes (1 example) |
PASS |
| 16 |
Resources - change notifications |
Yes |
docs/concepts/resources/resources.md:Resource list change notifications |
Yes (2 examples) |
PASS |
| 17 |
Prompts - listing |
Yes |
docs/concepts/prompts/prompts.md:Listing prompts |
Yes (1 example) |
PASS |
| 18 |
Prompts - getting simple |
Yes |
docs/concepts/prompts/prompts.md:Simple prompts |
Yes (1 example) |
PASS |
| 19 |
Prompts - getting with arguments |
Yes |
docs/concepts/prompts/prompts.md:Prompts with arguments |
Yes (1 example) |
PASS |
| 20 |
Prompts - embedded resources |
Yes |
docs/concepts/prompts/prompts.md:Embedded resources |
Yes (2 examples) |
PASS |
| 21 |
Prompts - image content |
Yes |
docs/concepts/prompts/prompts.md:Image content |
Yes (1 example) |
PASS |
| 22 |
Prompts - change notifications |
Yes |
docs/concepts/prompts/prompts.md:Prompt list change notifications |
Yes (2 examples) |
PASS |
| 23 |
Sampling - creating messages |
Yes |
docs/concepts/sampling/sampling.md |
Yes (4 examples) |
PASS |
| 24 |
Elicitation - form mode |
Yes |
docs/concepts/elicitation/elicitation.md:Form Mode Elicitation |
Yes (2+ examples) |
PASS |
| 25 |
Elicitation - URL mode |
Yes |
docs/concepts/elicitation/elicitation.md:URL Mode Elicitation |
Yes (2 examples) |
PASS |
| 26 |
Elicitation - schema validation |
Yes |
docs/concepts/elicitation/elicitation.md:Enum schema formats |
Yes (2 examples) |
PASS |
| 27 |
Elicitation - default values |
Yes |
docs/concepts/elicitation/elicitation.md:Default values |
Yes (1 example) |
PASS |
| 28 |
Elicitation - enum values |
Yes |
docs/concepts/elicitation/elicitation.md:Enum schema formats |
Yes (2 examples) |
PASS |
| 29 |
Elicitation - complete notification |
Yes |
docs/concepts/elicitation/elicitation.md:Listening for Elicitation Completion Notifications |
Yes (1 example) |
PASS |
| 30 |
Roots - listing |
Yes |
docs/concepts/roots/roots.md |
Yes (2 examples) |
PASS |
| 31 |
Roots - change notifications |
Yes |
docs/concepts/roots/roots.md:Roots change notifications |
Yes (2 examples) |
PASS |
| 32 |
Logging - sending log messages |
Yes |
docs/concepts/logging/logging.md |
Yes (code snippet via !code-csharp include) |
PASS |
| 33 |
Logging - setting level |
Yes |
docs/concepts/logging/logging.md:Client support for logging |
Yes (code snippet via !code-csharp include) |
PASS |
| 34 |
Completions - resource argument |
Yes |
docs/concepts/completions/completions.md |
Yes (1 example) |
PASS |
| 35 |
Completions - prompt argument |
Yes |
docs/concepts/completions/completions.md |
Yes (1 example) |
PASS |
| 36 |
Ping |
Yes |
docs/concepts/ping/ping.md |
Yes (1 example) |
PASS |
| 37 |
Streamable HTTP transport (client) |
Yes |
docs/concepts/transports/transports.md:Streamable HTTP client |
Yes (3 examples) |
PASS |
| 38 |
Streamable HTTP transport (server) |
Yes |
docs/concepts/transports/transports.md:Streamable HTTP server |
Yes (2 examples) |
PASS |
| 39 |
SSE transport - legacy (client) |
Yes |
docs/concepts/transports/transports.md:SSE client |
Yes (1 example) |
PASS |
| 40 |
SSE transport - legacy (server) |
Yes |
docs/concepts/transports/transports.md:SSE server |
Yes (1 example) |
PASS |
| 41 |
stdio transport (client) |
Yes |
docs/concepts/transports/transports.md:stdio client |
Yes (1 example) |
PASS |
| 42 |
stdio transport (server) |
Yes |
docs/concepts/transports/transports.md:stdio server |
Yes (1 example) |
PASS |
| 43 |
Progress notifications |
Yes |
docs/concepts/progress/progress.md |
Yes (2 examples via !code-csharp include) |
PASS |
| 44 |
Cancellation |
Yes |
docs/concepts/cancellation/cancellation.md |
Yes (2 examples) |
PASS |
| 45 |
Pagination |
Yes |
docs/concepts/pagination/pagination.md |
Yes (2 examples) |
PASS |
| 46 |
Capability negotiation |
Yes |
docs/concepts/capabilities/capabilities.md |
Yes (2 examples) |
PASS |
| 47 |
Protocol version negotiation |
Yes |
docs/concepts/capabilities/capabilities.md:Protocol version negotiation section |
Yes (1 example) |
PASS |
| 48 |
JSON Schema 2020-12 support |
Yes |
docs/concepts/tools/tools.md:JSON Schema generation section |
Yes (1 example + table) |
PASS |
| — |
Tasks - get (experimental) |
Yes |
docs/concepts/tasks/tasks.md |
Yes |
INFO |
| — |
Tasks - result (experimental) |
Yes |
docs/concepts/tasks/tasks.md |
Yes |
INFO |
| — |
Tasks - cancel (experimental) |
Yes |
docs/concepts/tasks/tasks.md |
Yes |
INFO |
| — |
Tasks - list (experimental) |
Yes |
docs/concepts/tasks/tasks.md |
Yes |
INFO |
| — |
Tasks - status notifications (experimental) |
Yes |
docs/concepts/tasks/tasks.md |
Yes |
INFO |
Summary
Total non-experimental features: 48
PASS (documented with examples): 48/48
PARTIAL (documented, no examples): 0/48
FAIL (not documented): 0/48
Core features documented: 36/36 (100%)
All features documented with examples: 48/48 (100%)
Tier Verdicts
Tier 1 (all non-experimental features documented with examples): PASS
Tier 2 (basic docs covering core features): PASS
Policy Evaluation
Policy Evaluation Assessment
SDK path: /tmp/csharp-sdk
Repository: modelcontextprotocol/csharp-sdk
1. Dependency Update Policy: PASS
| File |
Exists (CLI) |
Content Verdict |
| DEPENDENCY_POLICY.md |
No |
N/A |
| docs/dependency-policy.md |
No |
N/A |
| .github/dependabot.yml |
Yes |
Configured (nuget + github-actions, weekly schedule, grouped PRs, explicit ignore rules) |
| .github/renovate.json |
No |
N/A |
Verdict: PASS — A well-configured .github/dependabot.yml with weekly NuGet and GitHub Actions update schedules, PR grouping, and explicit dependency ignore rules constitutes a published dependency update policy.
2. Roadmap: PASS
| File |
Exists (CLI) |
Content Verdict |
| ROADMAP.md |
No |
N/A |
| docs/roadmap.md |
Yes |
Substantive |
Content summary: docs/roadmap.md includes:
- "Spec Implementation Tracking" section with links to dedicated GitHub project boards per spec revision (e.g., the 2025-11-25 spec revision board), providing concrete spec component tracking
- "Current Focus Areas" section covering next spec revision work and experimental Tasks support
- "Milestones" section linking to GitHub milestones for upcoming version planning
Verdict:
- Tier 1: PASS — Published roadmap with spec tracking via project boards; concrete work items tracked on per-revision GitHub project boards
- Tier 2: PASS — Published plan toward Tier 1 with current focus areas and milestones
3. Versioning Policy: PASS
| File |
Exists (CLI) |
Content Verdict |
| VERSIONING.md |
No |
N/A |
| docs/versioning.md |
Yes |
Substantive |
| BREAKING_CHANGES.md |
No |
N/A |
| CONTRIBUTING.md (versioning section) |
N/A |
Not checked (dedicated versioning.md found) |
Content summary: docs/versioning.md includes:
- Full SemVer 2.0.0 versioning policy (MAJOR/MINOR/PATCH rules)
- "Supported versions" section with explicit support timelines
- "Experimental APIs" section with
[Experimental] attribute policy and MCP-prefixed diagnostic codes
- "Breaking changes" section with what constitutes a breaking change, MAJOR version requirement, and communication policy
- "Obsolete APIs" section with
[Obsolete] attribute lifecycle for API deprecation
- Spec schema change guidance with forward/backward compatibility prototypes
Verdict:
- Tier 1: PASS — Comprehensive documented breaking change policy covering what constitutes a break, how breaking changes are communicated, the SemVer versioning scheme, and API deprecation lifecycle
- Tier 2: N/A — Only requires stable release
Overall Policy Summary
| Policy Area |
Tier 1 |
Tier 2 |
| Dependency Update Policy |
PASS |
PASS |
| Roadmap |
PASS |
PASS |
| Versioning Policy |
PASS |
N/A |
Remediation Guide: modelcontextprotocol/csharp-sdk
Date: 2026-04-05
Current Tier: 1
Path to Tier 2
Not applicable — SDK is already at Tier 1.
Path to Tier 1
No blockers. The SDK meets all Tier 1 requirements:
| # |
Requirement |
Status |
| 1a |
Server Conformance 100% |
✅ 30/30 (100%) |
| 1b |
Client Conformance 100% (date-versioned) |
✅ 23/23 (100%) |
| 2 |
Issue Triage within 2 business days |
✅ 100% compliance (113/113) |
| 2b |
All 12 required labels present |
✅ 12/12 |
| 3 |
No open P0s |
✅ 0 open P0s |
| 4 |
Stable release >= 1.0.0 with clear versioning |
✅ 1.2.0 |
| 4b |
Spec tracking within agreed timeline |
✅ 0-day gap |
| 5 |
All 48 features documented with examples |
✅ 48/48 (100%) |
| 6 |
Dependency update policy published |
✅ .github/dependabot.yml |
| 7 |
Roadmap published with spec tracking |
✅ docs/roadmap.md |
| 8 |
Breaking change policy documented |
✅ docs/versioning.md |
Informational: Extension Spec Failures
Three client conformance scenarios targeting extension spec versions currently fail. These are not counted toward tier scoring (only date-versioned scenarios count) but are noted here as informational:
| Scenario |
Checks Failed |
Spec |
| auth/cross-app-access-complete-flow |
2/10 |
extension |
| auth/client-credentials-jwt |
2/10 |
extension |
| auth/client-credentials-basic |
2/10 |
extension |
If the extension scenarios are promoted to dated spec versions in a future release, these would become tier-relevant. Addressing them proactively is recommended.
| # |
Action |
Requirement |
Effort |
Where |
| 1 |
Investigate and fix client-credentials (basic and JWT) and cross-app-access auth flows |
Client conformance for extension scenarios |
Medium |
tests/ModelContextProtocol.ConformanceClient; src/ModelContextProtocol.Core/Client/ |
Recommended Next Steps
- Monitor extension spec promotion — Track whether the three failing
extension auth scenarios get promoted to dated spec versions in upcoming MCP spec releases; address them before they become tier-relevant.
- Continue spec tracking cadence — The current 0-day gap between spec release and SDK release is excellent; maintain this responsiveness for future spec revisions.
- Maintain documentation quality — All 48 features have prose documentation with examples; continue updating docs when new features are added or existing ones evolve.
Generated by SDK Tier Audit · ● 1.8M · ◷
Executive Summary
2025-06-18and2025-11-25spec versions)extension-spec scenarios fail but are informational only (not counted toward tier)MCP SDK Tier Audit: modelcontextprotocol/csharp-sdk
Date: 2026-04-05
Branch: main
Auditor: mcp-sdk-tier-audit skill (automated + subagent evaluation)
Tier Assessment: Tier 1
All deterministic checks pass at Tier 1 thresholds, and the AI-assisted evaluation confirms comprehensive documentation (48/48 features with examples), a published dependency update policy, a published roadmap tracking spec implementation, and a detailed versioning/breaking-change policy.
Requirements Summary
Tier Determination
Server Conformance Details
Pass rate: 100% (30/30)
Client Conformance Details
Full suite pass rate: 88.5% (23/26 total); 100% for date-versioned scenarios (23/23)
Core Scenarios
Auth Scenarios
Issue Triage Details
Analysis period: 113 issues
Labels: All 12 required labels present (bug, enhancement, question, needs confirmation, needs repro, ready for work, good first issue, help wanted, P0, P1, P2, P3)
Documentation Coverage
Documentation Coverage Assessment
SDK path: /tmp/csharp-sdk
Documentation locations found:
README.md: Overview, quick-start, feature listdocs/concepts/tools/tools.md: Full tool documentation with examplesdocs/concepts/resources/resources.md: Full resource documentation with examplesdocs/concepts/prompts/prompts.md: Full prompt documentation with examplesdocs/concepts/sampling/sampling.md: Sampling documentation with examplesdocs/concepts/elicitation/elicitation.md: Elicitation documentation with examplesdocs/concepts/roots/roots.md: Roots documentation with examplesdocs/concepts/logging/logging.md: Logging documentation with examplesdocs/concepts/completions/completions.md: Completions documentation with examplesdocs/concepts/progress/progress.md: Progress documentation with examplesdocs/concepts/cancellation/cancellation.md: Cancellation documentation with examplesdocs/concepts/pagination/pagination.md: Pagination documentation with examplesdocs/concepts/capabilities/capabilities.md: Capabilities and protocol version negotiation with examplesdocs/concepts/ping/ping.md: Ping documentation with examplesdocs/concepts/transports/transports.md: All transport types documented with examplesdocs/concepts/getting-started.md: Getting started guide with code examplessamples/: Multiple sample projects demonstrating end-to-end usagedocs/concepts/elicitation/samples/: Runnable sample projects for elicitationFeature Documentation Table
Summary
Total non-experimental features: 48
PASS (documented with examples): 48/48
PARTIAL (documented, no examples): 0/48
FAIL (not documented): 0/48
Core features documented: 36/36 (100%)
All features documented with examples: 48/48 (100%)
Tier Verdicts
Tier 1 (all non-experimental features documented with examples): PASS
Tier 2 (basic docs covering core features): PASS
Policy Evaluation
Policy Evaluation Assessment
SDK path: /tmp/csharp-sdk
Repository: modelcontextprotocol/csharp-sdk
1. Dependency Update Policy: PASS
Verdict: PASS — A well-configured
.github/dependabot.ymlwith weekly NuGet and GitHub Actions update schedules, PR grouping, and explicit dependency ignore rules constitutes a published dependency update policy.2. Roadmap: PASS
Content summary:
docs/roadmap.mdincludes:Verdict:
3. Versioning Policy: PASS
Content summary:
docs/versioning.mdincludes:[Experimental]attribute policy andMCP-prefixed diagnostic codes[Obsolete]attribute lifecycle for API deprecationVerdict:
Overall Policy Summary
Remediation Guide: modelcontextprotocol/csharp-sdk
Date: 2026-04-05
Current Tier: 1
Path to Tier 2
Not applicable — SDK is already at Tier 1.
Path to Tier 1
No blockers. The SDK meets all Tier 1 requirements:
Informational: Extension Spec Failures
Three client conformance scenarios targeting
extensionspec versions currently fail. These are not counted toward tier scoring (only date-versioned scenarios count) but are noted here as informational:If the
extensionscenarios are promoted to dated spec versions in a future release, these would become tier-relevant. Addressing them proactively is recommended.Recommended Next Steps
extensionauth scenarios get promoted to dated spec versions in upcoming MCP spec releases; address them before they become tier-relevant.