MCPSharp and MCP-Plugin-dotnet

These are complements: MCPSharp provides the foundational .NET library and protocol implementation for building MCP servers, while MCP-Plugin-dotnet builds on top of that abstraction to offer a higher-level plugin architecture for exposing application methods and data as MCP resources.

MCPSharp
49
Emerging
MCP-Plugin-dotnet
39
Emerging
Maintenance 6/25
Adoption 10/25
Maturity 16/25
Community 17/25
Maintenance 13/25
Adoption 4/25
Maturity 9/25
Community 13/25
Stars: 362
Forks: 41
Downloads:
Commits (30d): 0
Language: C#
License: MIT
Stars: 8
Forks: 2
Downloads:
Commits (30d): 0
Language: C#
License: Apache-2.0
No Package No Dependents
No Package No Dependents

About MCPSharp

afrise/MCPSharp

MCPSharp is a .NET library that helps you build Model Context Protocol (MCP) servers and clients - the standardized API protocol used by AI assistants and models.

Implements attribute-based tool exposure with automatic JSON-RPC handling and parameter validation, supporting both stdio and SSE transports. Integrates seamlessly with Microsoft.Extensions.AI and Semantic Kernel, allowing .NET methods to be registered as AIFunctions or KernelFunctions without vendor lock-in. Features dynamic tool registration, resource endpoints, XML documentation extraction, and real-time tool change notifications for connected clients.

About MCP-Plugin-dotnet

IvanMurzak/MCP-Plugin-dotnet

.NET MCP bridge: expose app methods/data as MCP tools, prompts, and resources via an in-app plugin + lightweight server (SignalR; stdio/http).

Implements a bridge architecture where a lightweight in-app SignalR client connects to a persistent MCP server gateway, enabling heavy .NET applications (Unity, WPF, game servers) to expose live functionality without independent lifecycle constraints. Built on ReflectorNet for automatic schema generation and fuzzy method matching, it supports attribute-based tool/prompt/resource registration with first-class dependency injection and assembly scanning. Offers both stdio and HTTP transport flexibility, with automatic reconnection resilience for maintaining long-lived connections.

Scores updated daily from GitHub, PyPI, and npm data. How scores work