MCP Apps

MCP Apps: cartões interativos dentro do chat

As MCP Apps permitem que um servidor MCP mostre uma interface interativa na conversa em vez de texto simples. Uma ferramenta aponta para um recurso HTML e a app de IA apresenta-o numa moldura isolada (sandbox).

Na sua app de IAMCP App
Ravens vs crows

Ravens are generally larger and heavier-billed than crows. Ravens often have wedge-shaped tails and deeper calls, while crows commonly make a familiar caw. Size: Generally larger (Ravens), Generally smaller (Crows) Bill: Heavier, more curved (Ravens), Usually slimmer (Crows) Tail: Often wedge-shaped (Ravens), Usually fan-shaped (Crows) Call: Deep croak (Ravens), Often a caw (Crows)

Exemplos

O que uma MCP App pode mostrar

Estas são respostas gravadas da WebKnox, mostradas pelo mesmo elemento <webknox-answer> que a MCP App da WebKnox. Abra qualquer uma no Answer Lab.

Como funcionam as MCP Apps

Uma MCP App combina dois elementos básicos do MCP, uma ferramenta e um recurso. As MCP Apps são uma extensão opcional do protocolo, por isso a app de IA tem de as suportar.

  1. A ferramenta indica uma vista

    A sua descrição inclui _meta.ui.resourceUri, que aponta para um recurso ui://.

  2. A app obtém-na

    A app de IA lê esse recurso a partir do seu servidor: uma página HTML, muitas vezes com o script e os estilos incluídos.

  3. Corre numa sandbox

    A página é apresentada num iframe isolado (sandbox) na conversa e não consegue aceder à app que a rodeia.

  4. Comunicam por mensagens

    Através de postMessage, a app envia o resultado da ferramenta à vista, e a vista pode chamar ferramentas ou enviar uma mensagem.

Que apps de IA as mostram

O suporte varia de app para app e muda depressa. É aqui que a WebKnox mostra hoje as suas respostas.

App de IAA WebKnox mostra
ClaudeCartão interativo
ChatGPTCartão interativo
VS CodeCartão interativo
GooseCartão interativo
Claude CodeTexto com fontes
CodexTexto com fontes

O projeto MCP mantém uma lista das apps que suportam extensões. A sua documentação refere também o Microsoft 365 Copilot, o Postman e o MCPJam.

Experimente em dois minutos

A WebKnox é um servidor MCP remoto com respostas gratuitas todos os dias e sem iniciar sessão para começar. Adicione o respetivo endereço à sua app de IA e peça depois uma comparação, uma previsão ou uma receita.

URL do servidor
https://mcp.webknox.com/mcp

Use os cartões da WebKnox na sua própria MCP App

Está a criar o seu próprio servidor MCP? Faça com que uma ferramenta consulte a Answers API e devolva a resposta como structuredContent e, depois, mostre-a com o elemento da WebKnox na sua vista. Obtém cartões com fontes sem escrever a interface.

O seu servidor MCP
import {registerAppTool, registerAppResource, RESOURCE_MIME_TYPE} from '@modelcontextprotocol/ext-apps/server';

const uri = 'ui://my-app/card.html';

registerAppResource(server, uri, uri, {mimeType: RESOURCE_MIME_TYPE}, async () => ({
  contents: [{
    uri,
    mimeType: RESOURCE_MIME_TYPE,
    text: viewHtml, // the bundled view below
    _meta: {ui: {csp: {resourceDomains: ['https://webknox.com']}}},
  }],
}));

registerAppTool(server, 'ask', {
  description: 'Answers with a sourced card.',
  inputSchema: z.object({question: z.string()}),
  _meta: {ui: {resourceUri: uri}},
}, async ({question}) => {
  const answer = await askWebKnox(question); // POST /v2/answers
  return {
    content: [{type: 'text', text: answer.text ?? 'No card for this question.'}],
    structuredContent: answer,
  };
});
A sua vista
<webknox-answer external-media></webknox-answer>

<script type="module">
  import '@webknox/elements';
  import {App} from '@modelcontextprotocol/ext-apps';

  const card = document.querySelector('webknox-answer');
  const app = new App({name: 'My cards', version: '1.0.0'});

  app.ontoolresult = ({structuredContent}) => {
    card.answer = structuredContent;
  };
  app.connect();
</script>

Agrupe a vista num único ficheiro HTML, como faz o guia oficial. As imagens das respostas são carregadas a partir de https://webknox.com, o que a política de segurança do recurso permite no exemplo.

Perguntas sobre as MCP Apps

O que são as MCP Apps?

As MCP Apps são uma extensão oficial do Model Context Protocol. Permitem que um servidor MCP devolva uma interface HTML interativa que a app de IA mostra na conversa, em vez de apenas texto.

Qual é a diferença entre um servidor MCP e uma MCP App?

Um servidor MCP dá ferramentas e dados a uma app de IA. Uma MCP App é um servidor MCP cuja ferramenta traz também uma vista, para que o resultado apareça como uma interface que as pessoas podem usar.

As MCP Apps funcionam no Claude e no ChatGPT?

Sim. Os cartões da WebKnox aparecem no Claude, no ChatGPT, no VS Code e no Goose. Os clientes só de texto, como o Claude Code e o Codex, recebem a resposta em texto com as respetivas fontes.

As MCP Apps são seguras?

Correm numa moldura isolada controlada pela app de IA, pelo que não conseguem ler a página que as rodeia nem os respetivos cookies. Só chegam à app através de mensagens, e é a app que decide o que podem fazer.

Quanto custa a MCP App da WebKnox?

Sem conta, cada pessoa tem 10 respostas com cartão por dia. O Claude não indica à WebKnox quem está a perguntar, por isso, no Claude, todos partilham uma quota diária comum, que pode esgotar-se mais cedo. Depois disso, inicie sessão com uma conta WebKnox gratuita para ter 50 por dia, ou use um plano pago para ter mais.

Tenha o seu primeiro cartão a funcionar ainda esta tarde