07-01-03 — MCP na Microsoft

⏱ 15 minFontes validadas em: 2026-04-29

TL;DR

A Microsoft fez uma aposta total no MCP como padrão de integração para o ecossistema Azure AI. Os pilares: Copilot Studio (configuração sem código), Azure AI Foundry Agent Service (runtime gerenciado), Azure Functions como MCP servers (GA em jan/2026), Visual Studio 2026 built-in, e o Semantic Kernel Agent Framework 1.0. Para uma empresa .NET no Azure, esse é o caminho de menor resistência para colocar MCP em produção.

Por que a Microsoft abraçou o MCP

A Microsoft já tinha seu próprio sistema de function calling (via Azure OpenAI) e plugins (via Semantic Kernel). A adoção do MCP foi uma decisão estratégica de ecossistema: ao suportar o padrão aberto, os clientes podem usar qualquer MCP server da comunidade (mais de 1.000 disponíveis) diretamente nos produtos Microsoft, sem reescrever código.

🪟 Anúncio oficial

Em maio de 2025, a Microsoft anunciou no Microsoft Build o suporte MCP em Copilot Studio, Azure AI Foundry e VS Code. A mensagem foi clara: MCP é o padrão de integração do ecossistema Microsoft AI daqui pra frente.

Copilot Studio: MCP sem código

O Copilot Studio (plataforma low-code para criar Copilots personalizados) suporta MCP servers como "actions". Na interface visual, você aponta para a URL de um MCP server e o Copilot Studio importa automaticamente a lista de tools via discovery. Nenhuma linha de código necessária para o usuário final configurar.

Casos de uso típicos para a Impar:

  • Copilot corporativo que acessa ERP (via MCP server custom) + Microsoft 365 (via MCP server nativo) em uma única conversa
  • Assistente de suporte que consulta base de conhecimento interna + abre tickets no ServiceNow
  • Agente de onboarding que lê políticas do SharePoint e cria usuários no AD

Azure AI Foundry Agent Service

O Foundry Agent Service é o runtime gerenciado da Microsoft para agents no Azure. Com suporte MCP, você define tools MCP no código do agente e o Foundry gerencia execução, logging, autoscale e integração com o restante do Azure (Key Vault para secrets, Monitor para observabilidade).

from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import McpTool

# Conectar a um MCP server remoto a partir do Foundry Agent Service
client = AIProjectClient(
    endpoint="https://seu-projeto.services.ai.azure.com/",
    credential=DefaultAzureCredential()
)

mcp_tool = McpTool(
    server_label="sharepoint-docs",
    server_url="https://mcp.suaempresa.com/sharepoint",
    allowed_tools=["search_documents", "list_sites"]
)

agent = client.agents.create_agent(
    model="gpt-4o",
    name="corporate-assistant",
    instructions="Você é um assistente corporativo da Impar.",
    tools=mcp_tool.definitions
)
🪟 Foundry + MCP: vantagens enterprise

O Foundry injeta automaticamente managed identity credentials nos headers das chamadas ao MCP server — você não precisa gerenciar tokens. O server MCP hospedado no Azure recebe um Bearer token do Entra ID que pode ser validado normalmente.

Azure Functions como MCP Servers (GA jan/2026)

A integração mais prática para times .NET: o Azure Functions tem suporte nativo para expor funções como MCP tools, com GA anunciado em janeiro de 2026. A anotação é simples:

// Azure Functions TypeScript — expondo como MCP tool
import { app, HttpRequest, HttpResponseInit, InvocationContext } from "@azure/functions";
import { McpServer } from "@azure/functions-mcp";

const server = new McpServer({ name: "corporate-tools", version: "1.0.0" });

server.tool("search_kb", "Busca na base de conhecimento corporativa", {
  query: { type: "string", description: "Termo de busca" }
}, async ({ query }) => {
  // Lógica de busca no SharePoint / banco de dados
  const results = await searchKnowledgeBase(query);
  return { content: [{ type: "text", text: JSON.stringify(results) }] };
});

app.http("mcp", {
  methods: ["GET", "POST"],
  authLevel: "function",
  handler: server.httpHandler()
});

Com isso, a Azure Function fica acessível como MCP server via Streamable HTTP. O Functions cuida de autoscale, cold start otimizado e integração com o restante do Azure.

💡 Por que Azure Functions?

Para times .NET, Azure Functions é a opção mais natural para hospedar MCP servers: deployment simples, integração nativa com Key Vault, Entra ID e Application Insights, e custo zero em idle (consumption plan). Um MCP server numa Function custa centavos por mês para a maioria dos casos de uso corporativos.

Visual Studio 2026: MCP built-in

O Visual Studio 2026 tem suporte MCP integrado na experiência GitHub Copilot. A configuração é feita via arquivo .mcp.json na raiz da solution — que pode ser comitado no repositório para que toda a equipe tenha acesso aos mesmos MCP servers:

// .mcp.json na raiz da solution
{
  "$schema": "https://json.schemastore.org/mcp.json",
  "servers": {
    "corporate-tools": {
      "type": "http",
      "url": "https://functions.suaempresa.com/api/mcp",
      "headers": {
        "x-functions-key": "${AZURE_FUNCTIONS_KEY}"
      }
    }
  }
}

Semantic Kernel Agent Framework 1.0

O Semantic Kernel (SDK da Microsoft para AI apps em .NET, Python e Java) lançou o Agent Framework 1.0 em 2025, com suporte nativo a MCP. É o caminho para quem quer construir agentes .NET sofisticados que usam tools MCP:

// Semantic Kernel com MCP em C# (simplificado)
var kernel = Kernel.CreateBuilder()
    .AddAzureOpenAIChatCompletion("gpt-4o", endpoint, apiKey)
    .Build();

// Adicionar MCP server como plugin
var mcpClient = await McpClientFactory.CreateAsync(
    new Uri("https://mcp.suaempresa.com/tools"),
    new McpClientOptions { ServerName = "corporate-tools" }
);

var plugin = await kernel.ImportPluginFromMcpClientAsync(mcpClient, "CorporateTools");

// O kernel agora pode usar qualquer tool exposta pelo MCP server
var result = await kernel.InvokePromptAsync(
    "Liste os projetos ativos e me dê um resumo do status de cada um."
);

Mapa do ecossistema Microsoft MCP

graph TB subgraph "Dev Tools" VSC["VS Code\n+ Copilot"] VS2026["Visual Studio 2026"] end subgraph "Low-code / No-code" CS["Copilot Studio"] end subgraph "Runtime Azure" FAAS["Foundry\nAgent Service"] AF["Azure Functions\n(MCP GA jan/2026)"] SK["Semantic Kernel\nAgent Framework 1.0"] end subgraph "MCP Servers" M365["Microsoft 365 MCP"] Custom["Custom MCP\n(sua empresa)"] end VSC --> Custom VS2026 --> Custom CS --> M365 CS --> Custom FAAS --> Custom FAAS --> M365 AF -.->|"é um"| Custom SK --> Custom

Como isso se conecta

  • 07-01-01: fundamentos do protocolo MCP que esses produtos implementam
  • 07-01-04: construa o MCP server que vai hospedar no Azure Functions
  • 07-03-02: desafio prático — MCP server para SharePoint em Azure Functions
  • → Módulo 08 — Stack Microsoft: Semantic Kernel em profundidade

Fontes

  1. Azure AI Foundry — Model Context Protocol (learn.microsoft.com)
  2. Azure Functions MCP Extension — GA jan/2026 (learn.microsoft.com)
  3. Semantic Kernel — Using MCP Tools (learn.microsoft.com)
  4. Copilot Studio — MCP Actions (learn.microsoft.com)
  5. Microsoft Build 2025 — MCP Announcement (devblogs.microsoft.com)