Por que isso importa
Agentes que rodam em loops têm dois custos que somam rápido. Custo de cota: cada chamada de ferramenta MCP conta para sua permissão semanal. Custo de token: cada pedaço de dado na janela de contexto aumenta o custo de processamento e degrada a qualidade do raciocínio.
Um bloco de contexto "magro" resolve ambos: uma varredura rápida de tickers, resumida em poucas linhas, injetada uma vez no início da conversa. O agente tem consciência situacional sem a enxurrada de chamadas de ferramenta ou a inflação de tokens.
Pré-requisitos
Cryptohopper MCP configurado em um cliente MCP — veja a visão geral da configuração.
Um fluxo de trabalho de agente que roda periodicamente ou continuamente. Prompts de tiro único não se beneficiam dessa técnica.
O nível Pioneer é suficiente — chamadas de ticker são baratas em todos os níveis. Veja níveis de assinatura.
Etapas de configuração
Defina o que vai no bloco
Quatro a seis linhas, todas derivadas de tickers — cerca de 100 tokens. Um bloco típico abrange: preço e variação de 24h dos seus tokens âncora, o maior ganhador e perdedor em todo o seu universo de varredura, qualquer par com volume incomum e um rótulo de regime de mercado de uma palavra.
BTC 66.120 (+1,1%, vol normal)
ETH 3.240 (+2,8%, vol elevado)
SOL 148,50 (+1,9%, vol normal)
Maior ganhador: ARB +8,2% (vol 2,4x)
Maior perdedor: DOGE -3,5% (vol normal)
Volume incomum: LINK (preço estável, vol 3,1x)
Regime de mercado: risk-on, amplitude moderadaGere o bloco com um loop por símbolo
Não existe ferramenta de ticker em massa — cada ticker é uma única chamada MCP. A função abaixo faz uma chamada por símbolo. Uma varredura de 3 âncoras + 10 símbolos custa 13 chamadas por execução.
def build_thin_context() -> str:
exchange = "binance"
# Tickers âncora fixos — uma chamada cada
anchors = ["BTC/USDT", "ETH/USDT", "SOL/USDT"]
anchor_tickers = [mcp.get_ticker(exchange, pair) for pair in anchors]
# Universo de varredura — uma chamada por símbolo
sweep_pairs = [
"ARB/USDT", "OP/USDT", "AVAX/USDT", "LINK/USDT", "AAVE/USDT",
"UNI/USDT", "DOGE/USDT", "MATIC/USDT", "SEI/USDT", "TIA/USDT",
]
sweep_tickers = [mcp.get_ticker(exchange, pair) for pair in sweep_pairs]
# Derivar campos de resumo
all_tickers = anchor_tickers + sweep_tickers
top_gainer = max(all_tickers, key=lambda t: t.change_24h_pct)
top_loser = min(all_tickers, key=lambda t: t.change_24h_pct)
unusual = [t for t in all_tickers if t.volume_ratio_vs_baseline > 2.5]
return format_as_context(anchor_tickers, top_gainer, top_loser, unusual)
# Total de chamadas = len(anchors) + len(sweep_pairs) = 13 por execuçãoInjete o bloco no topo da mensagem de abertura do agente
Coloque o bloco antes da instrução da tarefa com um timestamp. O agente lê o contexto primeiro e não deve buscar novamente nada que já esteja listado.
[CONTEXTO EM 2026-04-24 08:00 UTC]
BTC 66.120 (+1,1%, vol normal)
ETH 3.240 (+2,8%, vol elevado)
SOL 148,50 (+1,9%, vol normal)
Maior ganhador: ARB +8,2% (vol 2,4x)
Maior perdedor: DOGE -3,5% (vol normal)
Volume incomum: LINK (preço estável, vol 3,1x)
Regime de mercado: risk-on, amplitude moderada
Sua tarefa: [a coisa real que você quer que o agente faça]Deixe o agente escalar a partir do bloco "magro" quando precisar de mais
O bloco é o resumo. Quando algo parece interessante, o agente chama o MCP para obter candles ou profundidade do livro de ordens sobre aquele par específico. A maioria das execuções termina sem nenhuma escalada — esse é o comportamento correto.
Atualize em uma cadência que corresponda ao fluxo de trabalho
Agente mensal → reconstruir no início de cada hora.
Resumo diário → uma vez por dia.
Assistente sob demanda → uma vez por sessão.
Não reutilize um bloco entre os limites de cadência — contexto desatualizado é pior do que nenhum contexto.
A matemática
Um agente rodando a cada hora, 16 horas/dia, 5 dias úteis/semana, com uma varredura de 13 símbolos:
Abordagem | Chamadas por execução | Chamadas semanais |
Ingênua (agente busca do zero) | 20–100 (varia amplamente) | 1.600–8.000 |
Contexto magro + escalada seletiva | 13 base + ~10–30 na escalada | 1.840–5.040 (estável) |
O contexto magro nem sempre é mais barato no agregado — o que ele compra é previsibilidade. Você sabe como a semana pior se parece. No Pioneer de 6.000 chamadas/semana, ele mantém um agente horário leve viável no nível gratuito.
Quando não usar este padrão
Situação | Por que o contexto magro não ajuda |
Pesquisa conversacional de tiro único | Apenas faça a pergunta — o assistente cuida disso |
Fluxos de trabalho que sempre precisam de dados profundos | Um gerador de parâmetros de bot de grade já precisa do histórico de candles; o contexto magro é redundante |
Fluxos de execução sensíveis a slippage | Eles nunca devem raciocinar a partir de contexto em cache — sempre busquem dados novos |
Use contexto magro quando o fluxo de trabalho for repetido, previsível e, em sua maioria, baseado em conscientização. As economias se acumulam; sem essas propriedades, a sobrecarga não vale a pena.
Solução de problemas
O agente ignora o contexto magro e busca novamente os mesmos dados
Instrua-o explicitamente: "O bloco de contexto acima é o estado atual — não busque novamente tickers para BTC, ETH, SOL, ou qualquer coisa listada. Busque novos dados apenas se precisar de algo que não esteja no bloco." Uma vez enquadrado como uma restrição, o agente respeita.
O bloco está desatualizado quando o agente o usa
Para fluxos de trabalho de cadência curta (nível de minuto), o bloco fica desatualizado rapidamente. Atualize com mais frequência, ou marque claramente o timestamp do bloco para que o agente saiba verificar novamente antes de tomar decisões com base em números antigos.
O formato do bloco é inconsistente de uma execução para outra
Corrija o formato como um template e preencha os valores — não deixe o modelo escrever o bloco. Um gerador determinístico produz saída consistente.
Você quer mais dados no bloco
Resista ao impulso. Cada linha custa tokens em cada execução. Se um ponto de dados não for referenciado pela maioria das execuções, ele pertence a uma chamada sob demanda, não ao bloco.
O bloco inclui números que o agente ignora
Corte-os. Um bloco que é 100% utilizado é melhor do que um que é 60% utilizado.
Contexto multi-exchange torna o bloco muito grande
Use uma exchange principal (geralmente Binance) para o bloco. Faça o agente buscar outros locais apenas quando a comparação for necessária — não pré-popule o contexto multi-venue para o caso geral.
Você quer um contexto magro cobrindo múltiplos timeframes
Use um bloco por propósito do agente em vez de tentar unificá-los. O agente focado em TA recebe um bloco com tendência de 4h; o agente focado em scan recebe um bloco com deltas de 24h.
