Extensão MCP do Azure Functions agora suporta MCP Prompts: análise para empresas brasileiras
A extensão MCP do Azure Functions agora oferece suporte a MCP Prompts em preview público, completando as três primitivas do protocolo (tools, resources, prompts). Isso permite construir servidores MCP serverless com autenticação nativa e escalonamento automático de 0 a N. Para empresas brasileiras, significa uma plataforma segura e econômica para agentes de IA, eliminando complexidades de infraestrutura.
O que são MCP Prompts?
No Model Context Protocol (MCP), prompts são templates reutilizáveis que permitem a servidores oferecerem prompts parametrizados para um domínio específico ou demonstrar o melhor uso do servidor. Diferentemente de ferramentas (controladas pelo modelo) e recursos (controlados pela aplicação), os prompts são expostos do servidor para o cliente e exigem invocação explícita pelo usuário. Na prática, as aplicações expõem prompts através de comandos slash, paletas de comandos, botões dedicados ou menus de contexto.
Como funcionam os MCP Prompts no Azure Functions?
Em Python, definir um prompt é tão simples quanto decorar uma função. Veja um exemplo que retorna um checklist de code review:
app.mcp_prompt_trigger(
arg_name="context",
prompt_name="code_review_checklist",
description="Returns a structured code review checklist prompt for evaluating code changes."
)
def code_review_checklist(context: func.PromptInvocationContext) -> str:
logging.info("Code review checklist prompt invoked.")
return """You are a senior software engineer performing a code review.
Use the following checklist to evaluate the code:
1. **Correctness** — Does the code do what it's supposed to?
2. **Error Handling** — Are edge cases and failures handled?
3. **Security** — Are there any vulnerabilities (injection, auth, secrets)?
4. **Performance** — Are there obvious inefficiencies?
5. **Readability** — Is the code clear and well-named?
6. **Tests** — Are there adequate tests for the changes?
Provide your feedback in a structured format with a severity level
(critical, warning, suggestion) for each finding."""
Prompts também podem aceitar argumentos, permitindo que clientes personalizem a mensagem gerada. O exemplo abaixo gera documentação com parâmetros configuráveis:
app.mcp_prompt_trigger(
arg_name="context",
prompt_name="generate_documentation",
prompt_arguments=[
func.PromptArgument("function_name", "The name of the function to document.", required=False),
func.PromptArgument("style", "Documentation style: 'concise', 'detailed', or 'tutorial'.", required=False)
],
description="Generates API documentation for a function. Arguments are configured in Program.cs."
)
def generate_documentation(context: func.PromptInvocationContext) -> str:
function_name = context.arguments.get("function_name", "(unknown)")
style = context.arguments.get("style", "concise")
logging.info(f"Generate docs prompt invoked for function: {function_name}")
return f"""Generate API documentation for the function named **{function_name}**.
Documentation style: **{style}**
Include the following sections:
- **Description** — What the function does.
- **Parameters** — List each parameter with its type and purpose.
- **Return Value** — What the function returns.
- **Example Usage** — A short code example showing how to call it."""
Por que escolher o Azure Functions para hospedar servidores MCP?
O Azure Functions é a plataforma ideal para hospedar servidores MCP remotos por três razões principais: autenticação MCP embutida, escalonamento orientado a eventos (de 0 a N) e faturamento serverless. Isso garante que suas ferramentas de agente sejam seguras, com custos proporcionais ao uso e prontas para qualquer carga. Com a extensão MCP, o foco do time de engenharia fica em implementar as primitivas que deseja expor (tools, resources e prompts) sem se preocupar com detalhes do protocolo MCP ou logística de servidor.
Como começar a usar o MCP prompt trigger?
A Microsoft disponibiliza quickstarts e samples para Python, TypeScript, .NET e Java. Os links diretos para os repositórios no GitHub:
Documentação oficial:
Perguntas Frequentes
-
O que são MCP Prompts e como diferem de tools e resources?
MCP Prompts são templates reutilizáveis e parametrizáveis que exigem invocação explícita pelo usuário. Diferem de tools (controladas pelo modelo) e resources (controladas pela aplicação) porque são expostos do servidor para o cliente, permitindo que o usuário os selecione manualmente via comandos slash, paletas ou menus. -
Quais linguagens de programação são suportadas para criar prompts?
O Azure Functions MCP extension suporta Python, TypeScript, .NET e Java. Os exemplos no artigo demonstram prompts em Python usando decoradores, mas há quickstarts e samples disponíveis para todas essas linguagens no GitHub. -
Como o Azure Functions garante segurança e escalabilidade para servidores MCP?
O Azure Functions oferece autenticação MCP embutida, escalonamento orientado a eventos (de 0 a N) e faturamento serverless. Isso assegura que os agentes de IA sejam seguros, com custos proporcionais ao uso e prontos para qualquer carga, sem que o time precise se preocupar com detalhes do protocolo MCP ou logística de servidor. -
O recurso de MCP Prompts está disponível em produção?
Não, o MCP prompt trigger está atualmente em public preview. Já o recurso de MCP resource trigger está em disponibilidade geral (GA). Com essa versão, a extensão passa a suportar todas as três primitivas centrais do MCP.
Artigo originalmente publicado em Azure Updates - Latest from Azure Charts.