Entrar ou criar conta

Laboratório: Agente de Indicadores de Equipe com Claude Agent SDK e MCP

Você vai implementar um agente Claude, via Agent SDK em Python, que coleta indicadores simulados de desempenho de equipe e registra alertas de desvio. Tudo rodando localmente, em cerca de 2 horas.

Gestão de indicadores e rotinas com Claude Agent SDK + OpenAI Agents SDK + HeyGen
Ligado ao treinamento Gestão de indicadores e rotinas com Claude Agent SDK + OpenAI Agents SDK + HeyGen

Roteiro para estudo em ambiente de laboratório ou de teste. Execute apenas em equipamentos, redes e contas que você tenha autorização para usar, com backup e homologação próprios. Comandos podem causar indisponibilidade ou perda de dados. Software e marcas citados pertencem aos seus titulares. Termos de Uso.

Status de validaçãoNão validado pela Upnetix: roteiro derivado da documentação oficial, para você executar e validar
Duração estimada
120 min
Passos
13
Validações
4
Versões da documentação consultada
Python 3.10 ou superior · Claude Agent SDK Python a versão estável atual · FastAPI a versão estável atual · Uvicorn a versão estável atual · Model Context Protocol 2026-07-28
Objetivo

O objetivo é construir um agente de IA para gestão de equipes, capaz de consultar indicadores (simulados), detectar desvios e registrar alertas, usando Claude Agent SDK, Model Context Protocol (MCP) e Python puro. O laboratório cobre desde o prompt de sistema versionado até a avaliação automática dos casos de teste, com guardrails, tracing e revisão manual para ações sensíveis.

Topologia

Uma máquina local (192.168.56.10) executa o agente Claude via Agent SDK em Python. O agente acessa um servidor MCP local (192.168.56.11) que simula um sistema de indicadores de equipe. Toda a comunicação é via localhost ou rede privada, sem expor dados externos.


+---------------------+
|   Usuário           |
| (terminal local)    |
+----------+----------+
           |
           v
+---------------------+
| Claude Agent SDK    |
| (192.168.56.10)     |
+----------+----------+
           |
           v
+---------------------+
| MCP Server (API)    |
| (192.168.56.11)     |
+---------------------+

Equipamentos e software

ItemRequisito, licença ou versão
Máquina virtual ou físicaCPU 2 vCPU, 4 GB RAM, 1 porta de rede, Ubuntu 22.04 ou superior
PythonPSF · 3.10 ou superior
Claude Agent SDK PythonApache-2.0 · a versão estável atual
FastAPIMIT · a versão estável atual
UvicornBSD · a versão estável atual
Model Context ProtocolMIT · 2026-07-28

Roteiro

  1. Preparar ambiente Python

    Crie um ambiente virtual isolado para evitar conflitos de dependências.

    python3 -m venv venv
    source venv/bin/activate

    O que você deve ver: Prompt com (venv) indicando ambiente ativado.

  2. Instalar dependências

    Instale as bibliotecas necessárias: Claude Agent SDK, FastAPI e Uvicorn.

    pip install claude-agent-sdk-python fastapi uvicorn

    O que você deve ver: Mensagens de instalação sem erros.

  3. Criar servidor MCP simulado

    Implemente um servidor FastAPI local que expõe um endpoint /metrics para retornar indicadores simulados.

    cat > mcp_server.py <<'EOF'
    from fastapi import FastAPI
    from pydantic import BaseModel
    
    app = FastAPI()
    
    class Metrics(BaseModel):
        equipe: str
        produtividade: int
        atrasos: int
        meta_produtividade: int
        meta_atrasos: int
    
    @app.get('/metrics', response_model=Metrics)
    def get_metrics():
        return Metrics(
            equipe='EXEMPLO',
            produtividade=78,
            atrasos=4,
            meta_produtividade=85,
            meta_atrasos=2
        )
    EOF

    O que você deve ver: Arquivo mcp_server.py criado com o endpoint /metrics.

  4. Rodar o servidor MCP

    Inicie o servidor FastAPI para simular o sistema de indicadores.

    uvicorn mcp_server:app --host 0.0.0.0 --port 8001 &

    O que você deve ver: Log do Uvicorn informando que está ouvindo em 0.0.0.0:8001.

  5. Testar o endpoint MCP

    Confirme que o endpoint /metrics retorna os dados simulados.

    curl http://localhost:8001/metrics

    O que você deve ver: JSON com produtividade, atrasos e metas da equipe EXEMPLO.

  6. Escrever prompt de sistema versionado

    Crie um prompt de sistema claro, em português, para o agente Claude. Salve como system_prompt_v1.txt.

    cat > system_prompt_v1.txt <<'EOF'
    Você é um agente de gestão de equipes. Sua função é consultar indicadores de produtividade e atrasos da equipe no endpoint MCP, comparar com as metas e registrar um alerta se houver desvio. Nunca toma decisões finais: apenas prepara e registra alertas para revisão humana. Use apenas os dados fornecidos. Responda sempre em português.
    EOF

    O que você deve ver: Arquivo system_prompt_v1.txt criado com o prompt completo.

  7. Definir ferramenta MCP no agente

    Implemente a ferramenta 'consultar_indicadores' para acessar o MCP. Defina contrato: sem parâmetros, retorna dicionário com produtividade, atrasos, meta_produtividade, meta_atrasos.

    cat > tools.py <<'EOF'
    def consultar_indicadores():
        import requests
        r = requests.get('http://localhost:8001/metrics')
        return r.json()
    EOF

    O que você deve ver: Arquivo tools.py criado com a função de consulta.

  8. Implementar agente Claude com SDK

    Monte o agente Claude com o prompt versionado e a ferramenta MCP. Configure tracing e guardrails simples (validação de tipos).

    cat > agente.py <<'EOF'
    from claude_agent_sdk import Agent, Tool, Runner
    from tools import consultar_indicadores
    
    with open('system_prompt_v1.txt') as f:
        system_prompt = f.read()
    
    def validar_saida(saida):
        assert isinstance(saida, str)
        assert 'Alerta' in saida or 'Sem desvios' in saida
    
    tools = [
        Tool(
            name='consultar_indicadores',
            func=consultar_indicadores,
            description='Consulta indicadores da equipe no MCP.'
        )
    ]
    
    agent = Agent(
        name='AgenteIndicadores',
        instructions=system_prompt,
        tools=tools,
        guardrails={'output': validar_saida}
    )
    
    if __name__ == '__main__':
        entrada = 'Verifique os indicadores da equipe e registre alertas.'
        resultado = Runner.run_sync(agent, entrada)
        print(resultado)
    EOF

    O que você deve ver: Arquivo agente.py criado com agente Claude configurado.

  9. Executar o agente e registrar alerta

    Rode o agente para processar os indicadores e gerar alerta de desvio.

    python agente.py

    O que você deve ver: Saída em português indicando alerta de desvio (produtividade abaixo da meta ou atrasos acima da meta).

  10. Criar casos de teste automatizados

    Implemente testes para validar a resposta do agente em cenários de desvio e sem desvio.

    cat > test_agente.py <<'EOF'
    import subprocess
    
    def test_alerta():
        proc = subprocess.run(['python', 'agente.py'], capture_output=True, text=True)
        assert 'Alerta' in proc.stdout
    
    def test_sem_desvio():
        # Simule MCP sem desvio
        import requests
        requests.post('http://localhost:8001/metrics', json={
            'equipe': 'EXEMPLO', 'produtividade': 90, 'atrasos': 1, 'meta_produtividade': 85, 'meta_atrasos': 2
        })
        proc = subprocess.run(['python', 'agente.py'], capture_output=True, text=True)
        assert 'Sem desvios' in proc.stdout
    EOF

    O que você deve ver: Arquivo test_agente.py criado com dois testes automatizados.

  11. Rodar testes automatizados

    Execute os testes para garantir que o agente responde corretamente.

    python test_agente.py

    O que você deve ver: Testes passam sem erro, confirmando detecção de desvio e ausência de desvio.

  12. Registrar logs de execução (tracing)

    Implemente logging básico para registrar entradas, saídas e alertas gerados pelo agente.

    cat >> agente.py <<'EOF'
    import logging
    logging.basicConfig(filename='agente.log', level=logging.INFO)
    logging.info(f'Entrada: {entrada}')
    logging.info(f'Saída: {resultado}')
    EOF

    O que você deve ver: Arquivo agente.log criado com registros das execuções.

  13. Revisão manual de alertas

    Abra o arquivo agente.log e confira se os alertas registrados correspondem aos desvios simulados. A decisão final é sempre humana.

    cat agente.log

    O que você deve ver: Log detalhado das execuções, com entradas, saídas e alertas claros.

Como saber que funcionou

TesteComandoCritério
Acessar o endpoint MCP manualmentecurl http://localhost:8001/metricsRetorno JSON com indicadores simulados.
Executar o agente com dados de desviopython agente.pySaída com alerta de desvio em português.
Executar o agente com dados sem desvioAltere o MCP para produtividade 90 e atrasos 1, rode python agente.pySaída indicando ausência de desvio.
Verificar logs de execuçãocat agente.logEntradas, saídas e alertas registrados corretamente.

Troubleshooting

SintomaCausa provávelCorreção
O agente retorna erro de conexão ao consultar indicadores.Servidor MCP não está rodando ou porta errada.Reinicie o servidor MCP e confirme a porta 8001.
Saída do agente não contém alerta nem 'Sem desvios'.Prompt de sistema mal definido ou guardrail não está validando.Revise o prompt e a função validar_saida.
Testes automatizados falham.Endpoint MCP não retorna os dados esperados.Confirme o conteúdo do endpoint e reinicie o MCP.
Logs não são gravados.Permissões de escrita ou caminho do arquivo.Garanta permissão de escrita na pasta e revise logging.basicConfig.

Segurança e hardening

  • Nunca inclua segredos ou chaves de API no prompt ou código versionado.
  • Restrinja o acesso ao servidor MCP à rede local.
  • Garanta que logs não exponham dados pessoais.
  • Desative o agente após o laboratório para evitar execuções não supervisionadas.

Checklist final

Referências

  1. Claude Agent SDK Python · Code.claude (code.claude.com)
  2. Model Context Protocol · Modelcontextprotocol (modelcontextprotocol.io)
  3. FastAPI Documentation · FastAPI (fastapi.tiangolo.com)
  4. Python Official Docs · Python Software Foundation (docs.python.org)
Verificação editorial
Publicado
13/09/2026
Última revisão
13/09/2026
Versão do conteúdo
1.0
Referências
4 oficiais
Revisão técnica
redação e revisão por IA, URLs conferidas na publicação
Status
Atual
Encontrou um erro? Escreva para comercial@upnetix.com.br com o endereço da página. A revisão semestral por IA nunca altera comandos ou configurações sem passar pela fila de revisão.