View a markdown version of this page

O que é MCP? - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

O que é MCP?

LLMs trabalham prevendo uma resposta a uma solicitação com base em seus dados de treinamento. Isso significa que o LLM só pode fornecer respostas sobre dados e eventos que já viu. Métodos como Retrieval Augmented Generation (RAG) e bases de conhecimento permitem que você inclua dados contextuais. No entanto, se você perguntasse a um LLM qual será a previsão do tempo para amanhã ou quantos clientes estão em seu banco de dados, ele provavelmente alucinaria ou não seria capaz de fornecer uma resposta porque isso está fora do conhecimento pré-treinado do LLM. Para poder responder a esses tipos de perguntas, um agente precisa acessar recursos externos, dados e APIs fora do contexto nativo do LLM.

Entendendo as ferramentas

Podemos dar ao LLM acesso a sistemas e contextos adicionais por meio de ferramentas.As ferramentas são funções atribuídas ao LLM para atingir um objetivo claro. Uma ferramenta pode chamar uma API, consultar um banco de dados, realizar operações de calculadora, operar uma caixa de areia de código, realizar uma pesquisa na web e até mesmo invocar outro sistema de IA ou. agent-as-a-tool Cada ferramenta deve incluir uma descrição que diga ao LLM o que a ferramenta faz, quando usá-la e quais parâmetros ela aceita. Isso permite que o LLM tome decisões diferenciadas sobre qual ferramenta ou combinação de ferramentas invocar com base na entrada do usuário. O LLM é informado sobre quais ferramentas estão disponíveis para o agente, permitindo gerar respostas que instruem o agente a invocar a ferramenta. Por exemplo, quando você pergunta ao LLM quantos clientes estão em seu banco de dados, o LLM envia uma resposta de volta ao agente solicitando a execução da query_database ferramenta com parâmetros de entrada específicos. O LLM determina qual ferramenta invocar e as entradas para a chamada da ferramenta. O agente então executa a ferramenta, que converte a entrada da linguagem natural em uma chamada de função sintaticamente correta e executa a consulta. O agente invoca a ferramenta ou ferramentas com base nas instruções do LLM, e esses resultados são repassados ao LLM. Isso aproveita a capacidade do LLM de raciocinar sobre a entrada baseada em texto e selecionar as ferramentas apropriadas para o trabalho.

A imagem a seguir mostra como cada agente gerencia seu próprio conjunto de ferramentas para cada alvo.

Cada agente gerencia seu próprio conjunto de ferramentas para cada alvo.

O escalonamento do acesso às ferramentas pode apresentar desafios para soluções de IA agentes:

  • Se cada desenvolvedor está criando sua própria ferramenta para os mesmos recursos externos, há muito esforço duplicado e formas não padronizadas de interagir com esses recursos externos. Isso produz implementações inconsistentes em seus agentes. Embora você possa resolver esse problema desenvolvendo ferramentas padrão em bibliotecas e distribuindo-as, isso carece de governança centralizada. Isso dificulta a aplicação de políticas de segurança, o rastreamento do uso de ferramentas, o gerenciamento de versões entre as equipes ou a garantia da conformidade com os padrões organizacionais. Além disso, ao incorporar ferramentas diretamente ao agente, você deve reimplantar seu agente sempre que uma nova ferramenta for criada ou uma existente for atualizada.

  • Fornecer ferramentas para um LLM consome sua janela de contexto. A janela de contexto é o número de tokens (unidades de texto que são LLMs processadas — normalmente representando palavras, partes de palavras ou pontuação) que um modelo pode considerar a qualquer momento. LLMs têm limites de janela de contexto. As ferramentas e sua documentação consomem essa janela de contexto finita junto com as solicitações do sistema e as solicitações do usuário. À medida que a janela de contexto é preenchida, o desempenho LLMs pode ser reduzido devido a vários fatores: dificuldade em identificar informações relevantes, aumento da complexidade do processamento e redução da capacidade de raciocínio. O desafio é agravado quando as definições de ferramentas, as solicitações do sistema e o histórico de conversas competem por um espaço limitado na janela de contexto porque são fornecidos em cada invocação do LLM.

Assim, o número de ferramentas e a forma como elas são documentadas têm impacto direto no desempenho do LLM, como tempo de resposta e precisão.

O MCP estabelece um padrão universal para conectar agentes a recursos externos. É comumente chamado de “USB-C para aplicativos de IA”. Em vez de registrar ferramentas diretamente com agentes, os servidores MCP atuam como intermediários para hospedar ferramentas que são descobertas e invocadas por meio do JSON-RPC 2.0. Em vez de adicionar dezenas ou centenas de ferramentas diferentes ao seu agente e mantê-las ao longo do tempo, o MCP permite que você registre servidores MCP que encapsulam as ferramentas que seu agente pode acessar. Essa abordagem padroniza como as ferramentas são empacotadas, apresentadas e invocadas. Isso pode ajudar a enfrentar os desafios de escala e governança do uso de ferramentas em seus agentes. Ele também separa o desenvolvimento e as operações de agentes das ferramentas que usa para recursos externos.

A figura a seguir mostra agentes usando MCP para acessar recursos externos.

Usando o Model Context Protocol para acessar recursos externos.

No entanto, o padrão MCP não resolve todos os desafios de escalabilidade e governança. A implementação de servidores MCP deve ser combinada com estratégias eficazes de design de ferramentas, hospedagem e governança corporativa. Este guia fornece as melhores práticas para cada estratégia para ajudá-lo a criar e usar o MCP como parte de suas soluções de IA para agentes.

Quando usar o MCP

O MCP fornece infraestrutura estratégica para escalar suas iniciativas de inteligência artificial. Ao centralizar o gerenciamento e a governança de ferramentas, os servidores MCP reduzem o custo cumulativo de criar e manter integrações personalizadas entre vários agentes. Isso proporciona retornos crescentes à medida que seu ecossistema de agentes se expande.

O MCP provavelmente se torna parte de sua estratégia quando:

  • Você precisa de uma governança centralizada sobre como os agentes acessam sistemas e serviços corporativos, como bancos de dados APIs, ferramentas internas e integrações de terceiros.

  • Os desenvolvedores passam muito tempo escrevendo integrações personalizadas que não são consistentes em todas as implementações.

  • Você tem ferramentas duplicadas que podem servir a recursos comuns.

  • Você deseja oferecer suas ferramentas ou dados proprietários a consumidores externos ou sistemas de agentes terceirizados por meio de interfaces MCP padronizadas e governadas, liberando novos fluxos de receita e mantendo a segurança e o controle.

Depois de decidir que os servidores MCP farão parte de sua estratégia, avalie se as implementações de servidores MCP de código aberto existentes atendem às suas necessidades, se elas precisam ser aprimoradas ou se você precisa criar servidores personalizados. Muitas implementações de servidor MCP pré-criadas estão disponíveis em repositórios públicos e abrangem recursos comuns, como acesso ao sistema de arquivos, navegação na web, sandboxes de código, acesso ao banco de dados e integrações de API.

Em muitos casos, servidores MCP preexistentes são suficientes. Por exemplo, AWS fornece o Servidor AWS MCP, um servidor MCP remoto gerenciado que fornece aos assistentes e agentes de IA acesso seguro e autenticado Serviços da AWS por meio de interações em linguagem natural. Você pode usar o Servidor AWS MCP para realizar AWS tarefas complexas de várias etapas combinando acesso em tempo real à AWS documentação, chamadas de API sintaticamente corretas e fluxos de trabalho pré-criados chamados Agente SOPs que seguem as melhores práticas. AWS AWS testa continuamente os Servidor AWS MCP para garantir que os agentes do cliente possam usá-los com sucesso.

Você deve testar esses servidores MCP existentes com seus agentes para determinar se eles atendem aos seus casos de uso. Se um agente não conseguir concluir fluxos de trabalho, gerar respostas incorretas ou inadequadas, não conseguir navegar por processos complexos de várias etapas ou perder importantes práticas recomendadas ou considerações de segurança específicas do domínio, você deve considerar aprimoramentos em várias dimensões.

Quando os servidores MCP existentes não atendem totalmente às suas necessidades e têm dificuldade em usar as ferramentas existentes corretamente ou produzir respostas precisas, considere estas abordagens de aprimoramento antes de criar servidores personalizados:

  • Enriqueça o contexto do agente — Se seu agente tiver dificuldade em usar as ferramentas de forma correta ou eficiente em um servidor MCP existente, considere complementar essas definições de ferramentas com documentação ou exemplos adicionais. Isso ajuda a fornecer contexto adicional ao LLM.

  • Adicione ferramentas complementares — amplie os servidores MCP existentes com ferramentas que acessam dados ou contextos organizacionais adicionais de que os agentes precisam para concluir fluxos de trabalho com êxito.

  • Melhore o subjacente APIs — simplifique seu serviço APIs para torná-lo mais compatível com o LLM, reduzindo a complexidade dos parâmetros, fornecendo mensagens de erro mais claras e oferecendo padrões sensatos que os agentes possam usar.

Embora o uso de implementações de servidores MCP existentes acelere o desenvolvimento de recursos comuns, a criação de servidores MCP personalizados é uma necessidade quando seu caso de uso exige funcionalidade especializada. Os servidores MCP personalizados ajudam você a encapsular a experiência do domínio, aplicar padrões organizacionais, melhorar a confiabilidade dos agentes para fluxos de trabalho complexos e oferecer suporte à conformidade com os requisitos de segurança. Considere criar um servidor MCP personalizado nas seguintes situações:

  • Fluxos de trabalho específicos do domínio — Os fluxos de trabalho de várias etapas que exigem experiência no domínio devem ser encapsulados em ferramentas MCP personalizadas quando o conhecimento necessário não é capturado na documentação da API. Por exemplo, em vez de permitir que os agentes organizem canais complexos de dados de saúde que devem validar a conformidade com a Lei de Portabilidade e Responsabilidade de Seguros de Saúde (HIPAA), anonimizar as PII e transformar para o formato HL7 FHIR, forneça uma ferramenta que incorpore diretamente a experiência do domínio. process_patient_data Isso elimina a dependência do LLM para orquestrar e executar corretamente as etapas do fluxo de trabalho, o que melhora a consistência e a conformidade.

  • Abstrações do caminho dourado — Os agentes podem ter dificuldade em implementar abordagens ideais porque não têm contexto organizacional e adotam padrões básicos em vez das melhores práticas organizacionais. Nesses cenários, você pode aplicar padrões prescritivos de custo, desempenho ou segurança encapsulando esses caminhos dourados em ferramentas MCP personalizadas. Por exemplo, em vez de permitir que os agentes implantem uma infraestrutura com configurações padrão que podem ser inseguras ou ineficientes, forneça uma deploy_secure_infrastructure ferramenta que incorpore diretamente os padrões da sua organização.

  • Orquestração complexa de vários serviços — Em vez de fazer com que o agente orquestre fluxos de trabalho complexos tentando inferir a sequência correta e o conjunto de serviços a serem usados em cada etapa, você pode criar de forma determinística essa lógica dentro de uma ferramenta MCP. Talvez você também queira fornecer experiência sobre os padrões ideais de integração de serviços que o agente talvez não conheça. Isso também pode melhorar a precisão e a eficiência de seus agentes.

  • Práticas recomendadas específicas do serviço — Isso é comum para ferramentas focadas na segurança que ajudam os agentes a implementar políticas de criptografia, controles de acesso e padrões de conformidade específicos para o serviço que está sendo acessado por meio da ferramenta do agente. Além disso, se houver melhores práticas operacionais específicas do serviço que não sejam óbvias, o uso de um servidor MCP pode ajudá-lo a garantir que elas sejam implementadas e não deixadas para um agente raciocinar.