BuildingBlocks.Mcp 1.0.0
Map application message types and public static Minimal API methods to MCP tools on the official C# SDK (ModelContextProtocol 2.2.0) for .NET 8 / 9 / 10. Deny-by-default catalog ([McpTool] or MapTool), typed McpResult, HTTP by default (stdio opt-in), inputSchema from CLR, structuredContent, command-only UseMemoryIdempotency, analyzers BBMCP001–005. Does not require BuildingBlocks.Mediator.
What's Changed
[McpTool] on message types or public static Minimal API methods, deny-by-default scan, or MapTool (including a scoped IServiceProvider overload)
WithMcp() on RouteHandlerBuilder so the same MapGet/MapPost method is also a tool (MVC controllers unsupported)
HTTP MapBuildingBlocksMcp plus opt-in stdio; typed McpResult / McpError
inputSchema from CLR (optional defaults/nullable, enums, [Description] / Swagger text)
Successful CallTool returns JSON text and structuredContent
UseMemoryIdempotency: commands/POST/PUT only; idempotencyKey in schema (format: uuid hint); namespaced keys, lock, JsonElement replay; IMcpIdempotencyStore for Redis
Safe-tool hooks: confirmation, timeout, IMcpToolFilter, IMcpRateLimiter, catalog://tools
Analyzers BBMCP001–005 in the NuGet
Opt-in ActivitySource BuildingBlocks.Mcp (export with Telemetry IntegrateMcp)
Full Changelog: https://github.com/Maxofpower/FeatureFusion/commits/mcp-v1.0.0
What's Changed
- Feat/building blocks mcp by @Maxofpower in #18
Full Changelog: mediator-v1.1.0...mcp-v1.0.0