Upgrade ModelContextProtocol SDK to 2.x (MCP 2026-07-28)
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Después de que se integre el epic de unificación de CLI/MCP #38, actualiza el pin de ModelContextProtocol en Directory.Packages.props de 1.4.0 a 2.2.0 y comienza con restore para comprobar el conflicto de versiones de Microsoft.Extensions. Ejecuta las comprobaciones de unit, integration, build y auditoría de NuGet; después, prueba legacy initialize y new discovery sobre stdio con los cuatro clientes mencionados; se considera terminado cuando todas las comprobaciones de aceptación pasan y las versiones de los clientes quedan registradas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Scope
Directory.Packages.props pins ModelContextProtocol 1.4.0. The current stable is 2.2.0 (matches the 2026-07-28 protocol revision). Upgrade after the CLI/MCP unification epic (#38) lands, as a standalone dependency PR.
What we use, and expected impact
An API audit of the 2.2.0 package against this repo found no source-breaking change for our surface:
| Used here | Status in 2.x |
|---|---|
[McpServerToolType], [McpServerTool] with ReadOnly/Destructive/Idempotent |
retained |
AddMcpServer(), WithStdioServerTransport(), WithTools<T>() |
retained |
Task<string> tools with [Description] and injected CancellationToken |
retained |
| HTTP/SSE transport, Roots, Sampling, MCP Logging, Tasks, raw JSON-RPC | not used, so their breaking changes do not apply |
This is an inspection result, not a compile. 2.2.0 requires Microsoft.Extensions 10.0.10 abstractions and Microsoft.Extensions.AI.Abstractions 10.8.3; the repo pins Microsoft.Extensions 10.0.9, so a restore conflict is possible and must be checked.
Client impact
- Stdio config for Claude Code, Codex CLI, Claude Desktop and VS Code stays the same (
tp mcp ...). No HTTP, port, or OAuth change. - 2.x keeps down-level interoperability: legacy clients still do
initializeversion negotiation, 2026-07-28 clients use discovery. Upgrading the server does not drop older clients, but each client must be tested at a recorded version. - Keep
--tenant,--env, accounting gating, and stderr-only logging.
New capabilities to adopt afterwards, each in its own PR
- Structured output:
UseStructuredContent = truewith typed result records (already available in 1.4.x), keeping JSON text for older consumers. - Tool annotations: mark reads
ReadOnly, mark update/delete/cancel/import destructive.GetSuggestedTimesheetsrefreshes server state, so it is not read-only. RevisitIdempotent = trueon import. - Elicitation for confirmations on destructive tools, with a fallback for clients that do not support it.
Acceptance
- Restore, build, unit, integration and NuGet audit green on 2.2.0
- Stdio initialize (legacy) and discovery (new) both work;
tools/listshows 18 default / 47 with accounting - Reads, errors, cancellation and shutdown exercised; writes only against fakes or staging
- Four named clients tested and versions recorded in the PR
- Lenguaje dominante
- C#
- Estrellas
- 3
- Forks
- 0
- Merge medio
- 8 min
- PR fusionados (30 d)
- 26
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de SSWConsulting/TimePro.Tools
-
Priority: P3 Type: Refactor
Dificultad 5/5 Más de una semana Aptitud para principiantes 38/100
SSWConsulting/TimePro.Tools#101 ·
Los mantenedores suelen responder en 1 día
-
Priority: P3 Type: Refactor
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
SSWConsulting/TimePro.Tools#100 ·
Los mantenedores suelen responder en 1 día
-
Accounting: share product, SKU, rate, unbilled and recurring reads (unbilled paging is a no-op)AbiertoPriority: P3 Type: Refactor
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
SSWConsulting/TimePro.Tools#99 ·
Los mantenedores suelen responder en 1 día
-
Priority: P2 Type: Refactor
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
SSWConsulting/TimePro.Tools#98 ·
Los mantenedores suelen responder en 1 día
-
Priority: P2 Type: Bug Type: Refactor
Dificultad 5/5 Más de una semana Aptitud para principiantes 38/100
SSWConsulting/TimePro.Tools#97 ·
Los mantenedores suelen responder en 1 día
Todos los issues de SSWConsulting/TimePro.Tools
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
dette technique priorité: basse zone: service
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
damiensabau/nexus-lobby#25 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
sebastienros/jint#4282 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 76/100
pyrevitlabs/pyRevit#3792 ·
Los mantenedores suelen responder en 1 día