Skip to content
Merged
Show file tree
Hide file tree
Changes from 12 commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
cec5d99
Remove SEP-1686 experimental tasks
PranavSenthilnathan May 15, 2026
142a8b3
Merge branch 'main' of https://github.com/modelcontextprotocol/csharp…
PranavSenthilnathan May 15, 2026
b1cc0a6
Add DTOs
PranavSenthilnathan May 19, 2026
59da0c7
Client changes
PranavSenthilnathan May 21, 2026
dd1d2a0
Handlers
PranavSenthilnathan May 21, 2026
bbaee1d
tests
PranavSenthilnathan May 21, 2026
eaa7f1c
Add a store and handle input required
PranavSenthilnathan May 23, 2026
34a0999
Add more tests
PranavSenthilnathan May 29, 2026
d4905fa
cleanup
PranavSenthilnathan May 29, 2026
e47ced7
edge cases
PranavSenthilnathan May 29, 2026
2dd629c
Merge remote-tracking branch 'upstream/main' into new-tasks
PranavSenthilnathan May 29, 2026
12c522f
Merge upstream/main; integrate tasks input-requests with MRTR types
PranavSenthilnathan Jun 5, 2026
17f95f7
Fix _meta
PranavSenthilnathan Jun 10, 2026
8b47086
Address PR feedback: typed Failed payload, orphan task fix, MRTR catch
PranavSenthilnathan Jun 10, 2026
0b8944f
Address PR feedback: docs, tests, and rename TaskResult to Result
PranavSenthilnathan Jun 10, 2026
5050d79
Make MaxConsecutiveStuckPolls configurable on McpClientOptions
PranavSenthilnathan Jun 10, 2026
29ca3e7
Add TasksExtension sample and fix two stale references in tasks.md
PranavSenthilnathan Jun 10, 2026
b1d3786
Merge upstream/main; resolve McpServer.Methods.cs <remarks> conflicts
PranavSenthilnathan Jun 11, 2026
81da12f
Fix AoT serialization errors
PranavSenthilnathan Jun 11, 2026
6e485a9
Order notification round-trip test by server-set LastUpdatedAt
PranavSenthilnathan Jun 11, 2026
8ba52bf
Fix docfx UidNotFound and InvalidBookmark warnings
PranavSenthilnathan Jun 11, 2026
1d3ebb8
Sync AddIncomingMessageFilter_Intercepts_Request_Messages on initiali…
PranavSenthilnathan Jun 11, 2026
d8aeb4e
Add CompatibilitySuppressions.xml for MRTR (SEP-1686) removal
PranavSenthilnathan Jun 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
<!-- Product dependencies .NET Standard -->
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<PackageVersion Include="Microsoft.Bcl.Memory" Version="$(System10Version)" />
<PackageVersion Include="System.Collections.Immutable" Version="$(System10Version)" />
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="$(System10Version)" />
<PackageVersion Include="System.IO.Pipelines" Version="$(System10Version)" />
<PackageVersion Include="System.Text.Json" Version="$(System10Version)" />
Expand Down
1 change: 0 additions & 1 deletion ModelContextProtocol.slnx
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@
<Project Path="samples/ChatWithTools/ChatWithTools.csproj" />
<Project Path="samples/EverythingServer/EverythingServer.csproj" />
<Project Path="samples/InMemoryTransport/InMemoryTransport.csproj" />
<Project Path="samples/LongRunningTasks/LongRunningTasks.csproj" />
<Project Path="samples/ProtectedMcpClient/ProtectedMcpClient.csproj" />
<Project Path="samples/ProtectedMcpServer/ProtectedMcpServer.csproj" />
<Project Path="samples/QuickstartClient/QuickstartClient.csproj" />
Expand Down
791 changes: 272 additions & 519 deletions docs/concepts/tasks/tasks.md

Large diffs are not rendered by default.

5 changes: 2 additions & 3 deletions docs/experimental.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ Add the diagnostic ID to `<NoWarn>` in your project file:
Use `#pragma warning disable` around specific call sites:

```csharp
#pragma warning disable MCPEXP001 // The Tasks feature is experimental per the MCP specification and is subject to change.
tool.Execution = new ToolExecution { ... };
#pragma warning disable MCPEXP001 // The Extensions feature is part of a future MCP specification version that has not yet been ratified and is subject to change.
capabilities.Extensions = new Dictionary<string, object> { ... };
#pragma warning restore MCPEXP001
```

Expand Down Expand Up @@ -67,4 +67,3 @@ By placing the SDK's resolver first, MCP types are serialized using the SDK's co

- [Versioning](versioning.md)
- [List of diagnostics](list-of-diagnostics.md#experimental-apis)
- [Tasks](concepts/tasks/tasks.md) (an experimental feature)
2 changes: 1 addition & 1 deletion docs/list-of-diagnostics.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ If you use experimental APIs, you will get one of the diagnostics shown below. T

| Diagnostic ID | Description |
| :------------ | :---------- |
| `MCPEXP001` | Experimental APIs for features in the MCP specification itself, including Tasks and Extensions. Tasks provide a mechanism for asynchronous long-running operations that can be polled for status and results (see [MCP Tasks specification](https://modelcontextprotocol.io/seps/1686-tasks)). Extensions provide a framework for extending the Model Context Protocol while maintaining interoperability (see [SEP-2133](https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2133)). |
| `MCPEXP001` | Experimental APIs for features in the MCP specification itself, including Tasks and Extensions. Tasks provide a mechanism for asynchronous long-running operations that can be polled for status and results (see [SEP-2663](https://github.com/modelcontextprotocol/modelcontextprotocol/blob/main/seps/2663-tasks-extension.md)). Extensions provide a framework for extending the Model Context Protocol while maintaining interoperability (see [SEP-2133](https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2133)). |
| `MCPEXP002` | Experimental SDK APIs unrelated to the MCP specification itself, including subclassing `McpClient`/`McpServer` (see [#1363](https://github.com/modelcontextprotocol/csharp-sdk/pull/1363)) and `RunSessionHandler`, which may be removed or change signatures in a future release (consider using `ConfigureSessionOptions` instead). |

## Obsolete APIs
Expand Down
2 changes: 1 addition & 1 deletion docs/roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ The C# SDK tracks implementation of MCP spec components using the [modelcontextp

### Next Spec Revision

The next MCP specification revision is being developed in the [protocol repository](https://github.com/modelcontextprotocol/modelcontextprotocol). The C# SDK already has experimental support for [Tasks](concepts/tasks/tasks.md) (experimental in the specification), which will be updated as the specification is revised.
The next MCP specification revision is being developed in the [protocol repository](https://github.com/modelcontextprotocol/modelcontextprotocol).

### Feedback and End-to-End Scenarios

Expand Down
Loading
Loading