Microsoft AI guidance- Migrating to Microsoft MCP package#3154
Open
souvikghosh04 wants to merge 9 commits intomainfrom
Open
Microsoft AI guidance- Migrating to Microsoft MCP package#3154souvikghosh04 wants to merge 9 commits intomainfrom
souvikghosh04 wants to merge 9 commits intomainfrom
Conversation
Contributor
Author
|
/azp run |
|
Azure Pipelines successfully started running 6 pipeline(s). |
Contributor
There was a problem hiding this comment.
Pull request overview
Migrates DAB’s MCP hosting layer from the community MCP SDK to Microsoft’s Microsoft.ModelContextProtocol.HttpServer, updating service registration, endpoint mapping, middleware, and related telemetry/content handling to support the new package and enterprise features (Entra ID/MISE, rate limiting, OTel).
Changes:
- Swaps MCP NuGet dependencies to
Microsoft.ModelContextProtocol.HttpServerand updates NuGet feed/source mapping. - Updates MCP server setup to conditionally use Microsoft MCP pipeline when Entra ID is configured; otherwise falls back to base MCP server.
- Adjusts telemetry and MCP response/test helpers for API changes (OTel exception recording, MCP content blocks).
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/Service/Startup.cs | Passes IConfiguration into MCP registration and conditionally adds Microsoft MCP middleware. |
| src/Service.Tests/UnitTests/McpTelemetryTests.cs | Updates test helper to stop setting read-only/removed TextContentBlock.Type. |
| src/Directory.Packages.props | Replaces community MCP packages with Microsoft MCP HttpServer and bumps several related dependency versions. |
| src/Core/Telemetry/TelemetryTracesHelper.cs | Updates exception/status reporting on Activity for newer telemetry APIs. |
| src/Azure.DataApiBuilder.Mcp/Utils/McpResponseBuilder.cs | Updates MCP response content construction for the new SDK shape. |
| src/Azure.DataApiBuilder.Mcp/Core/McpToolRegistry.cs | Avoids duplicate-registration errors by skipping same-instance re-registration. |
| src/Azure.DataApiBuilder.Mcp/Core/McpServiceCollectionExtensions.cs | Threads IConfiguration into MCP registration and exposes Entra-config check. |
| src/Azure.DataApiBuilder.Mcp/Core/McpServerConfiguration.cs | Selects Microsoft vs base MCP server builder and wires tool handlers + HTTP transport. |
| src/Azure.DataApiBuilder.Mcp/Core/McpEndpointRouteBuilderExtensions.cs | Conditionally maps Microsoft MCP endpoints when Entra ID is configured. |
| src/Azure.DataApiBuilder.Mcp/Azure.DataApiBuilder.Mcp.csproj | Replaces community MCP package refs with Microsoft MCP HttpServer. |
| Nuget.config | Adds EngThrive-MCP feed and package source mapping for MCP/MISE packages. |
JerryNixon
approved these changes
Feb 26, 2026
8744d53 to
6176d27
Compare
Contributor
Author
|
/azp run |
|
Azure Pipelines successfully started running 6 pipeline(s). |
Contributor
Author
|
/azp run |
|
Azure Pipelines successfully started running 6 pipeline(s). |
Contributor
Author
|
/azp run |
|
Azure Pipelines successfully started running 6 pipeline(s). |
Contributor
Author
|
/azp run |
|
Azure Pipelines successfully started running 6 pipeline(s). |
Contributor
Author
|
/azp run |
|
Azure Pipelines successfully started running 6 pipeline(s). |
… Usr/sogh/msftaiguidance
…ta-api-builder into Usr/sogh/msftaiguidance
Contributor
Author
|
/azp run |
|
Azure Pipelines successfully started running 6 pipeline(s). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why make this change?
Migrate DAB's MCP layer from the community SDK (
ModelContextProtocol0.3.0-preview.4) to Microsoft's officialMicrosoft.ModelContextProtocol.HttpServer(0.1.0-preview.25). This positions DAB for future Entra ID authentication, MISE integration, rate limiting, and first-party OpenTelemetry support.What is this change?
ModelContextProtocol+ModelContextProtocol.AspNetCore) with singleMicrosoft.ModelContextProtocol.HttpServer. AddedEngThrive-MCPADO feed + package source mapping. Aligned all OpenTelemetry packages (1.9 to 1.12/1.13). BumpedConfiguration.Binder(8.0 to 9.0).WithListToolsHandler()/WithCallToolHandler()replacing inline options delegates. Moved ServerInfo/Capabilities to defensivePostConfigure<McpServerOptions>.TextContentBlock.Typeassignments. Replaced deprecated OTel APIs (SetStatus/RecordException to Activity native methods). Removed unused using OpenTelemetry.Trace.McpToolRegistry.RegisterTool()now skips same-instance re-registration viaReferenceEqualsto prevent duplicate errors in stdio mode.EngThrive-MCPfeed across all pipeline YAMLs.How was this tested?
ReferenceEqualsfix