[フレーム]
BT

InfoQ Software Architects' Newsletter

A monthly overview of things you need to know as an architect or aspiring architect.

View an example

We protect your privacy.

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Unlock the full InfoQ experience

Unlock the full InfoQ experience by logging in! Stay updated with your favorite authors and topics, engage with content, and download exclusive resources.

Log In
or

Don't have an InfoQ account?

Register
  • Stay updated on topics and peers that matter to youReceive instant alerts on the latest insights and trends.
  • Quickly access free resources for continuous learningMinibooks, videos with transcripts, and training materials.
  • Save articles and read at anytimeBookmark articles to read whenever youre ready.

Topics

Choose your language

InfoQ Homepage News MCP C# SDK Aligns with New Protocol Specification, Bringing Security and Tooling Updates

MCP C# SDK Aligns with New Protocol Specification, Bringing Security and Tooling Updates

Aug 20, 2025 2 min read

Write for InfoQ

Feed your curiosity. Help 550k+ global
senior developers
each month stay ahead.
Get in touch
Listen to this article - 0:00
Audio ready to play
0:00
0:00

The Model Context Protocol (MCP) C# SDK has been updated to support the latest specification, version 2025年06月18日. As reported, this release introduces several new features for .NET developers working on AI applications, including an updated authentication protocol, elicitation support, structured tool output, and resource links in tool responses.

For less familiar readers, the MCP Specification is described as:

Model Context Protocol (MCP) is an open protocol that enables seamless integration between LLM applications and external data sources and tools. Whether you’re building an AI-powered IDE, enhancing a chat interface, or creating custom AI workflows, MCP provides a standardized way to connect LLMs with the context they need.

One of the most notable updates in this version is the new authentication protocol. It as explained separates the roles of the authentication server and the resource server, making it easier to integrate with widely used standards such as OAuth 2.0 and OpenID Connect. It is stated that the goal is to improve both flexibility and security when managing access to external resources.

Another important feature, as stated in the release, is elicitation support. This addition allows servers to request structured information directly from users during interactions, enabling more dynamic and context-aware AI experiences. On the server side, elicitation is handled through the ElicitAsync extension method, which requires developers to define schemas for the requested input values. These schemas, limited to primitive types such as strings, numbers, and booleans, may also include descriptions to guide users.

Client applications can opt into elicitation by declaring support in their capabilities. In the C# SDK, this is managed through the ElicitationHandler, which defines how user input is gathered and returned to the server. Depending on whether the user provides the requested information, the handler returns an appropriate ElicitResult marking the input as accepted or rejected.

The specification also adds structured tool output. Previously, tools could return structured data, but it was left to the client or language model to parse it without guidance. With the latest update, tools can return explicitly defined schemas for their output, allowing applications to process results more reliably. The C# SDK automatically generates JSON schemas for tool outputs and includes them in the metadata, ensuring consistency across tool responses.

Support for resource links in tool results has also been introduced. This addition allows tools to include direct references to resources in their outputs, improving navigation and discovery. As reported, this is especially useful for tools that create or manage resources, since clients can easily access them. An example is shown below:

[McpServerTool]
[Description("Creates a resource with a random value and returns a link to this resource.")]
public async Task<CallToolResult> MakeAResource()
{
 int id = new Random().Next(1, 101); // 1 to 100 inclusive
 var resource = ResourceGenerator.CreateResource(id);
 var result = new CallToolResult();
 result.Content.Add(new ResourceLinkBlock()
 {
 Uri = resource.Uri,
 Name = resource.Name
 });
 return result;
}


Beyond the major additions, the new specification brings schema improvements, such as enhanced metadata support and human-friendly titles, aimed at making development smoother and outputs more accessible.

Developers can begin using the new features by updating their SDK package with:

dotnet add package ModelContextProtocol --prerelease

The release also included best practice guidance, highlighting the need to follow proper OAuth flows, validate elicited input, use resource indicators, and adopt the security recommendations outlined in the protocol.

The MCP team emphasized that the ecosystem is continuing to grow and confirmed their commitment to keeping the C# SDK aligned with the latest specification updates.

For interested readers, full release notes are available on the official channels.

About the Author

Almir Vuk

Show moreShow less

Rate this Article

Adoption
Style

This content is in the .NET topic

Related Topics:

Related Content

The InfoQ Newsletter

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example

We protect your privacy.

BT

AltStyle によって変換されたページ (->オリジナル) /