Azure Functions MCP Support Goes GA: Standardizing Agentic Workflows at Scale

TL;DR Microsoft has moved its Model Context Protocol (MCP) support for Azure Functions to General Availability, signaling a shift toward standardized, identity-secure agentic workflows. If you’re building AI agents in .NET, this means you can now deploy MCP servers on Azure Functions with production-grade security, cost-efficient scaling, and tight integration with Azure AI Foundry—no more experimental status.


The Story: MCP Finally Hits Production

For months, developers building AI agents faced a fragmentation problem. Anthropic’s Model Context Protocol (MCP), a “USB-C for AI” that lets AI agents talk to the external tools like databases, search engines, and APIs, proved the missing connective tissue and is quickly becoming the standard. OpenAI and Microsoft have publicly embraced MCP, and Anthropic recently donated it to the Linux Foundation’s new Agentic AI Foundation, which aims to help standardize open source agentic tools. Now, the tooling catches up. Microsoft has launched its Model Context Protocol (MCP) for Azure Functions, ensuring secure, standardized workflows for AI agents. With built-in OBO authentication and streamable HTTP transport, it addresses key security concerns. Now supporting multiple languages and self-hosting, MCP empowers developers to deploy with ease while safeguarding sensitive data. —

What This Means for .NET Engineers

Multi-Language Support (Including C#)

Microsoft has published quickstart templates for both hosting approaches across multiple languages. The MCP extension quickstarts cover C# (.NET), Python, TypeScript (Node.js), with a Java QuickStart coming soon. This is huge for .NET shops. You can now write MCP servers in C# and deploy them directly to Azure Functions—no language switching required.

Seamless Azure AI Foundry Integration

The platform integrates directly with Azure AI Foundry, allowing agents to discover and invoke MCP tools without additional configuration layers. This means your agents can automatically discover and call your MCP-enabled functions without manual plumbing.

Cost and Latency Trade-offs

Here’s where the engineering gets interesting. Azure Functions offers multiple hosting plans tailored to different MCP server requirements. The Flex Consumption plan provides automatic scaling based on demand with a pay-per-execution billing model and scale-to-zero economics. When MCP tools sit idle, costs drop to zero while maintaining fast wake-up times. The Premium plan supports “always-ready” instances that remain pre-initialized, eliminating cold-start latency, which is critical for mission-critical tools where initialization delays can cause SSE connection timeouts and poor agent response times. Practical takeaway: Use Flex Consumption for bursty, low-traffic tools. Use Premium for high-frequency agent calls where latency matters (e.g., real-time customer support agents).

Known Limitations to Watch

Nested arrays and complex types must be serialized as comma-separated strings when integrating with Azure AI Foundry, and programmatic tool approval using require_approval=”never” is necessary for production workflows since UI-based approvals don’t persist in automated deployments. Translation: If you’re passing structured data to your MCP servers, flatten it. And automate your approval flow—don’t rely on the portal.


Quick Start: C# MCP on Azure Functions

Here’s a skeleton to get you going:

// MCP Server in C# on Azure Functions
using Microsoft.Azure.Functions.Worker;
using Microsoft.Extensions.Logging;

public class MCPToolFunction
{
    [Function("GetCustomerData")]
    public async Task<string> GetCustomerData(
        [HttpTrigger(AuthorizationLevel.Function, "post", Route = "tools/customer/{id}")] 
        HttpRequestData req,
        string id,
        ILogger log)
    {
        log.LogInformation($"Fetching customer {id}");
        
        // Your business logic here
        var customer = await FetchFromDatabase(id);
        
        // Return MCP-compatible response
        return JsonConvert.SerializeObject(new { 
            id = customer.Id, 
            name = customer.Name,
            email = customer.Email
        });
    }
}

Deploy it, wire it into Azure AI Foundry, and your agents can call it like any other tool. The authentication is handled via built-in OBO authentication (on-behalf-of), so your agents inherit the caller’s identity.


The Bigger Picture

With MCP reducing the friction of connecting agents to real systems, 2026 is likely to be the year agentic workflows finally move from demos into day-to-day practice. Rajeev Dham, a partner at Sapphire Ventures, says these advancements will lead to agent-first solutions taking on “system-of-record roles” across industries. Azure Functions + MCP + AI Foundry is Microsoft’s answer to that shift. You’re no longer gluing together experimental tools; you’re building production-grade agent infrastructure on the same platform you use for everything else.


Further Reading

  • https://www.infoq.com/news/2026/01/azure-functions-mcp-support/
  • https://learn.microsoft.com/en-us/azure/ai-services/openai/api-version-lifecycle
  • https://techcrunch.com/2026/01/02/in-2026-ai-will-move-from-hype-to-pragmatism/
  • https://devblogs.microsoft.com/all-things-azure/the-realities-of-application-modernization-with-agentic-ai-early-2026/
  • https://devblogs.microsoft.com/dotnet/generative-ai-with-large-language-models-in-dotnet-and-csharp/