Com os servidores MCP, é possível acessar e executar ferramentas para criar, gerenciar e consultar recursos doGoogle Cloud usando plataformas de agentes de IA. Este documento descreve como se conectar a servidores remotos do Protocolo de Contexto de Modelo (MCP) usando a extensão do Kit de Agente de Dados do Google Cloud para Visual Studio Code. Google Cloud
Servidores MCP compatíveis
Os seguintes servidores MCP remotos são compatíveis com o trabalho na extensão Data Agent Kit para VS Code. Para detalhes específicos do produto, consulte estes guias:
- Usar o servidor MCP remoto do AlloyDB para PostgreSQL
- Usar o servidor MCP do BigQuery
- Usar o servidor MCP remoto do Cloud SQL
- Usar o servidor MCP remoto do Knowledge Catalog
- Usar o servidor MCP do Serviço Gerenciado para Apache Spark
- Usar o servidor MCP remoto do Spanner
Um servidor MCP remoto é ativado quando você ativa a API correspondente. Por exemplo, quando você ativa a API Spanner no seu projeto, o MCP remoto do Spanner é ativado automaticamente.
Google Cloud servidores MCP remotos
O Google e os servidores MCP remotos 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
- Registro de auditoria centralizado
Para informações sobre outros servidores MCP e 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.
O padrã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. Com os servidores do MCP, você pode usar 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 executados na máquina local e usam os fluxos de entrada e saída padrão (stdio) para comunicação entre serviços no mesmo dispositivo.
- Servidores MCP remotos
- Executar na infraestrutura do serviço e oferecer um endpoint HTTP para aplicativos de IA para comunicação entre o cliente MCP de IA e o servidor MCP. Para mais informações sobre a arquitetura do MCP, consulte Arquitetura do MCP.
Antes de começar
- Instale a extensão do Data Agent Kit para VS Code.
- Configure a extensão. Não se esqueça de ativar todas as APIs.
Funções exigidas
Para receber as permissões necessárias para acessar os servidores Google Cloud MCP do seu IDE, peça ao administrador para conceder a você o papel do IAM de usuário da ferramenta MCP (roles/mcp.toolUser) no projeto em que você está trabalhando.
Dependendo dos recursos que você planeja acessar, talvez sejam necessários outros papéis além daqueles que permitem usar a extensão. Para conferir as funções mínimas necessárias para acessar servidores MCP remotos em cada serviço Google Cloudcompatível, consulte os guias específicos do produto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Identidade temporária de conta de serviço
Ao se conectar aos servidores do MCP pela extensão Data Agent Kit para VS Code, é possível usar suas credenciais de usuário ou a representação de conta de serviço. Recomendamos usar a identidade temporária de conta de serviço para a CLI gcloud e as credenciais padrão do aplicativo (ADC) ao se conectar aos servidores do MCP.
Isso envolve começar com as credenciais usadas para fazer login no Google Cloud e na CLI gcloud no VS Code, geralmente sua conta de usuário. Em seguida, solicite credenciais de curta duração para sua conta de serviço e use essas credenciais em vez das suas credenciais de usuário. Para mais informações, consulte Usar a identidade temporária de conta de serviço.
Para orientações sobre como usar a identidade temporária de conta de serviço para autenticar em servidores do MCP, consulte Identidade temporária de conta de serviço.
Autenticação e autorização
Conclua as etapas de autenticação e autorização a seguir. Para mais informações sobre a autorização da Conta do Google, consulte Como usar o OAuth 2.0 para acessar as APIs do Google.Iniciar o processo de autenticação no ambiente de desenvolvimento integrado
Para começar o processo, envie um comando para o chat autônomo no ambiente de desenvolvimento integrado.
- Se o painel de chat não aparecer, abra a paleta de comandos pressionando Cmd/Ctrl+Shift+P, pesquise e execute Abrir chat.
No painel de chat, envie o seguinte comando:
list BigQuery datasets using mcp serverO agente propõe o seguinte comando da CLI gcloud:
gcloud config get-value projectClique em Permitir.
Uma caixa de diálogo vai aparecer perguntando se você quer fornecer um ID do cliente.
Clique em Copiar URIs e continuar.
A paleta de comandos é aberta e pede um ID do cliente OAuth.
Receber o ID do cliente OAuth
Em seguida, obtenha o ID do cliente OAuth no console Google Cloud .
- No navegador, abra o console doGoogle Cloud .
- Clique em Selecionar um projeto.
- Selecione o mesmo projeto que você está usando na extensão Data Agent Kit para VS Code.
- No menu de navegação da API, clique em Credenciais.
- Em IDs do cliente OAuth 2.0, clique no ID do cliente que você quer usar.
- No painel de detalhes, em Informações adicionais, encontre e copie o valor de ID do cliente.
Fornecer credenciais ao VS Code
Insira o ID e a chave secreta do cliente na IDE.
- Volte para o VS Code.
- Cole o ID do cliente na caixa de diálogo Adicionar detalhes de registro do cliente.
- Pressione Enter.
- Volte ao console e copie o valor de Chave secreta do cliente.
- Volte para o VS Code.
Cole a chave secreta do cliente na caixa de diálogo Adicionar detalhes de registro do cliente e pressione Enter.
O agente continua sendo executado, e uma caixa de diálogo aparece informando que o servidor MCP quer fazer a autenticação.
Clique em Permitir.
Se você receber uma solicitação para fazer login na sua Conta do Google de novo, siga as instruções e volte para a IDE.
O agente recebe os conjuntos de dados do BigQuery solicitados do servidor MCP e mostra a lista.
Configure Google Cloud servidores MCP remotos na extensão
Usando ferramentas de agente na IDE, você pode instanciar um cliente do MCP que se conecta a um único servidor do MCP. É possível ter vários clientes que se conectam a servidores MCP diferentes. Para se conectar a um servidor MCP remoto, o cliente MCP precisa saber, no mínimo, o URL do servidor MCP remoto.
Para cada cliente, use o seguinte conforme necessário.
- Nome do servidor: SERVER_NAME
- Endpoint: ENDPOINT
- Transporte: HTTP
- Detalhes da autenticação: dependendo de como você quer autenticar, é possível inserir suas Google Cloud credenciais, o ID e a chave secreta do cliente OAuth ou uma identidade e credenciais do agente.
- Para mais informações sobre autenticação, consulte Autenticar em servidores do MCP.
- Para detalhes de autenticação de cada serviço compatível, consulte os guias específicos do produto.
- Escopo do OAuth: o escopo do OAuth 2.0 que você quer usar ao se conectar ao servidor do MCP do AlloyDB.
Substitua SERVER_NAME e ENDPOINT pelos valores
do serviço a que você está se conectando. Para o AlloyDB,
especifique uma região, como us-east4.
Serviço |
Nome do servidor |
Endpoint |
AlloyDB |
Servidor MCP do AlloyDB |
https://alloydb.REGION.rep.googleapis.com/mcp |
BigQuery |
Servidor MCP do BigQuery |
https://bigquery.googleapis.com/mcp |
Cloud SQL |
Servidor MCP do Cloud SQL |
https://sqladmin.googleapis.com/mcp |
Knowledge Catalog |
Servidor MCP do Knowledge Catalog |
https://dataplex.googleapis.com/mcp |
Serviço Gerenciado para Apache Spark |
Servidor MCP do Serviço Gerenciado para Apache Spark |
https://dataproc-us-central1.googleapis.com/mcp |
Spanner |
Servidor MCP do Spanner |
https://spanner.googleapis.com/mcp |
Configurações do MCP para a caixa de ferramentas e servidores MCP remotos
Use as configurações a seguir para cada serviço do Google Cloud Data Agent Kit a que você quer se conectar.
AlloyDB
Remoto
'alloydb': {
remote: {
vscode: {
'datacloud_alloydb_remote': {
type: 'http',
url: 'https://alloydb.REGION.rep.googleapis.com/mcp',
authProviderType: 'google_credentials',
oauth: {
scopes: ['https://www.googleapis.com/auth/cloud-platform'],
},
},
Local
'datacloud_alloydb-postgres-admin_toolbox': {
'$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
'command': 'npx',
'args': [
'-y',
'@toolbox-sdk/server@>=1.1.0',
'--prebuilt',
'alloydb-postgres-admin',
'--stdio'
],
'env': {},
},
'datacloud_alloydb-postgres_toolbox': {
'$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
'command': 'npx',
'args': [
'-y',
'@toolbox-sdk/server@>=1.1.0',
'--prebuilt',
'alloydb-postgres',
'--stdio'
],
'env': {
'ALLOYDB_POSTGRES_CLUSTER': '',
'ALLOYDB_POSTGRES_DATABASE': '',
'ALLOYDB_POSTGRES_INSTANCE': '',
'ALLOYDB_POSTGRES_IP_TYPE': '',
'ALLOYDB_POSTGRES_PASSWORD': '',
'ALLOYDB_POSTGRES_PROJECT': '',
'ALLOYDB_POSTGRES_REGION': '',
'ALLOYDB_POSTGRES_USER': '',
},
},
BigQuery
Remoto
'datacloud_bigquery_remote': {
type: 'http',
url: 'https://bigquery.googleapis.com/mcp',
authProviderType: 'google_credentials',
oauth: {
scopes: [
'https://www.googleapis.com/auth/bigquery',
'https://www.googleapis.com/auth/cloud-platform',
],
},
},
Local
'datacloud_bigquery_toolbox': {
command: 'npx',
args: [
'-y',
'@toolbox-sdk/server@>=1.1.0',
'--prebuilt',
'bigquery',
'--stdio'
],
env: {
'BIGQUERY_LOCATION': '',
'BIGQUERY_PROJECT': '',
},
},
Cloud SQL
Remoto
'datacloud_cloud-sql_remote': {
type: 'http',
url: 'https://sqladmin.googleapis.com/mcp',
authProviderType: 'google_credentials',
oauth: {
scopes: ['https://www.googleapis.com/auth/cloud-platform'],
},
},
Local
'datacloud_cloud-sql-postgresql-admin_toolbox': {
'$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
'command': 'npx',
'args': [
'-y',
'@toolbox-sdk/server@>=1.1.0',
'--prebuilt',
'cloud-sql-postgres-admin',
'--stdio'
],
'env': {},
},
'datacloud_cloud-sql-postgresql_toolbox': {
'$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
'command': 'npx',
'args': [
'-y',
'@toolbox-sdk/server@>=1.1.0',
'--prebuilt',
'cloud-sql-postgres',
'--stdio'
],
'env': {
'CLOUD_SQL_POSTGRES_DATABASE': '',
'CLOUD_SQL_POSTGRES_INSTANCE': '',
'CLOUD_SQL_POSTGRES_IP_TYPE': '',
'CLOUD_SQL_POSTGRES_PASSWORD': '',
'CLOUD_SQL_POSTGRES_PROJECT': '',
'CLOUD_SQL_POSTGRES_REGION': '',
'CLOUD_SQL_POSTGRES_USER': '',
},
},
Knowledge Catalog
Remoto
'datacloud_knowledge_catalog_remote': {
type: 'http',
url: 'https://dataplex.googleapis.com/mcp',
authProviderType: 'google_credentials',
oauth: {
scopes: ['https://www.googleapis.com/auth/cloud-platform'],
},
Local
'datacloud_knowledge_catalog_toolbox': {
'$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
'command': 'npx',
'args': [
'-y',
'@toolbox-sdk/server@>=1.1.0',
'--prebuilt',
'dataplex',
'--stdio'
],
'env': {
'DATAPLEX_PROJECT': '${PROJECT_ID}',
}
Serviço Gerenciado para Apache Spark
Remoto
'datacloud_managed_apache_spark_remote': {
type: 'http',
url: 'https://dataproc-${REGION}.googleapis.com/mcp',
authProviderType: 'google_credentials',
oauth: {
scopes: ['https://www.googleapis.com/auth/dataproc'],
},
},
Local
'datacloud_managed_apache_spark_toolbox': {
'$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
'command': 'npx',
'args': [
'-y',
TOOLBOX_VERSION,
'--prebuilt',
'dataproc',
'--stdio',
'--user-agent-metadata',
'google-cloud-data-agent-kit-${IDE_TYPE}',
],
'env': {
'DATAPROC_PROJECT': '${PROJECT_ID}',
'DATAPROC_REGION': '${REGION}',
},
},
'datacloud_serverless-spark_toolbox': {
'$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
'command': 'npx',
'args': [
'-y',
TOOLBOX_VERSION,
'--prebuilt',
'serverless-spark',
'--stdio',
'--user-agent-metadata',
'google-cloud-data-agent-kit-${IDE_TYPE}',
],
'env': {
'SERVERLESS_SPARK_PROJECT': '${PROJECT_ID}',
'SERVERLESS_SPARK_LOCATION': '${REGION}',
},
},
Spanner
Remoto
'datacloud_spanner_remote': {
type: 'http',
url: 'https://spanner.googleapis.com/mcp',
authProviderType: 'google_credentials',
oauth: {
scopes: [
'https://www.googleapis.com/auth/spanner.admin',
'https://www.googleapis.com/auth/spanner.data',
],
},
},
Local
'datacloud_spanner_toolbox': {
'$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
'command': 'npx',
'args': [
'-y',
'@toolbox-sdk/server@>=1.1.0',
'--prebuilt',
'spanner',
'--stdio'
],
'env': {
'SPANNER_DATABASE': '',
'SPANNER_DIALECT': '',
'SPANNER_INSTANCE': '',
'SPANNER_PROJECT': '',
},
},
Configurações opcionais de segurança
A MCP apresenta novos riscos e considerações de segurança devido à grande variedade de ações que podem ser realizadas com as ferramentas dela. Para minimizar e gerenciar esses riscos, o Google Cloud oferece configurações padrão e políticas personalizáveis para controlar o uso das ferramentas do MCP na sua organização ou projeto do Google Cloud.
Para mais informações sobre segurança e governança do MCP, consulte Segurança e proteção de IA.
Usar o Model Armor
O Model Armor é um Google Cloud serviço projetado para aumentar a segurança dos seus aplicativos de IA. Ele funciona examinando de forma proativa os comandos e respostas do LLM, protegendo contra vários riscos e apoiando práticas de IA responsável. Se você estiver implantando IA no seu ambiente de nuvem ou em provedores de nuvem externos, o Model Armor pode ajudar a evitar entradas mal-intencionadas, verificar a segurança do conteúdo, proteger dados sensíveis, manter a conformidade e aplicar suas políticas de segurança e proteção de IA de maneira consistente em todo o cenário diversificado 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 seus registros.
Ativar o Model Armor
É necessário ativar as APIs do Model Armor antes de usar o Model Armor.
Console
Ativar a API Model Armor.
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter o papel do IAM de administrador de uso do serviço (
roles/serviceusage.serviceUsageAdmin), que contém a permissãoserviceusage.services.enable. Saiba como conceder papéis.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:
No console do Google Cloud , ative o Cloud Shell.
Na parte de baixo do console 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.
-
Execute o comando a seguir para definir o endpoint de API do serviço Model Armor.
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"
Substitua
LOCATIONpela região em que você quer usar o Model Armor.
Configurar a proteção para servidores MCP remotos e do Google Google Cloud
Para proteger as chamadas e respostas da ferramenta MCP, use as configurações mínimas do Model Armor. Uma configuração mínima define os filtros de segurança mínimos que se aplicam a todo o projeto. Essa configuração aplica um conjunto consistente de filtros a todas as chamadas e respostas da ferramenta MCP no projeto.
Configurar um valor mínimo do Model Armor com a limpeza da MCP ativada. Para mais informações, consulte Configurar 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 aplicação que inspeciona o conteúdo do servidor MCP do Google e bloqueia solicitações e respostas que correspondem aos filtros.ENABLED: a configuração que ativa um filtro ou uma restrição.MEDIUM_AND_ABOVE: o nível de confiança das 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 do Google MCP com base nas configurações mínimas 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
Google Cloud ID do projeto. O Model Armor não aplica automaticamente as regras definidas nas configurações de limite mínimo deste projeto ao tráfego de qualquer servidor MCP do Google.
As configurações mínimas e a configuração geral do Model Armor podem afetar mais do que apenas o MCP. Como o Model Armor se integra a serviços como a Vertex AI, as mudanças feitas nas configurações mínimas podem 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 de negação do IAM
As políticas de negação do Identity and Access Management (IAM) ajudam a proteger Google Cloud servidores MCP remotos. Configure essas políticas para bloquear o acesso indesejado às ferramentas do MCP.
Por exemplo, é possível negar ou permitir o acesso com base em:
- O diretor
- Propriedades da ferramenta, como somente leitura
- O ID do cliente OAuth do aplicativo
Para mais informações, consulte Controlar o uso do MCP com o Identity and Access Management.
Resolver problemas
Para encontrar métodos de diagnóstico e resolução de erros da extensão do Data Agent Kit para VS Code, consulte Solução de problemas da extensão do Data Agent Kit para VS Code.