# 3.4 — Criando seu próprio MCP (com api) / m03-a04

**Objetivo:** Criar e testar um MCP a partir de uma API documentada, incluindo autenticação e erros.

**Preparação:** Preparar API local, OpenAPI, skill criadora e cliente MCP. Relato Hotmart atribuído a Thales, confirmado por Leo em 02/11/2026.

**Ensaio:** Teste automatizado local será registrado separadamente da captura no cliente e da integração com API externa.

### m03-a04-b01 — Quando faz sentido criar

Slide m03-a04-s01

Criar um MCP faz sentido em uma situação específica: você precisa que o agente use um sistema e não existe uma integração adequada. Antes de construir qualquer coisa, procure saber se o próprio serviço já mantém uma, ou se outra opção cobre a operação de que você precisa. Construir é o último passo dessa busca, não o primeiro.

Vamos começar pelos termos, porque eles se misturam com facilidade. API é a interface pela qual um programa conversa com outro. Um programa envia um pedido, por exemplo “qual foi a taxa de reembolso neste período”, e recebe uma resposta. MCP é um protocolo aberto de conexão. Ele apresenta operações, como as de uma API, de um jeito padronizado que o agente consegue descobrir e usar. “Descobrir” tem aqui um sentido bem prático: o agente enxerga a lista de ferramentas disponíveis, cada uma com um nome e uma descrição. Já conector é o nome que o aplicativo dá à integração que você vê e liga na tela, e ela pode usar MCP por baixo. Os três estão relacionados, mas não são a mesma coisa.

Neste exemplo, vamos usar um sistema de demonstração, com dados fictícios. Ele publica uma especificação OpenAPI. É um documento que descreve as operações disponíveis, os parâmetros que cada uma recebe, a autenticação, que é a forma de provar quem está pedindo, e as respostas possíveis. É esse documento que vamos entregar à ferramenta que cria o conector. Por isso a qualidade da documentação pesa tanto: ela é a base de tudo o que será construído.

Vou abrir a documentação do sistema de demonstração. Ela está aberta ao público, então podemos olhar as operações sem usar nenhum token, que é a chave de acesso do sistema. Nesta tela, observe só o que a documentação já nos diz sem precisar de acesso: o nome de cada operação, o que ela recebe e o que ela devolve. A credencial só vai importar mais adiante, quando formos chamar a API de verdade.

Com os termos esclarecidos, vamos ver de onde vem a ideia de construir um conector próprio e como decidir se vale a pena.

### m03-a04-b04 — Do caso Hotmart à decisão de construir

Slide m03-a04-s04

Um exemplo que vem da nossa equipe é o caso do Thales Laray. Segundo o relato dele, registrado na ementa e confirmado por mim para esta aula, foi criado um MCP interno para trabalhar com a Hotmart e, depois, houve um convite para colaborar no MCP oficial. Não tenho aqui datas nem números desse projeto, e não vou inventá-los. O caso é do Thales e do time dele; não vou transformá-lo em uma história minha.

O aprendizado que vamos aproveitar é a sequência da decisão. Primeiro existe uma necessidade real de acessar um sistema. Depois verificamos se já há uma integração adequada. Se não houver, procuramos a documentação da API e escolhemos uma operação pequena para começar. Criar uma conexão própria faz sentido quando resolve uma lacuna concreta, não apenas para ter mais uma ferramenta.

Na aula, vamos usar uma API local, que roda no seu computador, com dados fictícios. Isso permite repetir o procedimento sem uma conta comercial. Vou abrir a documentação OpenAPI dessa API local e apontar a única operação que vamos usar: uma consulta de leitura, que devolve a taxa de reembolso em um intervalo de datas definido. O objetivo é entender o caminho completo, da documentação à ferramenta criada e daí à resposta conferida.

Um cuidado de honestidade: esse exercício não reproduz nem comprova o projeto histórico da Hotmart. Ele é outro sistema, fictício, e dá a você uma forma controlada de praticar a mesma decisão de integração. Quando você levar o procedimento para o seu sistema, a conferência precisa ser refeita lá.

Agora que a decisão está clara, vamos definir exatamente o que o nosso conector vai fazer.

### m03-a04-b02 — Um conector pequeno e verificável

Slide m03-a04-s02

Não vamos expor todas as operações do sistema. Vamos começar por uma consulta pequena: a taxa de reembolso em um período definido. Um conector pequeno é mais fácil de conferir e dá menos acesso do que o necessário. A documentação já traz essa operação pronta, então não precisamos buscar todas as vendas e refazer a conta por conta própria.

Os dados deste ambiente são fictícios e têm datas fixas. Por isso, o intervalo será de treze de julho a onze de agosto de dois mil e vinte e seis. Se pedíssemos “últimos trinta dias” em outra data, a consulta poderia cair fora do período que a base cobre, e o resultado deixaria de ser comparável com o que está na aula.

Agora, o pedido ao criador de MCP. Ele precisa dizer quatro coisas. Primeira: qual documentação ler, que é o endereço do arquivo openapi.json do sistema de demonstração. Segunda: qual operação disponibilizar, só a consulta de taxa de reembolso. Terceira: onde o MCP vai rodar, que aqui é o seu computador. Quarta: como a credencial será recebida. Em palavras, o pedido fica assim: “Leia esta documentação. Crie uma ferramenta que apenas consulta a taxa de reembolso entre treze de julho e onze de agosto de dois mil e vinte e seis. Não crie nenhuma operação de escrita. O servidor roda localmente, e a credencial será recebida por configuração do ambiente.”

Sobre a credencial: o token entra fora do chat. Ele não aparece no texto da skill, numa captura de tela da aula, nem em arquivo que você vá distribuir. No pedido, você escreve apenas que a credencial virá da configuração, nunca o valor dela.

Com o conector preparado, conferimos duas coisas: os parâmetros que ele envia e a resposta que recebe. Uma ferramenta gerada sem erro não prova que a consulta está certa. E o número final precisa vir da fonte, não de um cálculo ou de um palpite do modelo.

Mesmo uma consulta de leitura pode envolver informação sensível, então conceda só o acesso necessário para essa operação. No próximo bloco, vamos ver a skill que faz essa construção a partir da documentação.

### m03-a04-b05 — A skill que constrói a partir da documentação

Slide m03-a04-s05

Uma skill é um conjunto de instruções, guardado em um arquivo chamado SKILL.md, que ensina o agente a seguir um procedimento. A divisão de papéis é esta: a skill descreve o procedimento, o modelo decide o que fazer em cada passo e a ferramenta executa. Vamos usar a skill de criação de MCP que vem no material da aula.

Antes, uma frase que circula e ajuda a lembrar: “API é a comida do MCP”. Ela mostra de onde vêm as operações, mas é só um jeito de lembrar. Uma API também pode ser usada por outros programas, sem MCP. O nosso conector vai transformar uma operação documentada em uma ferramenta que o agente consegue descobrir.

Primeiro passo: abra o arquivo SKILL.md da pasta criar-mcp-api e o openapi.json. Leia o que a skill pede como entrada. Ela recebe a documentação, a operação escolhida, o ambiente onde o servidor vai rodar e os critérios de teste.

Segundo passo: peça a criação de uma única ferramenta, sem escrita. Peça também que o agente leia a especificação antes de gerar o programa do servidor. Ler primeiro evita que ele invente parâmetros. O trabalho precisa preservar os parâmetros de data e o formato da resposta. Não há motivo para expor operações de escrita ou exclusão, e é por isso que o pedido diz que elas não existem.

Sobre a credencial: a do exercício é fictícia e serve apenas para testar a autorização local. Num sistema real, o segredo fica na configuração protegida do ambiente, fora do chat e dos materiais.

Terceiro passo: inicie a API local e o servidor MCP em um ambiente isolado, ou seja, separado do restante do seu computador, para que o teste não toque em nada que não seja do exercício. Quando o aplicativo pedir permissão para executar algo, leia o que será feito antes de aprovar. Aqui o efeito é pequeno, porque é uma consulta de leitura em dados fictícios. Numa operação que altera informações, a aprovação deve ser dada caso a caso. Como o servidor roda no seu computador, ele só responde enquanto a máquina e o processo estiverem ativos.

Quarto passo: conecte o MCP no cliente compatível, que é o aplicativo em que você conversa com o agente e que aceita MCP. Confira se a ferramenta aparece e se a descrição dela diz exatamente o que ela consulta.

Agora faça a chamada com as datas do exercício. O resultado vem da API; o agente não precisa reconstruir a taxa lendo todas as vendas. Compare os parâmetros enviados, a resposta recebida e a documentação. Gerar um servidor sem erro é só uma etapa. Descobrir e usar a ferramenta é a próxima, e a conferência vem logo a seguir.

### m03-a04-b06 — Testar, registrar e adaptar ao seu sistema

Slide m03-a04-s06

Vamos conferir o resultado. Nos dados fictícios, o período é de treze de julho a onze de agosto de dois mil e vinte e seis. O resultado esperado para esse período é de cento e vinte pedidos e seis reembolsos, o que dá uma taxa de cinco por cento. A saída também precisa identificar o período consultado. Confira esses campos, não apenas o número final, porque uma taxa certa para um período errado continua sendo um erro.

Primeiro, o caso normal. Faça a consulta pela ferramenta e compare com a chamada direta à API local, feita fora do MCP, que serve de referência. Os dois resultados precisam coincidir.

Depois, dois erros. O primeiro é a ausência de credencial. Sem a credencial de exercício, a API deve recusar o acesso, e a ferramenta deve dizer que faltou autorização, sem inventar uma taxa. O segundo é um intervalo fora do contrato, isto é, fora do que a documentação define como válido, por exemplo uma data inicial posterior à final. A ferramenta deve explicar que a entrada é inválida, também sem inventar uma taxa. Em erro, o comportamento correto é explicar a falha e parar.

Guarde os resultados e a configuração usada no arquivo registro-testes.md. Registre também o que ficou sem teste. Não repita uma operação de escrita como tentativa de corrigir um erro de leitura; nossa ferramenta nem precisa oferecer escrita. E não apresente este teste como um teste da Hotmart: ele vale apenas para a API local fictícia.

Agora, a sua atividade. Escolha uma API que você pode usar, procure antes um MCP existente e selecione uma operação de leitura. Escreva a entrada, a saída e o critério de conferência. Se tiver documentação e ambiente de teste disponíveis, crie o MCP e execute os casos normal e de erro. Se faltar acesso ao sistema, use a API local fornecida para concluir a construção prática e registre o que falta para levar ao seu ambiente. A especificação sozinha é o plano; o teste da conexão exige a chamada real. É essa diferença que você deve registrar ao apresentar seu resultado.

### m03-a04-b03 — O teste de conclusão

Slide m03-a04-s03

Para concluir, o teste tem três verificações. A primeira: o agente encontrou a ferramenta. A segunda: usou o período certo. A terceira: devolveu os dados que vieram da API. Compare a resposta com a operação de referência. Depois, confirme o caso sem credencial: o resultado deve explicar a falha, sem inventar um número.

Sobre rodar local ou remoto, a escolha depende de onde você precisa usar o conector. Um servidor local roda no seu computador e só funciona com a máquina ligada e o processo ativo. Um servidor remoto fica em outro lugar e é acessado por um endereço, e depende de quem o mantém e de como a autenticação é feita. Não vamos construir os dois agora. Faça um caminho funcionar e anote do que ele depende.

Seu exercício: construa e teste a ferramenta com a API local fornecida; depois escolha uma operação de leitura do seu sistema e encontre a documentação dela. Antes de criar qualquer coisa, escreva a entrada, a saída esperada e como você vai conferir a resposta. Pause o vídeo e faça isso.

Na próxima aula, vamos combinar esse acesso com um procedimento de trabalho.

# 3.4 — Criando seu próprio MCP (com api)

ID m03-a04. Roteiro técnico — Rocco adaptado ao ensino.

TC da imagem e TC da fala são independentes. Slides novos não têm TC de fonte; fala escrita ainda não tem gravação. “—” indica não uso deliberado de depoimento/trilha. IDs são localizadores editoriais, não timecodes.

**Preparação específica:** Preparar API local, OpenAPI, skill criadora e cliente MCP. Relato Hotmart atribuído a Thales, confirmado por Leo em 02/11/2026.

**Dependências e ensaio:** Teste automatizado local será registrado separadamente da captura no cliente e da integração com API externa.

| Bloco | Slide/PDF | Ação | Conferência |
|---|---|---|---|
| m03-a04-b01 | m03-a04-s01 / p. 1 | Abrir a documentação do sistema demonstrativo e mostrar as operações públicas sem token em tela. | Contrato da operação, parâmetros e autenticação são identificados. |
| m03-a04-b04 | m03-a04-s04 / p. 2 | Atribuir caso Hotmart a Thales e apresentar a API fictícia de exercício. | Relato corretamente atribuído e exemplo local distinguido do sistema Hotmart. |
| m03-a04-b02 | m03-a04-s02 / p. 3 | Usar https://demo-mcp.escoladeautomacao.com/openapi.json. Solicitar ao criador de MCP apenas consulta de taxa de reembolso, com token fornecido fora do chat e sem exposição. Intervalo fixo 2026-07-13–2026-08-11. | Conector mínimo é criado e consulta a operação com o intervalo fixo. |
| m03-a04-b05 | m03-a04-s05 / p. 4 | Usar a skill de criação com OpenAPI e conectar o MCP de leitura à API local. | Ferramenta criada/descoberta e resposta real da API local conferida. |
| m03-a04-b06 | m03-a04-s06 / p. 5 | Conferir 120 pedidos/6 reembolsos/5%, ausência de credencial e intervalo inválido. | Resposta normal correta, erros explícitos e nenhuma taxa inventada; execução local separada de acesso ao sistema do aluno. |
| m03-a04-b03 | m03-a04-s03 / p. 6 | Comparar a resposta do conector com a operação de referência; testar ausência de credencial sem divulgar valor e registrar limitações. | 120 pedidos, 6 reembolsos e 5% no período fixo; acesso ausente e entrada inválida não geram resultado inventado. |

## m03-a04-b01 — Quando faz sentido criar

| TC imagem | VIDEO | GFX | TC fala | SOUND BITES | SOUND |
|---|---|---|---|---|---|
| Não fornecido: material novo; localizar slide pelo ID. | Demo. Abrir a documentação do sistema demonstrativo e mostrar as operações públicas sem token em tela. | slides/m03-a04.pptx e slides/m03-a04.pdf, página 1, ID m03-a04-s01; composição Opus verificada. Aplicativo real: captura nova a produzir quando indicada. | Não fornecido: fala original ainda não gravada; localizador m03-a04-b01 | —. Sem depoimento ou fala externa neste bloco. | Locução do professor conforme roteiro-fala.md, bloco m03-a04-b01. Sem trilha prevista. |

**Estado inicial:** Preparar API local, OpenAPI, skill criadora e cliente MCP. Relato Hotmart atribuído a Thales, confirmado por Leo em 02/11/2026.

**Entrada/material:** apoio/api-demo/LEIA-ME.md, apoio/api-demo/openapi.json, apoio/criar-mcp-api/SKILL.md, apoio/registro-testes.md

**Passos de captura:**
1. Abrir a documentação do sistema demonstrativo e mostrar as operações públicas sem token em tela.
2. Abrir o resultado e comparar com o critério da aula.

**Saída e conferência:** Contrato da operação, parâmetros e autenticação são identificados.

**Se falhar:** Parar na ação que falhou, registrar mensagem sem credenciais e restaurar a entrada de teste antes de repetir o trecho. Não narrar uma entrega que não foi observada.

**Corte e continuidade:** Entrada: enquadramento e fonte do trecho prontos. Saída: concluir a conferência. Retirar espera sem ação e tentativas abandonadas; preservar o contexto, a decisão e a última frase completa.

**Fala correspondente:** roteiro-fala.md / m03-a04-b01; SHA-256 e3e935fc5b9c7000f45d996d347082ce2ab051ce1c6aea759f48a3c68d97e64a.

**Função visual:** Abrir a documentação do sistema demonstrativo e mostrar as operações públicas sem token em tela.


## m03-a04-b04 — Do caso Hotmart à decisão de construir

| TC imagem | VIDEO | GFX | TC fala | SOUND BITES | SOUND |
|---|---|---|---|---|---|
| Não fornecido: material novo; localizar slide pelo ID. | Slides. Atribuir caso Hotmart a Thales e apresentar a API fictícia de exercício. | slides/m03-a04.pptx e slides/m03-a04.pdf, página 2, ID m03-a04-s04; composição Opus verificada. Aplicativo real: captura nova a produzir quando indicada. | Não fornecido: fala original ainda não gravada; localizador m03-a04-b04 | —. Sem depoimento ou fala externa neste bloco. | Locução do professor conforme roteiro-fala.md, bloco m03-a04-b04. Sem trilha prevista. |

**Estado inicial:** Preparar API local, OpenAPI, skill criadora e cliente MCP. Relato Hotmart atribuído a Thales, confirmado por Leo em 02/11/2026.

**Entrada/material:** apoio/api-demo/LEIA-ME.md, apoio/api-demo/openapi.json, apoio/criar-mcp-api/SKILL.md, apoio/registro-testes.md

**Passos de captura:**
1. Apresentar relato confirmado pelo professor, sem datas ou métricas inventadas.
2. Abrir documentação OpenAPI da API local.
3. Apontar única operação de leitura escolhida.

**Saída e conferência:** Relato corretamente atribuído e exemplo local distinguido do sistema Hotmart.

**Se falhar:** Parar na ação que falhou, registrar mensagem sem credenciais e restaurar a entrada de teste antes de repetir o trecho. Não narrar uma entrega que não foi observada.

**Corte e continuidade:** Entrada: enquadramento e fonte do trecho prontos. Saída: concluir a conferência. Retirar espera sem ação e tentativas abandonadas; preservar o contexto, a decisão e a última frase completa.

**Fala correspondente:** roteiro-fala.md / m03-a04-b04; SHA-256 4465c8eb77366bd74312929f9ed5723fa4af9d99b9db74508228b99dc2e3cdcd.

**Função visual:** Atribuir caso Hotmart a Thales e apresentar a API fictícia de exercício.


## m03-a04-b02 — Um conector pequeno e verificável

| TC imagem | VIDEO | GFX | TC fala | SOUND BITES | SOUND |
|---|---|---|---|---|---|
| Não fornecido: material novo; localizar slide pelo ID. | Demo. Usar https://demo-mcp.escoladeautomacao.com/openapi.json. Solicitar ao criador de MCP apenas consulta de taxa de reembolso, com token fornecido fora do chat e sem exposição. Intervalo fixo 2026-07-13–2026-08-11. | slides/m03-a04.pptx e slides/m03-a04.pdf, página 3, ID m03-a04-s02; composição Opus verificada. Aplicativo real: captura nova a produzir quando indicada. | Não fornecido: fala original ainda não gravada; localizador m03-a04-b02 | —. Sem depoimento ou fala externa neste bloco. | Locução do professor conforme roteiro-fala.md, bloco m03-a04-b02. Sem trilha prevista. |

**Estado inicial:** Preparar API local, OpenAPI, skill criadora e cliente MCP. Relato Hotmart atribuído a Thales, confirmado por Leo em 02/11/2026.

**Entrada/material:** apoio/api-demo/LEIA-ME.md, apoio/api-demo/openapi.json, apoio/criar-mcp-api/SKILL.md, apoio/registro-testes.md

**Passos de captura:**
1. Usar https://demo-mcp.escoladeautomacao.com/openapi.json. Solicitar ao criador de MCP apenas consulta de taxa de reembolso, com token fornecido fora do chat e sem exposição. Intervalo fixo 2026-07-13–2026-08-11.
2. Abrir o resultado e comparar com o critério da aula.

**Saída e conferência:** Conector mínimo é criado e consulta a operação com o intervalo fixo.

**Se falhar:** Parar na ação que falhou, registrar mensagem sem credenciais e restaurar a entrada de teste antes de repetir o trecho. Não narrar uma entrega que não foi observada.

**Corte e continuidade:** Entrada: enquadramento e fonte do trecho prontos. Saída: concluir a conferência. Retirar espera sem ação e tentativas abandonadas; preservar o contexto, a decisão e a última frase completa.

**Fala correspondente:** roteiro-fala.md / m03-a04-b02; SHA-256 731f4045c6905e3b6ef136f9af184453a7cf88ee0ec35be027b9e203eb1c614d.

**Função visual:** Usar https://demo-mcp.escoladeautomacao.com/openapi.json. Solicitar ao criador de MCP apenas consulta de taxa de reembolso, com token fornecido fora do chat e sem exposição. Intervalo fixo 2026-07-13–2026-08-11.


## m03-a04-b05 — A skill que constrói a partir da documentação

| TC imagem | VIDEO | GFX | TC fala | SOUND BITES | SOUND |
|---|---|---|---|---|---|
| Não fornecido: material novo; localizar slide pelo ID. | Demo. Usar a skill de criação com OpenAPI e conectar o MCP de leitura à API local. | slides/m03-a04.pptx e slides/m03-a04.pdf, página 4, ID m03-a04-s05; composição Opus verificada. Aplicativo real: captura nova a produzir quando indicada. | Não fornecido: fala original ainda não gravada; localizador m03-a04-b05 | —. Sem depoimento ou fala externa neste bloco. | Locução do professor conforme roteiro-fala.md, bloco m03-a04-b05. Sem trilha prevista. |

**Estado inicial:** Preparar API local, OpenAPI, skill criadora e cliente MCP. Relato Hotmart atribuído a Thales, confirmado por Leo em 02/11/2026.

**Entrada/material:** apoio/api-demo/LEIA-ME.md, apoio/api-demo/openapi.json, apoio/criar-mcp-api/SKILL.md, apoio/registro-testes.md

**Passos de captura:**
1. Abrir criar-mcp-api/SKILL.md e openapi.json.
2. Pedir criação de uma única ferramenta, sem escrita.
3. Iniciar API local e servidor MCP em ambiente isolado.
4. Descobrir ferramenta e consultar período fixo.

**Saída e conferência:** Ferramenta criada/descoberta e resposta real da API local conferida.

**Se falhar:** Parar na ação que falhou, registrar mensagem sem credenciais e restaurar a entrada de teste antes de repetir o trecho. Não narrar uma entrega que não foi observada.

**Corte e continuidade:** Entrada: enquadramento e fonte do trecho prontos. Saída: concluir a conferência. Retirar espera sem ação e tentativas abandonadas; preservar o contexto, a decisão e a última frase completa.

**Fala correspondente:** roteiro-fala.md / m03-a04-b05; SHA-256 cc87912383ddd12a380ae5192c578f602bb694d0e13838ebf06fcf194f6b8881.

**Função visual:** Usar a skill de criação com OpenAPI e conectar o MCP de leitura à API local.


## m03-a04-b06 — Testar, registrar e adaptar ao seu sistema

| TC imagem | VIDEO | GFX | TC fala | SOUND BITES | SOUND |
|---|---|---|---|---|---|
| Não fornecido: material novo; localizar slide pelo ID. | Demo. Conferir 120 pedidos/6 reembolsos/5%, ausência de credencial e intervalo inválido. | slides/m03-a04.pptx e slides/m03-a04.pdf, página 5, ID m03-a04-s06; composição Opus verificada. Aplicativo real: captura nova a produzir quando indicada. | Não fornecido: fala original ainda não gravada; localizador m03-a04-b06 | —. Sem depoimento ou fala externa neste bloco. | Locução do professor conforme roteiro-fala.md, bloco m03-a04-b06. Sem trilha prevista. |

**Estado inicial:** Preparar API local, OpenAPI, skill criadora e cliente MCP. Relato Hotmart atribuído a Thales, confirmado por Leo em 02/11/2026.

**Entrada/material:** apoio/api-demo/LEIA-ME.md, apoio/api-demo/openapi.json, apoio/criar-mcp-api/SKILL.md, apoio/registro-testes.md

**Passos de captura:**
1. Executar caso normal e comparar com a operação HTTP da API local.
2. Testar ausência de credencial e datas inválidas.
3. Registrar resultados e limitações; não apresentar como teste Hotmart.

**Saída e conferência:** Resposta normal correta, erros explícitos e nenhuma taxa inventada; execução local separada de acesso ao sistema do aluno.

**Se falhar:** Parar na ação que falhou, registrar mensagem sem credenciais e restaurar a entrada de teste antes de repetir o trecho. Não narrar uma entrega que não foi observada.

**Corte e continuidade:** Entrada: enquadramento e fonte do trecho prontos. Saída: concluir a conferência. Retirar espera sem ação e tentativas abandonadas; preservar o contexto, a decisão e a última frase completa.

**Fala correspondente:** roteiro-fala.md / m03-a04-b06; SHA-256 4e5e50001f61fee64952f8166236b0cfe9c427a216cd396ff0b8e50a62d54511.

**Função visual:** Conferir 120 pedidos/6 reembolsos/5%, ausência de credencial e intervalo inválido.


## m03-a04-b03 — O teste de conclusão

| TC imagem | VIDEO | GFX | TC fala | SOUND BITES | SOUND |
|---|---|---|---|---|---|
| Não fornecido: material novo; localizar slide pelo ID. | Demo. Comparar a resposta do conector com a operação de referência; testar ausência de credencial sem divulgar valor e registrar limitações. | slides/m03-a04.pptx e slides/m03-a04.pdf, página 6, ID m03-a04-s03; composição Opus verificada. Aplicativo real: captura nova a produzir quando indicada. | Não fornecido: fala original ainda não gravada; localizador m03-a04-b03 | —. Sem depoimento ou fala externa neste bloco. | Locução do professor conforme roteiro-fala.md, bloco m03-a04-b03. Sem trilha prevista. |

**Estado inicial:** Preparar API local, OpenAPI, skill criadora e cliente MCP. Relato Hotmart atribuído a Thales, confirmado por Leo em 02/11/2026.

**Entrada/material:** apoio/api-demo/LEIA-ME.md, apoio/api-demo/openapi.json, apoio/criar-mcp-api/SKILL.md, apoio/registro-testes.md

**Passos de captura:**
1. Comparar a resposta do conector com a operação de referência; testar ausência de credencial sem divulgar valor e registrar limitações.
2. Abrir o resultado e comparar com o critério da aula.

**Saída e conferência:** 120 pedidos, 6 reembolsos e 5% no período fixo; acesso ausente e entrada inválida não geram resultado inventado.

**Se falhar:** Parar na ação que falhou, registrar mensagem sem credenciais e restaurar a entrada de teste antes de repetir o trecho. Não narrar uma entrega que não foi observada.

**Corte e continuidade:** Entrada: enquadramento e fonte do trecho prontos. Saída: concluir a conferência. Retirar espera sem ação e tentativas abandonadas; preservar o contexto, a decisão e a última frase completa.

**Fala correspondente:** roteiro-fala.md / m03-a04-b03; SHA-256 86701f20764afe4ab0afa8225cb4ae2ee3b23599dc5926d9162acbdc3657b1ca.

**Função visual:** Comparar a resposta do conector com a operação de referência; testar ausência de credencial sem divulgar valor e registrar limitações.


## Atividade e solução

Construir e testar a ferramenta com a API local fornecida; depois especificar a operação equivalente do próprio sistema.

120 pedidos, 6 reembolsos e 5% no período fixo; acesso ausente e entrada inválida não geram resultado inventado.

## Materiais

- api-demo/LEIA-ME.md
- api-demo/openapi.json
- criar-mcp-api/SKILL.md
- registro-testes.md