Autenticar servidores MCP

Quando o agente precisa se conectar a um servidor ou ferramenta do MCP hospedado no Cloud Run, é possível proteger a conexão usando o Identity and Access Management e o Identity-Aware Proxy (IAP) integrados.

Se você estiver conectando um agente em execução no Cloud Run a um servidor do MCP no Cloud Run, consulte Autenticar seus agentes de IA para instruções sobre políticas run.invoker.

Ferramentas e clientes da CLI do desenvolvedor para o servidor MCP

Para conectar com segurança ferramentas de desenvolvedor, SDKs locais e clientes MCP genéricos a um servidor MCP particular hospedado no Cloud Run, recomendamos configurar o Identity-Aware Proxy.

Ativar o IAP

Ative o IAP para o serviço MCP do Cloud Run implantado:

gcloud run services update MCP_SERVICE_NAME \
    --iap \
    --region=REGION

Substitua:

  • MCP_SERVICE_NAME: o nome do serviço do servidor MCP.
  • REGION: a região em que o serviço está implantado.

Conceder acesso ao servidor MCP

Vincule a identidade do agente de chamada ou a identidade do usuário de um desenvolvedor ao papel de invocador do IAP no serviço de back-end:

gcloud iap web add-iam-policy-binding \
    --resource-type=cloud-run \
    --service=MCP_SERVICE_NAME \
    --member="PRINCIPAL" \
    --role="roles/iap.httpsResourceAccessor" \
    --region=REGION

Substitua:

  • MCP_SERVICE_NAME: o nome do serviço do servidor MCP.
  • PRINCIPAL: um identificador dos principais ou membros, que geralmente tem o seguinte formato: PRINCIPAL:ID. Por exemplo, user:my-user@example.com. Para ver uma lista completa dos valores que PRINCIPAL pode ter, consulte a referência de vinculação de políticas.
  • REGION: a região em que o serviço está implantado.

Configurar o acesso com o IAP

Por padrão, o IAP usa um cliente OAuth gerenciado pelo Google que oferece suporte apenas a logins de usuários baseados em navegador. Para permitir que ferramentas e agentes da CLI acessem o servidor MCP de maneira programática, é necessário configurar um ID do cliente OAuth personalizado.

  1. Crie um cliente OAuth no Google Cloud console em APIs e serviços > Credenciais. Anote o ID do cliente e a chave secreta do cliente.
    • Se você estiver configurando ferramentas de desenvolvedor locais, como a CLI do Antigravity, adicione http://localhost:7777/oauth/callback aos URLs de redirecionamento permitidos.
  2. Adicione o cliente OAuth à lista de permissões para acesso programático nas suas configurações do IAP seguindo o guia Compartilhar clientes OAuth.

Atualizar as configurações do cliente para se conectar

Depois de configurar o acesso programático, atualize a configuração do cliente para fornecer os detalhes da conexão e as credenciais do ID do cliente OAuth personalizado.

Por exemplo, para configurar uma ferramenta como a CLI do Antigravity para se conectar ao servidor MCP protegido, atualize o bloco mcpServers nas configurações:

{
  "mcpServers": {
    "my-mcp-server": {
      "httpUrl": "https://my-mcp-server-<PROJECT_NUMBER>.<REGION>.run.app",
      "oauth": {
        "enabled": "true",
        "clientId": "YOUR_CUSTOM_OAUTH_CLIENT_ID",
        "clientSecret": "YOUR_CLIENT_SECRET",
        "scopes": [
          "email",
          "openid"
        ],
        "redirectUri": "http://localhost:7777/oauth/callback"
      }
    }
  }
}