Formerly known as Azure AI Services or Azure Cognitive Services is a unified collection of prebuilt AI capabilities within the Microsoft Foundry platform
- Status of the issue The behavior described matches a known limitation: private MCP connectivity is only validated and supported when:
- Using Standard Agent Setup with private networking (BYO VNet), and
- Hosting the private MCP server on Azure Container Apps on a dedicated MCP subnet, and
- DNS for that private endpoint is resolvable from the agent’s private network.
However, the provided context explicitly calls out that DNS resolution problems can occur for private MCP servers and that this is a known issue in some configurations. The 19-hybrid-private-resources-agent-setup sample and its tests acknowledge DNS-related failures for private MCP via the Data Proxy, and the testing guide notes DNS resolution issues for Container Apps.
The context does not provide an official statement about an active fix or timeline. No SLA or ETA is documented in the referenced materials.
- Required DNS/FQDN format The documentation for private MCP in Agent Service states:
- Private MCP requires Standard Agent Setup with private networking and a dedicated MCP subnet.
- Private DNS must be configured so that the MCP FQDN resolves to a private IP from within the VNet.
For DNS:
- A private DNS zone must exist for the MCP server’s FQDN and be linked to the VNet.
- From a machine connected to the VNet,
nslookup <resource-fqdn>must resolve to a private IP.
The context does not specify any special or alternate DNS zone naming pattern or FQDN format that the Data Proxy requires beyond standard private DNS configuration. It only requires that private DNS resolution works from within the VNet and that conditional forwarders (if using custom DNS) forward to Azure DNS at 168.63.129.16.
- Where DNS resolution is expected to happen For private MCP:
- The documented, supported pattern is: Standard Agent Setup with private networking (BYO VNet) and a dedicated MCP subnet delegated to
Microsoft.App/environments. - The troubleshooting guidance for “Private MCP server is unreachable from agent” states that the MCP server must be on the MCP subnet with the correct delegation and that private DNS resolution must succeed.
This implies the platform expects MCP traffic (including DNS resolution) to flow through the customer’s VNet, using:
- The MCP subnet (for the Container Apps environment), and
- The agent subnet (for the Agent Service runtime injection), and
- The VNet’s DNS configuration (Azure DNS or custom DNS that forwards to Azure DNS).
The context does not describe a configurable DNS resolver for the Data Proxy, nor does it document any mechanism to override or customize how the Data Proxy performs DNS resolution. No setting is documented to point the Data Proxy explicitly at a different DNS server.
- Validated workarounds for private MCP The documentation provides the following validated patterns and guidance:
- Private MCP hosting pattern:
- Host the MCP server on Azure Container Apps with internal-only ingress on a dedicated MCP subnet delegated to
Microsoft.App/environments. - Use the 19-hybrid-private-resources-agent-setup template for a known-good baseline.
- Host the MCP server on Azure Container Apps with internal-only ingress on a dedicated MCP subnet delegated to
- If the private MCP server is unreachable from the agent:
- Verify the MCP server is deployed on the MCP subnet with
Microsoft.App/environmentsdelegation. - Check private DNS zone configuration and linkage to the VNet.
- Ensure DNS resolution of the MCP FQDN returns a private IP from within the VNet.
- Verify the MCP server is deployed on the MCP subnet with
- If Foundry resources themselves are behind Private Link and the hosted Foundry MCP Server cannot reach them:
- Either disable Private Link, use SDKs/REST APIs directly, or use a custom MCP server with private networking through Foundry Agent Service.
The context does not document Azure API Management or any other public proxy as an officially validated workaround for private MCP DNS issues. It also does not document an alternative pattern specifically to work around Data Proxy DNS limitations beyond the standard private MCP guidance above.
Given the provided information, the only documented, supported workaround is to:
- Ensure the MCP server is on the dedicated MCP subnet with correct delegation, and
- Ensure private DNS is correctly configured and resolvable from the VNet, and
- Use Standard Agent Setup with private networking.
No additional, officially validated workaround that avoids public exposure (such as a documented APIM pattern) is described in the context.
References:
- Connect agents to Model Context Protocol servers (typescript)
- Connect agents to Model Context Protocol servers (python)
- Set up private networking for Foundry Agent Service
- Foundry MCP Server best practices and security guidance
- Set up authentication for Model Context Protocol (MCP) tools
- How to configure network isolation for Microsoft Foundry
- Troubleshoot MCP servers on Azure Container Apps
- Troubleshoot connection to a project with a private endpoint (classic)