

“Estamos construindo um ecossistema de agentes de IA que substitui a rotina e foca em resultados. O princípio principal é a modularidade. Cada agente é responsável por sua tarefa, mas juntos eles formam um sistema.”
— Fundador da ASCN.AI
PARE, ATENÇÃO AO DETALHE: Leia com atenção
Há alguma confusão na indústria atualmente em torno da sigla MCP. Vamos esclarecer desde já: aqui analisamos em detalhes o padrão arquitetural Model-Controller-Perception (ou seja, a “engrenagem” e a lógica do próprio agente). Se você buscava informações sobre o padrão de rede para conexões — Model Context Protocol da Anthropic (como conectar o agente ao Google Drive ou SQL) — vá direto para a seção especial “Arquitetura vs Protocolo: qual a diferença?” perto do final do artigo. Lá explicamos tudo de forma clara e organizada, para que você não se perca.
A arquitetura MCP (Model-Controller-Perception) é, essencialmente, a espinha dorsal para a criação de agentes de IA autônomos. Ela divide todo o processo em três camadas claras: percepção de dados (Perception), modelo de mundo (Model) e controlador de decisões (Controller). Essa abordagem estrutura sistemas inteligentes, tornando-os previsíveis e, acima de tudo, escaláveis.
Os componentes interagem de forma cíclica: primeiro o agente lê os dados do ambiente, depois atualiza seu estado interno e só então escolhe uma ação. Essa é a base para agentes de IA MCPautônomos confiáveis, utilizados em diversos contextos: desde o controle de robôs em fábricas até trading de alta frequência.
MCP é um padrão de design comprovado para agentes de IA. Ele divide um sistema complexo em três módulos independentes: Modelo (memória e estado), Controlador (lógica de decisão) e Percepção (entrada de dados). Essa abordagem simplifica bastante a vida do desenvolvedor: a depuração fica mais fácil e a evolução, mais rápida.
Agentes baseados em MCP para IA adaptam-se facilmente a novas tarefas. Imagine: você pode substituir os sensores na camada de percepção sem reescrever a lógica de decisão. É como trocar os olhos de um robô sem refazer o cérebro. A arquitetura modelo-controlador-percepção tornou-se o padrão de fato para muitos frameworks populares de agentes autônomos (incluindo Mesa e implementações personalizadas como mcp-agent), pois equilibra perfeitamente complexidade e flexibilidade.
“A modularidade arquitetônica permite isolar falhas: um erro nos dados do sensor não deve bloquear a lógica de tomada de decisões”.
— Estudo sobre sistemas autônomos, Robotics & Automation Magazine.
[Infográfico: Diagrama do ciclo de vida do agente MCP — Perception coleta dados, Model atualiza o contexto, Controller escolhe a Action]
Todo o ciclo começa com o impacto do ambiente externo (mercado, interface, internet). Os sensores transmitem dados brutos e não processados para a camada de percepção. Em seguida, o modelo atualiza a representação do mundo com base nessas novas informações. O controlador analisa o estado atual e escolhe a ação (action) ótima. Depois disso, o agente atua sobre o ambiente, iniciando um novo ciclo.
O fluxo de dados aqui segue direções estritas. Isso simplifica o rastreamento de erros: se uma operação resultar em prejuízo, você verifica o Controlador (por que tomou essa decisão?); se os dados simplesmente não chegaram, verifique a Percepção (onde está o gargalo na entrada?). Tudo é transparente.
Se você é desenvolvedor, pode executar um agente básico agora mesmo, usando ferramentas modernas que suportam os padrões agentes de IA MCP. Ao usar a estrutura mcp-agent, você obtém uma infraestrutura pronta:
# 1. Установка инструментов (рекомендуемый менеджер пакетов uv)
uv add "mcp-agent[openai]"
# 2. Инициализация проекта
uvx mcp-agent init -d my-first-mcp-agent
# 3. Запуск
cd my-first-mcp-agent && uv run main.py
A maioria das estruturas modernas permite implantar o agente no modo asyncio ou com integração Temporal para maior tolerância a falhas.
Vamos analisar cada engrenagem desse mecanismo separadamente. Sem entender esses três pilares, é difícil falar em automação séria.
A camada de percepção são os “olhos e ouvidos” do sistema. No software clássico, são câmeras e lidars; nos agentes de IA para negócios, são conexões via API (bolsas de valores, CRM, Telegram). O módulo de filtragem remove ruídos (por exemplo, falsos positivos durante baixa liquidez). O reconhecimento de padrões permite que o agente entenda o contexto: “isso é apenas ruído de mercado” ou “este é um sinal forte para trading?”. Sem uma percepção de qualidade, o agente fica cego.
Exemplo para ASCN.AI: Para o investidor, é a janela de conexão com a bolsa. Para o desenvolvedor, é uma classe Python que implementa o método get_data(), que limpa o fluxo de entrada.
O modelo é a memória do agente. Ela armazena o estado atual (por exemplo, o saldo da carteira) e o histórico (lista de transações anteriores). Sem esse componente, o agente operará “do zero” a cada solicitação, como uma pessoa com amnésia. Em agentes LLM modernos, essa camada é frequentemente implementada por meio de RAG (busca vetorial) ou bancos de dados especializados em estados.
O controlador é o cérebro do sistema. A lógica de tomada de decisões depende rigidamente dos dados do modelo. O controlador com política risk < 0.3 reduz em 73% o número de transações incorretas (segundo métricas internas do caso Falcon Finance). O planejamento divide tarefas complexas em etapas simples. A qualidade dos predicados do controlador determina, essencialmente, se você terá lucro ou prejuízo no sistema.
As equipes de desenvolvimento reduzem o tempo de depuração em 40% quando cada módulo é testado separadamente (testes unitários), e não o sistema como um todo. A separação de responsabilidades simplifica o desenvolvimento. A escalabilidade é alcançada pelo desenvolvimento independente dos módulos. Você não fica dependente de um monólito.
A escolha da arquitetura sempre depende da tarefa específica. Sistemas reativos são rápidos, mas não realizam planejamento (apenas “reação ao estímulo”, bateu — recuou). A arquitetura BDI (Belief-Desire-Intention) é mais complexa, mas exige recursos computacionais robustos para planejamento de longo prazo. O MCP ocupa o meio-termo ideal.
| Parâmetro | MCP (Model-Controller-Perception) | Reativo | BDI (Crença-Desejo-Intenção) |
|---|---|---|---|
| Estado do mundo | Modelo completo (Estado) | Ausente (Sem estado) | Crenças verbais (Crenças) |
| Planejamento | Flexível (baseado em políticas) | Ausente | Complexo (Intenções) |
| Complexidade de implementação | Média (Python/Assíncrono) | Baixa | Alta |
| Área de aplicação | Agentes autônomos em negócios | Bots simples de notificação | Simulações científicas |
A arquitetura funciona não apenas na teoria. No caso do Falcon Finance (FF) Os agentes ASCN.AI utilizaram o padrão MCP para trading. O sistema de percepção (Perception) analisava dados das bolsas em tempo real. O modelo (Model) avaliava a queda atual da carteira. O controlador (Controller) detectou uma janela de arbitragem e tomou a decisão de negociar.
Resultado: 1000 dólares de lucro com apenas dois prompts, sem intervenção manual. Isso prova que a arquitetura correta dentro do agente é mais importante do que simplesmente um modelo "inteligente". O modelo é a inteligência, enquanto a arquitetura é a disciplina.
Caso: Flash crash
Os agentes ASCN.AI identificavam anomalias em tempo real graças ao ciclo rápido de percepção. Quando o preço caiu abaixo do limite, o controlador (configurado para gestão de risco) fechou posições perdedoras e abriu uma posição vendida (short). O modelo previu a correção. Este é um exemplo claro de lucro com a volatilidade, possibilitado porque a arquitetura permitiu uma reação mais rápida que a humana.
A implementação começa com a criação de três classes. Abaixo está um exemplo básico em Python, além de padrões avançados (integração com API, memória). Não se assuste com o código, não há mágica aqui.
class Perception:
def get_data(self):
# Сбор данных из среды (API, сенсоры)
return raw_data
class Model:
def __init__(self):
self.history = [] # Память агента
def update(self, data):
self.history.append(data)
class Controller:
def decide(self, state):
# Логика принятия решений
if state['risk'] < 0.3:
return action_buy
# Основной цикл
def main_loop():
agent = Agent(Perception(), Model(), Controller())
while True:
data = agent.perception.get_data()
agent.model.update(data)
action = agent.controller.decide(agent.model)
execute(action)
Para produção, a configuração é extraída para YAML. Também é crucial implementar Human-in-the-loop (humano no circuito), para que o agente não envie dinheiro sem confirmação. A segurança vem em primeiro lugar.
# mcp_agent.config.yaml
execution_engine: asyncio
security:
human_in_loop: true # Требовать подтверждение
max_trade_size: 1000 # Лимит на транзакцию
# snippets/human_approval.py
async def request_approval(action):
print(f"ОПАСНОЕ ДЕЙСТВИЕ: {action}. Подтвердите (Y/N):")
# Интеграция с Telegram API для пуш-уведомления владельцу
"Em vez de manter conectores separados para cada fonte de dados, os desenvolvedores agora podem usar um único protocolo padrão".
— Dhanjin Prasanna, CTO da Block.
É importante finalmente separar dois conceitos. Arquitetura (Model-Controller-Perception) descreve como internamente o agente pensa. Protocolo de Contexto de Modelo (MCP) (da Anthropic) — é um padrão externo de conexão dos agentes a dados (arquivos, bancos de dados). São coisas diferentes, embora os nomes sejam semelhantes.
Em 2024-2025, a indústria caminha para que a arquitetura MCP opere dentro do agente (para lógica), enquanto externamente ele se conecta às ferramentas via Model Context Protocol. O modelo cliente-servidor do protocolo não substitui a lógica interna do agente, mas a complementa, permitindo conceder permissões ao agente para ler arquivos ou executar código com segurança.
Para tarefas de longa duração (por exemplo, trading 24/7), é necessária tolerância a falhas. A integração com sistemas como o Temporal preserva o estado em caso de falhas. O fluxo de trabalho continua após a reinicialização, sem perder o histórico de "Percepção".
uvx mcp-agent init.A execução local (Standalone) oferece controle total sobre dados e chaves. A implantação em nuvem (Azure Container Apps, AWS Lambda) é necessária para escalabilidade, especialmente quando é preciso atender centenas de conexões via MCP. A equipe da ASCN.AI recomenda uma abordagem híbrida: a lógica (Controller) pode ser local para maior velocidade, enquanto a coleta de dados (Perception) fica na nuvem.
Sim. Embora este artigo apresente código Python, a plataforma ASCN.AI permite configurar a lógica dos agentes (Controller) por meio de uma interface visual. Você conecta as ferramentas (API) e a própria plataforma gerencia o ciclo de percepção e tomada de decisões.
É um mecanismo em que o controlador não executa a ação (por exemplo, transferência de fundos) automaticamente, mas envia uma solicitação ao canal de Perception do operador (por exemplo, no Telegram). O usuário confirma e o agente continua o ciclo.
Um chatbot responde a perguntas (texto → texto). Um agente MCP age no ambiente: ele pode analisar um site (Perception), memorizar o contexto (Model) e realizar ações — comprar, enviar arquivos, transferir dinheiro (Controller).
Apenas com limites rígidos (Risk Management). A arquitetura MCP permite definir limites no nível do Controller.decide(). Por exemplo, “nunca fazer uma aposta superior a 5% do capital”. Isso é protegido por código, diferentemente da gestão manual.
Quaisquer modelos de LLM (GPT-4, Claude, Llama) podem atuar como “Controlador”, desde que tenham acesso a ferramentas (Function Calling) ou por meio de integração com o protocolo Model Context Protocol.
O custo depende da quantidade de tokens e do número de solicitações às APIs externas. Um agente básico para raspagem de dados custa entre US$ 10 e US$ 30/mês. Agentes para negociação ativa, usando modelos poderosos (GPT-4o), podem consumir entre US$ 100 e US$ 500/mês em caso de alta atividade.
Quer implementar agentes com arquitetura MCP no seu negócio?