Class Implementation
- Namespace
- ModelContextProtocol.Protocol
- Assembly
- ModelContextProtocol.Core.dll
Provides the name and version of an MCP implementation.
public sealed class Implementation : IBaseMetadata
- Inheritance
-
Implementation
- Implements
- Inherited Members
Remarks
The Implementation class is used to identify MCP clients and servers during the initialization handshake. It provides version and name information that can be used for compatibility checks, logging, and debugging.
Both clients and servers provide this information during connection establishment.
See the schema for details.
Properties
Icons
Gets or sets an optional list of icons for this implementation.
[JsonPropertyName("icons")]
public IList<Icon>? Icons { get; set; }
Property Value
Remarks
This can be used by clients to display the implementation's icon in a user interface.
Name
Gets or sets the unique identifier for this item.
[JsonPropertyName("name")]
public required string Name { get; set; }
Property Value
Title
Gets or sets a title.
[JsonPropertyName("title")]
public string? Title { get; set; }
Property Value
Remarks
This is intended for UI and end-user contexts. It is optimized to be human-readable and easily understood, even by those unfamiliar with domain-specific terminology. If not provided, Name may be used for display (except for tools, where Title, if present, should be given precedence over using Name).
Version
Gets or sets the version of the implementation.
[JsonPropertyName("version")]
public required string Version { get; set; }
Property Value
Remarks
The version is used during client-server handshake to identify implementation versions, which can be important for troubleshooting compatibility issues or when reporting bugs.
WebsiteUrl
Gets or sets an optional URL of the website for this implementation.
[JsonPropertyName("websiteUrl")]
public string? WebsiteUrl { get; set; }
Property Value
Remarks
This URL can be used by clients to link to documentation or more information about the implementation.
Consumers SHOULD take steps to ensure URLs are from the same domain as the client/server or a trusted domain to prevent security issues.