Usar o servidor MCP remoto do AlloyDB

Neste documento, mostramos como usar o servidor remoto do Protocolo de Contexto de Modelo (MCP) do AlloyDB para PostgreSQL para se conectar a aplicativos de IA, incluindo Antigravity, ChatGPT, Claude e aplicativos personalizados que você está desenvolvendo. O servidor MCP remoto do AlloyDB para PostgreSQL permite acessar e executar ferramentas do AlloyDB para gerenciar clusters e instâncias do AlloyDB em ambientes de desenvolvimento com IA e plataformas de agentes de IA. O servidor MCP remoto do AlloyDB para PostgreSQL é ativado quando você ativa a API AlloyDB para PostgreSQL.

O Protocolo de Contexto de Modelo (MCP) padroniza como os modelos de linguagem grandes (LLMs) e os aplicativos ou agentes de IA se conectam a fontes de dados externas. Os servidores MCP permitem que você use as ferramentas, os recursos e os comandos deles para realizar ações e receber dados atualizados do serviço de back-end.

Qual é a diferença entre servidores MCP locais e remotos?

Servidores MCP locais
Normalmente, são executados na máquina local e usam os streams de entrada e saída padrão (stdio) para comunicação entre serviços no mesmo dispositivo.
Servidores MCP remotos
São executados na infraestrutura do serviço e oferecem um endpoint HTTP para que os aplicativos de IA se comuniquem entre o cliente MCP de IA e o servidor MCP. Para mais informações sobre a arquitetura do MCP, consulte Arquitetura do MCP.

Núcleo sem estado

Com a versão 2026-07-28 do MCP, o MCP muda de um protocolo bidirecional com estado para um protocolo sem estado. Cada solicitação do MCP é autodescritiva e pode ser roteada usando cabeçalhos. Não é necessário o handshake initialize/initialized ou Mcp-Session-Id porque cada solicitação inclui todas as informações necessárias nos cabeçalhos HTTP ou no parâmetro _meta. Os servidores MCP podem solicitar mais informações necessárias para uma ferramenta usando solicitações de ida e volta (MRTR, na sigla em inglês).

Para ajudar a rotear e processar solicitações sem analisar o corpo da solicitação, alguns cabeçalhos do MCP são necessários, incluindo os seguintes:

Para mais informações sobre a arquitetura do MCP, consulte a especificação e as principais mudanças da versão 2026-07-28 do MCP.

É recomendável usar o servidor MCP local do AlloyDB pelos seguintes motivos:

  • Desenvolvimento e teste locais

  • Uso off-line do MCP

  • Gerenciar clusters e instâncias do AlloyDB no aplicativo de IA

Para mais informações sobre como usar o servidor MCP local, consulte Usar o AlloyDB para PostgreSQL com o MCP, a CLI do Gemini e outros agentes ou Servidor MCP do AlloyDB para PostgreSQL. As seções a seguir se aplicam apenas ao servidor MCP remoto do AlloyDB para PostgreSQL.

Google Cloud servidores MCP remotos

Os servidores MCP remotos do Google e do Google Cloud têm os seguintes recursos e benefícios:

  • Descoberta simplificada e centralizada
  • Endpoints HTTP globais ou regionais gerenciados
  • Autorização detalhada
  • Segurança opcional de comandos e respostas com a proteção do Model Armor
  • Geração de registros de auditoria centralizada

Para informações sobre outros servidores MCP e sobre os controles de segurança e governança disponíveis para servidores MCP do Google Cloud, consulte Visão geral dos servidores MCP do Google Cloud.

Limitações

O servidor MCP remoto do AlloyDB tem as seguintes limitações:

Antes de começar

  1. Faça login na sua conta do Google Cloud . Se você começou a usar o Google Cloudagora, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho sem custos financeiros.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  4. Enable the AlloyDB API, if it is not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  5. Install the Google Cloud CLI.

  6. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  7. To initialize the gcloud CLI, run the following command:

    gcloud init
  8. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  9. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  10. Enable the AlloyDB API, if it is not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  11. Install the Google Cloud CLI.

  12. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  13. To initialize the gcloud CLI, run the following command:

    gcloud init

Funções exigidas

Para receber as permissões necessárias para usar o servidor MCP do AlloyDB para PostgreSQL, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto em que você quer usar o servidor MCP do AlloyDB para PostgreSQL:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para usar o servidor MCP do AlloyDB para PostgreSQL. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As permissões a seguir são necessárias para usar o servidor MCP do AlloyDB para PostgreSQL:

  • Fazer chamadas de ferramentas do MCP: mcp.tools.call
  • Crie um cluster do AlloyDB: alloydb.cluster.create
  • Crie um usuário do AlloyDB: alloydb.users.create
  • Clone uma instância do AlloyDB: alloydb.instances.create
  • Execute consultas SQL em uma instância do AlloyDB:
    • alloydb.instances.executeSql
    • alloydb.instances.login
  • Execute consultas SQL somente leitura em uma instância do AlloyDB:
    • alloydb.instances.executeSqlReadOnly
    • alloydb.instances.login
  • Acesse um cluster do AlloyDB: alloydb.instances.get
  • Receba uma operação de cluster do AlloyDB: alloydb.clusters.get
  • Importar dados para um cluster do AlloyDB: alloydb.clusters.import
  • Exportar dados de um cluster do AlloyDB para o Cloud Storage: alloydb.clusters.export
  • Liste os clusters do AlloyDB em um projeto: alloydb.clusters.list
  • Liste os usuários do AlloyDB: alloydb.users.list
  • Atualize um cluster do AlloyDB: alloydb.clusters.update
  • Atualize um usuário do AlloyDB: alloydb.users.update

Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.

Autenticação e autorização

O servidor MCP remoto do AlloyDB para PostgreSQL usa o protocolo OAuth 2.0 com o Identity and Access Management (IAM) para autenticação e autorização. Todas as identidades doGoogle Cloud são compatíveis com a autenticação em servidores MCP.

O servidor MCP remoto do AlloyDB não aceita chaves de API.

Recomendamos que você crie uma identidade separada para agentes que usam ferramentas do MCP para que o acesso aos recursos possa ser controlado e monitorado. Para mais informações sobre autenticação, consulte Autenticar em servidores MCP.

Escopos do OAuth do MCP do AlloyDB

O OAuth 2.0 usa escopos e credenciais para determinar se um principal autenticado tem autorização para realizar uma ação específica em um recurso. Para mais informações sobre os escopos do OAuth 2.0 no Google, leia Como usar o OAuth 2.0 para acessar as APIs do Google.

O AlloyDB tem os seguintes escopos OAuth da ferramenta MCP:

URI de escopo para a CLI gcloud Descrição
https://www.googleapis.com/auth/alloydb Acessar, editar, configurar e excluir seus dados do Google Cloud AlloyDB e ver o endereço de e-mail da sua Conta do Google.

Escopos adicionais podem ser necessários nos recursos acessados durante uma chamada de ferramenta. Para conferir uma lista de escopos necessários para o AlloyDB, consulte a API AlloyDB Admin.

Configurar um cliente MCP para usar o servidor MCP do AlloyDB

Os aplicativos e agentes de IA, como o Claude ou o Antigravity, podem instanciar um cliente MCP que se conecta a um único servidor MCP. Um aplicativo de IA pode ter vários clientes que se conectam a diferentes servidores MCP. Se o aplicativo não estiver listado nas orientações específicas do cliente, use as informações a seguir para se conectar na maioria dos aplicativos.

No seu aplicativo de IA, procure uma maneira de adicionar ou se conectar a um servidor MCP remoto. Para o servidor MCP do AlloyDB para PostgreSQL, insira as seguintes informações conforme necessário:

  • Nome do servidor: servidor MCP do AlloyDB para PostgreSQL
  • URL do servidor ou Endpoint: https://alloydb.googleapis.com/mcp
  • Transporte: HTTP com streaming
  • Detalhes de autenticação: dependendo de como você quer fazer a autenticação, insira suas credenciais do Google Cloud , o ID e a chave secreta do cliente OAuth ou uma identidade e credenciais de agente. Para mais informações sobre autenticação, consulte Autenticar em servidores MCP.
  • Escopo do OAuth: o escopo do OAuth 2.0 que você quer usar ao se conectar ao servidor MCP do AlloyDB para PostgreSQL.

Para orientações específicas sobre como configurar e se conectar ao servidor MCP, consulte Orientações específicas para o cliente.

Para orientações mais gerais, consulte os seguintes recursos:

Ferramentas disponíveis

Para conferir detalhes das ferramentas MCP disponíveis e as descrições delas para o servidor MCP do AlloyDB para PostgreSQL, consulte a referência do MCP do AlloyDB para PostgreSQL.

Listar ferramentas

Use o inspetor do MCP para listar ferramentas ou envie uma solicitação HTTP tools/list diretamente ao servidor MCP remoto do AlloyDB para PostgreSQL. O método tools/list não requer autenticação.

curl -X POST https://alloydb.googleapis.com/TOOLSET_ENDPOINT \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'MCP-Protocol-Version: MCP_PROTOCOL_VERSION' \
    -H 'Mcp-Method: tools/list' \
    -d '{
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/list",
      "params": {
        "_meta": {
          "io.modelcontextprotocol/protocolVersion": "MCP_PROTOCOL_VERSION",
          "io.modelcontextprotocol/clientCapabilities": {
            "extensions": {
              "io.modelcontextprotocol/ui": {
                "mimeTypes": ["text/html;profile=mcp-app"]
              }
            }
          }
        }
      }
    }'

Substitua:

  • TOOLSET_ENDPOINT: o restante do endpoint do MCP após o nome do serviço. Por exemplo, para o AlloyDB para PostgreSQL, pode ser mcp/toolset-name.

  • MCP_PROTOCOL_VERSION: a versão do protocolo MCP. Por exemplo, 2026-07-28.

Executar SQL

Para executar instruções SQL, siga estas etapas:

  1. Defina a configuração da instância data_api_access na instância do AlloyDB como o valor ALLOW_DATA_API_ACCESS. Quando você cria uma instância usando a ferramenta create_instance, a configuração data_api_access é ativada automaticamente.

    Se a configuração data_api_access não estiver ativada em uma instância, use o comando curl para atualizar o valor do campo dataApiAccess para ENABLED:

    curl -X PATCH \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     https://alloydb.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/instances/INSTANCE_ID?updateMask=dataApiAccess \
     -d '{
       "dataApiAccess": "ENABLED",
     }'
    

    Substitua:

    • PROJECT_ID: o ID do seu projeto do Google Cloud .

    • LOCATION: a região em que o cluster do AlloyDB está localizado.

    • CLUSTER_ID: o ID do cluster do AlloyDB.

    • INSTANCE_ID: o ID da instância do AlloyDB.

  2. Na CLI do Gemini, insira um comando semelhante a este:

    Ative a autenticação do banco de dados do IAM na instância do AlloyDB INSTANCE_NAME. Verifique se as instruções SQL usam os privilégios associados à conta de usuário de autenticação do banco de dados do IAM USER_ACCOUNT.

    Substitua:

    • INSTANCE_NAME: o nome da instância do AlloyDB.

    • USER_ACCOUNT: a conta de usuário do IAM a ser usada para autenticação ao executar instruções SQL.

Exemplos de casos de uso

Confira a seguir exemplos de casos de uso do servidor MCP do AlloyDB.

Desenvolvimento de apps da Web

Um exemplo de caso de uso seria o desenvolvimento rápido de aplicativos da Web e o provisionamento de instâncias do AlloyDB como banco de dados de origem. Nesse caso de uso, o servidor MCP do AlloyDB permite criar um novo banco de dados e preenchê-lo com dados iniciais para um novo projeto usando linguagem natural.

Exemplo de comando:

"Crie uma nova instância de desenvolvimento do AlloyDB para PostgreSQL e configure uma tabela chamada products."

Fluxo de trabalho:o fluxo de trabalho para configurar um aplicativo da Web pode ser assim:

  • Provisionamento: o agente cria um cluster em que a instância pode ser alocada. Em seguida, o agente chama a ferramenta create_instance para criar uma nova instância do AlloyDB com especificações de tamanho de ambiente de desenvolvimento. É possível ativar a conectividade de IP público na nova instância. Também é possível automatizar a configuração do endpoint do Private Service Connect.

  • Verificação: o agente usa a ferramenta get_operation para consultar o status da operação de criação da instância.

  • Conexão: quando a operação é concluída, o agente usa a ferramenta get_instance para recuperar os metadados de conexão da instância.

  • Configuração do esquema: o agente cria o banco de dados e usa a ferramenta execute_sql para executar a instrução SQL CREATE TABLE products.

  • Preenchimento de dados: o agente usa execute_sql novamente para inserir dados de preenchimento inicial (DML) na tabela recém-criada.

Gerenciamento de configuração operacional e de banco de dados

Neste exemplo de caso de uso, você pode analisar as instâncias de banco de dados atuais para garantir que elas atendam aos padrões de configuração operacional. Também é possível usar o agente para gerenciar usuários do banco de dados na instância.

Exemplo de comando:

Liste todas as instâncias do PostgreSQL no meu projeto e mostre os detalhes delas para verificar se estão usando a mesma configuração e se a lista das atividades recentes de usuários do banco de dados foi atualizada.

Fluxo de trabalho: o fluxo de trabalho para verificar a instância do AlloyDB e a configuração do usuário do banco de dados pode ser assim:

  • Descoberta: o agente usa list_instances para recuperar uma lista de todas as instâncias do AlloyDB no projeto.

  • Inspeção: para cada instância identificada, o agente chama get_instance para buscar metadados de configuração detalhados, como a versão do banco de dados, a região e o tipo de máquina, e chama list_users para verificar os usuários do banco de dados na instância. Esses metadados incluem informações sobre se a conectividade de IP público está ativada ou se os endpoints do Private Service Connect estão configurados.

  • Relatórios: o agente resume as descobertas, destacando todas as instâncias ou usuários que se desviam da configuração esperada.

Configurações opcionais de segurança e proteção

O MCP apresenta novos riscos e considerações de segurança devido à grande variedade de ações que podem ser realizadas com as ferramentas do MCP. Para minimizar e gerenciar esses riscos, oGoogle Cloud oferece padrões e políticas personalizáveis para controlar o uso de ferramentas do MCP na sua organização ou projeto do Google Cloud.

Para mais informações sobre a segurança e a governança do MCP, consulte Segurança e proteção da IA.

Usar o Model Armor

O Model Armor é um serviço doGoogle Cloud projetado para aprimorar a segurança dos seus aplicativos com a IA. Ele funciona verificando de maneira proativa os comandos e respostas de LLMs, protegendo contra vários riscos e apoiando práticas de IA responsável. Seja no seu ambiente de nuvem ou em provedores de nuvem externos, o Model Armor ajuda a evitar entradas maliciosas, verificar a segurança do conteúdo, proteger dados sensíveis, manter a conformidade e aplicar suas políticas de segurança de IA de maneira consistente em todo o seu cenário de IA.

Quando o Model Armor está ativado com a geração de registros ativada, ele registra todo o payload. Isso pode expor informações sensíveis nos registros.

Encaminhamento de solicitações do MCP para o Model Armor

O Model Armor está disponível em determinadas regiões. Quando o Model Armor está ativado e você usa um servidor MCP em uma jurisdição que não é compatível com o Model Armor, o comportamento de roteamento da chamada pode ser diferente para servidores MCP diferentes e pode violar a conformidade com a residência de dados para dados em uso e em trânsito. Para mais informações sobre o comportamento de servidores MCP individuais, consulte Produtos compatíveis com o Model Armor.

Ativar o Model Armor

É necessário ativar as APIs do Model Armor antes de usá-lo.

Console

  1. Ative a API Model Armor, se ainda não estiver ativada.

    Funções necessárias para ativar APIs

    Para ativar APIs, você precisa da permissão serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel de proprietário (roles/owner). Caso contrário, é possível conseguir essa permissão pelo papel de administrador do Service Usage (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.

    Ativar a API

  2. Selecione o projeto em que você quer ativar o Model Armor.

gcloud

Antes de começar, siga estas etapas usando a Google Cloud CLI com a API Model Armor:

  1. No console do Google Cloud , ative o Cloud Shell.

    Ativar o Cloud Shell

    Na parte inferior do console do Google Cloud , uma sessão do Cloud Shell é iniciada e exibe um prompt de linha de comando. O Cloud Shell é um ambiente shell com a CLI do Google Cloud já instalada e com valores já definidos para o projeto atual. A inicialização da sessão pode levar alguns segundos.

  2. Execute o comando a seguir para usar o endpoint de API global:

    gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.googleapis.com/"

Configurar a proteção para servidores MCP remotos do Google e do Google Cloud

Para proteger as chamadas e respostas da ferramenta MCP, use as configurações de nível do Model Armor. Uma configuração mínima define os filtros de segurança mínimos que se aplicam ao projeto. Essa configuração aplica um conjunto consistente de filtros a todas as chamadas e respostas de ferramentas do MCP no projeto.

Defina uma configuração de piso do Model Armor com a sanitização do MCP ativada. Para mais informações, consulte Configurar as configurações mínimas do Model Armor.

Confira o exemplo de comando a seguir:

gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=TRUE \
--add-integrated-services=GOOGLE_MCP_SERVER \
--google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \
--enable-google-mcp-server-cloud-logging \
--malicious-uri-filter-settings-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'

Substitua PROJECT_ID pelo ID do projeto Google Cloud .

Observe as seguintes configurações:

  • INSPECT_AND_BLOCK: o tipo de restrição que inspeciona o conteúdo do servidor MCP do Google e bloqueia comandos e respostas que correspondem aos filtros.
  • ENABLED: a configuração que ativa um filtro ou uma aplicação.
  • MEDIUM_AND_ABOVE: o nível de confiança para as configurações do filtro de IA responsável - Perigoso. É possível modificar essa configuração, mas valores mais baixos podem resultar em mais falsos positivos. Para mais informações, consulte Níveis de confiança do Model Armor.

Desativar a verificação do tráfego do MCP com o Model Armor

Para impedir que o Model Armor verifique automaticamente o tráfego de e para os servidores MCP do Google com base nas configurações de piso do projeto, execute o seguinte comando:

gcloud model-armor floorsettings update \
  --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
  --remove-integrated-services=GOOGLE_MCP_SERVER

Substitua PROJECT_ID pelo ID do projeto do Google Cloud . O Model Armor não aplica automaticamente as regras definidas nas configurações de base desse projeto a nenhum tráfego de servidor MCP do Google.

As configurações de piso e gerais do Model Armor podem afetar mais do que apenas o MCP. Como o Model Armor se integra a serviços como a Vertex AI, qualquer alteração feita nas configurações de base pode afetar a verificação de tráfego e os comportamentos de segurança em todos os serviços integrados, não apenas no MCP.

Controlar o uso do MCP com políticas do IAM

As políticas de negação e permissão do Identity and Access Management (IAM) ajudam a proteger o Google Cloud e os servidores MCP do Google.

É possível combinar vários critérios para criar políticas personalizadas de segurança e governança, permitindo ou negando o acesso com base no seguinte:

  • O principal.
  • Propriedades da ferramenta, como o atributo somente leitura.
  • O nome do serviço ou da ferramenta.
  • O ID do cliente OAuth do aplicativo.

Para mais informações, consulte Controlar o uso do MCP com o Identity and Access Management.

A seguir