MCP Tools Reference: mapstools.googleapis.com

Ferramenta: compute_routes

Calcula um trajeto de viagem entre uma origem e um destino especificados. Modos de viagem aceitos:DRIVE (padrão), WALK.

Requisitos de entrada (CRÍTICO) : exige origem e destino. Cada um precisa ser fornecido usando um dos métodos a seguir, aninhado no respectivo campo:

  • address : (string, por exemplo, "Torre Eiffel, Paris"). Observação: quanto mais granular ou específico for o endereço de entrada, melhores serão os resultados.

  • lat_lng: : (objeto, {"latitude": número, "longitude": número})

  • place_id: : (string, por exemplo, "ChIJOwE_Id1w5EAR4Q27FkL6T_0"). Observação: esse ID pode ser extraído da ferramenta search_places. Qualquer combinação de tipos de entrada é permitida (por exemplo, origem por endereço, destino por lat_lng). Se a origem ou o destino estiverem ausentes, você PRECISA pedir esclarecimentos ao usuário antes de tentar chamar a ferramenta.

Exemplo de chamada de ferramenta : {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

  • A saída fundamentada precisa ser atribuída à origem usando as informações do campo attribution, quando disponível.

O exemplo a seguir demonstra como usar curl para invocar a ferramenta compute_routes do MCP.

Solicitação curl
                  
curl --location 'https://mapstools.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "compute_routes",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Esquema de entrada

ComputeRoutesRequest.

ComputeRoutesRequest

Representação JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "travelMode": enum (RouteTravelMode)
}
Campos
origin

object (Waypoint)

Obrigatório. Ponto de referência de origem.

destination

object (Waypoint)

Obrigatório. Ponto de referência de destino.

travelMode

enum (RouteTravelMode)

Opcional. Especifica o modo de transporte.

Waypoint

Representação JSON
{

  // Union field location_type can be only one of the following:
  "latLng": {
    object (LatLng)
  },
  "placeId": string,
  "address": string
  // End of list of possible types for union field location_type.
}
Campos
Campo de união location_type. Diferentes maneiras de representar um local. location_type pode ser apenas um dos seguintes:
latLng

object (LatLng)

Um ponto especificado usando coordenadas geográficas.

placeId

string

O ID de lugar associado ao ponto de referência.

address

string

Endereço legível ou um código plus. Consulte https://plus.codes para mais detalhes.

LatLng

Representação JSON
{
  "latitude": number,
  "longitude": number
}
Campos
latitude

number

A latitude em graus. Precisa estar no intervalo [-90,0, +90,0].

longitude

number

A longitude em graus. Precisa estar no intervalo [-180,0, +180,0].

RouteTravelMode

Um conjunto de valores usados para especificar o modo de viagem.

Tipos enumerados
ROUTE_TRAVEL_MODE_UNSPECIFIED Nenhum modo de viagem especificado. O valor padrão é DRIVE.
DRIVE Viagem de carro de passeio.
WALK Viagem a pé. OBSERVAÇÃO: as rotas WALK estão na versão Beta e, às vezes, podem não ter calçadas ou caminhos para pedestres claros. Você precisa mostrar esse aviso ao usuário para todas as caminhadas exibidas no seu app.

Esquema de saída

ComputeRoutesResponse.

ComputeRoutesResponse

Representação JSON
{
  "routes": [
    {
      object (Route)
    }
  ]
}
Campos
routes[]

object (Route)

Contém rotas entre a origem e o destino solicitados. No momento, apenas uma rota é retornada.

Rota

Representação JSON
{
  "distanceMeters": integer,
  "duration": string,
  "attribution": {
    object (Attribution)
  }
}
Campos
distanceMeters

integer

A distância de viagem da rota, em metros.

duration

string (Duration format)

O tempo necessário para navegar pela rota.

Duração em segundos com até nove dígitos fracionários, terminando em 's'. Exemplo: "3.5s".

attribution

object (Attribution)

Atribuição necessária para mostrar com a rota.

Duração

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Segundos assinados do período. Precisa estar entre -315.576.000.000 e +315.576.000.000. Observação: esses limites são calculados com base em: 60 segundos/minuto * 60 minutos/hora * 24 horas/dia * 365,25 dias/ano * 10.000 anos

nanos

integer

Frações assinadas de um segundo na resolução de nanossegundos do período. Durações menores que um segundo são representadas com um campo seconds de 0 e um campo nanos positivo ou negativo. Para durações de um segundo ou mais, um valor diferente de zero para o campo nanos precisa ter o mesmo sinal do campo seconds. Precisa estar entre -999.999.999 e +999.999.999.

Atribuição

Representação JSON
{
  "title": string,
  "url": string
}
Campos
title

string

O título a ser mostrado para a atribuição.

url

string

O URL do link para a atribuição.

Anotações de ferramentas

Dica destrutiva: ❌ | Dica idempotente: ❌ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌