MCP Tools Reference: mapstools.googleapis.com

Strumento: lookup_weather

Recupera dati meteo completi, tra cui condizioni attuali, previsioni orarie e giornaliere. Dati specifici disponibili: temperatura (attuale, percepita, massima/minima, indice di calore), vento (velocità, raffiche, direzione), eventi celesti (alba/tramonto, fase lunare), precipitazioni (tipo, probabilità, quantità/QPF), condizioni atmosferiche (indice UV, umidità, copertura nuvolosa, probabilità di temporali) e indirizzo della località geocodificata. Posizione e regole di localizzazione (CRITICO): la posizione per cui vengono richiesti i dati meteo è specificata utilizzando il campo "location". Questo campo è una struttura "oneof", il che significa che DEVI fornire un valore per SOLO UNO dei tre sottocampi di posizione riportati di seguito per garantire una ricerca accurata dei dati meteo. 1. Coordinate geografiche (lat_lng) * Utilizzale quando ti vengono fornite coordinate di latitudine/longitudine esatte. * Esempio: "lat_lng": { "latitude": 34.0522, "longitude": -118.2437 } // Los Angeles 2. ID luogo (place_id) * Un identificatore di stringa univoco (ID luogo di Google Maps). * Il place_id può essere recuperato dallo strumento search_places. * Esempio: "place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0" // Eiffel Tower 3. Stringa indirizzo (indirizzo) * Una stringa in formato libero che richiede specificità per la geocodifica. * Città e regione: includi sempre la regione/il paese (ad es. "Londra, Regno Unito", non "Londra"). * Indirizzo: fornisci l'indirizzo completo (ad es. "1600 Pennsylvania Ave NW, Washington, DC"). * Codici postali: DEVONO essere accompagnati dal nome di un paese (ad es. "90210, USA", NON "90210"). Modalità di utilizzo: 1. Meteo attuale:fornisci solo address. Non specificare date e hour. 2. Previsione oraria: fornisci address, date e hour (0-23). Utilizzare per orari specifici (ad es. "alle 17:00") o termini come "nelle prossime ore" o "più tardi oggi". Se l'utente specifica i minuti, arrotonda per difetto all'ora più vicina. Non è supportata la previsione oraria oltre le 48 ore successive. 3. Previsione giornaliera:fornisci address e date. Non specificare hour. Utilizza per richieste generiche di giorni (ad es. "meteo di domani", "meteo di venerdì", "meteo del 25 dicembre". Se la data odierna non è nel contesto, devi chiarirla con l'utente. La previsione giornaliera oltre i 7 giorni, incluso il giorno corrente, non è supportata. Il meteo storico non è supportato. Vincoli dei parametri: * Fusi orari: tutti gli input date e hour devono essere relativi al fuso orario locale della sede, non a quello dell'utente. * Formato data:gli input devono essere separati in {year, month, day} numeri interi. * Unità:il valore predefinito è METRIC. Imposta units_system su IMPERIAL per Fahrenheit/Miglia se l'utente fa riferimento agli standard statunitensi o lo richiede esplicitamente.

Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP lookup_weather.

Curl Request
                  
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": "lookup_weather",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schema di input

Richiesta del metodo LookupWeather, che rappresenta le condizioni meteo nella località richiesta.

LookupWeatherRequest

Rappresentazione JSON
{
  "DEPRECATEDAddress": string,
  "unitsSystem": enum (UnitsSystem),
  "location": {
    object (Location)
  },

  // Union field _date can be only one of the following:
  "date": {
    object (google.type.Date)
  }
  // End of list of possible types for union field _date.

  // Union field _hour can be only one of the following:
  "hour": integer
  // End of list of possible types for union field _hour.
}
Campi
DEPRECATEDAddress
(deprecated)

string

DEPRECATO: utilizza la posizione.

unitsSystem

enum (UnitsSystem)

Facoltativo. Il sistema di unità da utilizzare per le condizioni meteo restituite. Se non viene fornito, le condizioni meteo restituite saranno nel sistema metrico (valore predefinito = METRIC).

location

object (Location)

Obbligatorio. La località per cui ottenere le condizioni meteo.

Campo unione _date.

_date può essere solo uno dei seguenti tipi:

date

object (google.type.Date)

Facoltativo. La data delle informazioni meteo richieste. Nota: questa data è relativa al fuso orario locale della località specificata nel campo della località. La data deve essere compresa nei 7 giorni successivi.

Campo unione _hour.

_hour può essere solo uno dei seguenti tipi:

hour

integer

Facoltativo. L'ora delle informazioni meteo richieste, in formato 24 ore (0-23). Questo valore è relativo al fuso orario locale della posizione specificata nel campo della posizione. La previsione oraria è supportata solo per le prossime 48 ore a partire dall'ora attuale.

Data

Rappresentazione JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
Campi
year

integer

L'anno della data. Deve essere compreso tra 1 e 9999 o tra 0 e 9999 per specificare una data senza anno.

month

integer

Mese dell'anno. Deve essere compreso tra 1 e 12 o 0 per specificare un anno senza mese e giorno.

day

integer

Giorno del mese. Deve essere compreso tra 1 e 31 e valido per l'anno e il mese oppure compreso tra 0 e 31 per specificare un anno da solo o un anno e un mese in cui il giorno non è significativo.

Località

Rappresentazione JSON
{

  // Union field location_type can be only one of the following:
  "latLng": {
    object (google.type.LatLng)
  },
  "placeId": string,
  "address": string
  // End of list of possible types for union field location_type.
}
Campi
Campo unione location_type. Diversi modi per rappresentare una località. location_type può essere solo uno dei seguenti tipi:
latLng

object (google.type.LatLng)

Un punto specificato utilizzando le coordinate geografiche.

placeId

string

L'ID luogo associato alla posizione .

address

string

Indirizzo leggibile o un plus code. Per maggiori dettagli, visita la pagina https://plus.codes.

LatLng

Rappresentazione JSON
{
  "latitude": number,
  "longitude": number
}
Campi
latitude

number

La latitudine in gradi. Deve essere compresa nell'intervallo [-90,0, +90,0].

longitude

number

La longitudine in gradi. Deve essere compreso nell'intervallo [-180.0, +180.0].

Schema di output

Risposta per l'RPC LookupWeather, che rappresenta le condizioni meteo nella località richiesta.

Questa risposta rappresenta informazioni orarie e giornaliere, pertanto è suddivisa in tre sezioni: oraria, giornaliera e condivisa. I campi Solo orario e Solo giornaliero sono contrassegnati come facoltativi. Per i campi condivisi tra le informazioni orarie e giornaliere, alcuni sono sempre presenti, quindi non sono contrassegnati come facoltativi, mentre gli altri sono contrassegnati come facoltativi perché non sono sempre disponibili.

LookupWeatherResponse

Rappresentazione JSON
{
  "weatherCondition": {
    object (WeatherCondition)
  },
  "precipitation": {
    object (Precipitation)
  },
  "wind": {
    object (Wind)
  },
  "DEPRECATEDGeocodedAddress": string,
  "returnedLocation": {
    object (Location)
  },

  // Union field _temperature can be only one of the following:
  "temperature": {
    object (Temperature)
  }
  // End of list of possible types for union field _temperature.

  // Union field _feels_like_temperature can be only one of the following:
  "feelsLikeTemperature": {
    object (Temperature)
  }
  // End of list of possible types for union field _feels_like_temperature.

  // Union field _heat_index can be only one of the following:
  "heatIndex": {
    object (Temperature)
  }
  // End of list of possible types for union field _heat_index.

  // Union field _air_pressure can be only one of the following:
  "airPressure": {
    object (AirPressure)
  }
  // End of list of possible types for union field _air_pressure.

  // Union field _max_temperature can be only one of the following:
  "maxTemperature": {
    object (Temperature)
  }
  // End of list of possible types for union field _max_temperature.

  // Union field _min_temperature can be only one of the following:
  "minTemperature": {
    object (Temperature)
  }
  // End of list of possible types for union field _min_temperature.

  // Union field _feels_like_max_temperature can be only one of the following:
  "feelsLikeMaxTemperature": {
    object (Temperature)
  }
  // End of list of possible types for union field _feels_like_max_temperature.

  // Union field _feels_like_min_temperature can be only one of the following:
  "feelsLikeMinTemperature": {
    object (Temperature)
  }
  // End of list of possible types for union field _feels_like_min_temperature.

  // Union field _max_heat_index can be only one of the following:
  "maxHeatIndex": {
    object (Temperature)
  }
  // End of list of possible types for union field _max_heat_index.

  // Union field _sun_events can be only one of the following:
  "sunEvents": {
    object (SunEvents)
  }
  // End of list of possible types for union field _sun_events.

  // Union field _moon_events can be only one of the following:
  "moonEvents": {
    object (MoonEvents)
  }
  // End of list of possible types for union field _moon_events.

  // Union field _relative_humidity can be only one of the following:
  "relativeHumidity": integer
  // End of list of possible types for union field _relative_humidity.

  // Union field _uv_index can be only one of the following:
  "uvIndex": integer
  // End of list of possible types for union field _uv_index.

  // Union field _thunderstorm_probability can be only one of the following:
  "thunderstormProbability": integer
  // End of list of possible types for union field _thunderstorm_probability.

  // Union field _cloud_cover can be only one of the following:
  "cloudCover": integer
  // End of list of possible types for union field _cloud_cover.
}
Campi
weatherCondition

object (WeatherCondition)

Condizione meteo

precipitation

object (Precipitation)

La probabilità di precipitazioni e la quantità di precipitazioni accumulate

wind

object (Wind)

Condizioni del vento

DEPRECATEDGeocodedAddress
(deprecated)

string

DEPRECATO: utilizza returned_location.

returnedLocation

object (Location)

Obbligatorio. La località per cui vengono restituite le informazioni meteo. Questa posizione è identica a quella nella richiesta, ma può essere diversa se la posizione richiesta è un indirizzo di testo libero che cerca una posizione approssimativa (ad es. "Mountain View, CA").

Campo unione _temperature.

_temperature può essere solo uno dei seguenti tipi:

temperature

object (Temperature)

La temperatura oraria

Campo unione _feels_like_temperature.

_feels_like_temperature può essere solo uno dei seguenti tipi:

feelsLikeTemperature

object (Temperature)

La misurazione oraria della temperatura percepita.

Campo unione _heat_index.

_heat_index può essere solo uno dei seguenti tipi:

heatIndex

object (Temperature)

La temperatura oraria dell'indice di calore.

Campo unione _air_pressure.

_air_pressure può essere solo uno dei seguenti tipi:

airPressure

object (AirPressure)

Le condizioni di pressione atmosferica oraria.

Campo unione _max_temperature.

_max_temperature può essere solo uno dei seguenti tipi:

maxTemperature

object (Temperature)

La temperatura massima (alta) durante la giornata.

Campo unione _min_temperature.

_min_temperature può essere solo uno dei seguenti tipi:

minTemperature

object (Temperature)

La temperatura minima (bassa) durante il giorno.

Campo unione _feels_like_max_temperature.

_feels_like_max_temperature può essere solo uno dei seguenti tipi:

feelsLikeMaxTemperature

object (Temperature)

La temperatura percepita massima (alta) durante la giornata.

Campo unione _feels_like_min_temperature.

_feels_like_min_temperature può essere solo uno dei seguenti tipi:

feelsLikeMinTemperature

object (Temperature)

La temperatura percepita minima (bassa) durante il giorno.

Campo unione _max_heat_index.

_max_heat_index può essere solo uno dei seguenti tipi:

maxHeatIndex

object (Temperature)

La temperatura massima dell'indice di calore durante la giornata.

Campo unione _sun_events.

_sun_events può essere solo uno dei seguenti tipi:

sunEvents

object (SunEvents)

Gli eventi relativi al sole (ad es. alba, tramonto).

Campo unione _moon_events.

_moon_events può essere solo uno dei seguenti tipi:

moonEvents

object (MoonEvents)

Gli eventi relativi alla luna (ad es. sorgere della luna, tramonto della luna).

Campo unione _relative_humidity.

_relative_humidity può essere solo uno dei seguenti tipi:

relativeHumidity

integer

La percentuale di umidità relativa (valori da 0 a 100). Definisci facoltativo perché non è sempre disponibile

Campo unione _uv_index.

_uv_index può essere solo uno dei seguenti tipi:

uvIndex

integer

L'indice ultravioletto (UV) massimo. Definisci facoltativo perché non è sempre disponibile

Campo unione _thunderstorm_probability.

_thunderstorm_probability può essere solo uno dei seguenti tipi:

thunderstormProbability

integer

La probabilità di temporale (valori da 0 a 100). Definisci facoltativo perché non è sempre disponibile

Campo unione _cloud_cover.

_cloud_cover può essere solo uno dei seguenti tipi:

cloudCover

integer

La percentuale di cielo coperto da nuvole (valori da 0 a 100). Definisci facoltativo perché non è sempre disponibile

Temperatura

Rappresentazione JSON
{
  "unit": enum (TemperatureUnit),

  // Union field _degrees can be only one of the following:
  "degrees": number
  // End of list of possible types for union field _degrees.
}
Campi
unit

enum (TemperatureUnit)

Il codice dell'unità utilizzata per misurare il valore della temperatura.

Campo unione _degrees.

_degrees può essere solo uno dei seguenti tipi:

degrees

number

Il valore della temperatura (in gradi) nell'unità specificata.

AirPressure

Rappresentazione JSON
{

  // Union field _mean_sea_level_millibars can be only one of the following:
  "meanSeaLevelMillibars": number
  // End of list of possible types for union field _mean_sea_level_millibars.
}
Campi

Campo unione _mean_sea_level_millibars.

_mean_sea_level_millibars può essere solo uno dei seguenti tipi:

meanSeaLevelMillibars

number

La pressione atmosferica media al livello del mare in millibar.

SunEvents

Rappresentazione JSON
{
  "sunriseTime": string,
  "sunsetTime": string
}
Campi
sunriseTime

string (Timestamp format)

L'ora in cui sorge il sole.

NOTA: in alcuni casi unici (ad es. a nord del circolo polare artico) potrebbe non esserci l'ora dell'alba per un giorno. In questi casi, questo campo non verrà impostato.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

sunsetTime

string (Timestamp format)

L'ora in cui tramonta il sole.

NOTA: in alcuni casi unici (ad es. a nord del circolo polare artico) potrebbe non esserci un orario del tramonto per un giorno. In questi casi, questo campo non verrà impostato.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi di tempo UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

MoonEvents

Rappresentazione JSON
{
  "moonriseTimes": [
    string
  ],
  "moonsetTimes": [
    string
  ],
  "moonPhase": enum (MoonPhase)
}
Campi
moonriseTimes[]

string (Timestamp format)

Il momento in cui il bordo superiore della luna appare sopra l'orizzonte (vedi https://en.wikipedia.org/wiki/Moonrise_and_moonset).

NOTA: nella maggior parte dei casi, ci sarà un solo orario di levata della luna al giorno. In altri casi, l'elenco potrebbe essere vuoto (ad es. quando la luna sorge dopo la mezzanotte del giorno successivo). Tuttavia, in casi unici (ad es. nelle regioni polari), l'elenco può contenere più di un valore. In questi casi, i valori vengono ordinati in ordine crescente.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

moonsetTimes[]

string (Timestamp format)

Il momento in cui il bordo superiore della luna scompare sotto l'orizzonte (vedi https://en.wikipedia.org/wiki/Moonrise_and_moonset).

NOTA: nella maggior parte dei casi, ci sarà un solo orario di tramonto della luna al giorno. In altri casi, l'elenco potrebbe essere vuoto (ad es. quando la luna tramonta dopo la mezzanotte del giorno successivo). Tuttavia, in casi unici (ad es. nelle regioni polari), l'elenco può contenere più di un valore. In questi casi, i valori vengono ordinati in ordine crescente.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

moonPhase

enum (MoonPhase)

La fase lunare.

WeatherCondition

Rappresentazione JSON
{
  "iconBaseUri": string,
  "description": {
    object (google.type.LocalizedText)
  },
  "type": enum (Type)
}
Campi
iconBaseUri

string

L'URI di base per l'icona, esclusa l'estensione del tipo di file. Per visualizzare l'icona, aggiungi un tema, se vuoi, e l'estensione del tipo di file (.png o .svg) a questo URI. Per impostazione predefinita, l'icona ha un tema chiaro, ma è possibile aggiungere _dark per la modalità Buio. Ad esempio: "https://maps.gstatic.com/weather/v1/dust.svg" o "https://maps.gstatic.com/weather/v1/dust_dark.svg", dove icon_base_uri è "https://maps.gstatic.com/weather/v1/dust".

description

object (google.type.LocalizedText)

La descrizione testuale di questa condizione meteo (localizzata).

type

enum (Type)

Il tipo di condizione meteo.

LocalizedText

Rappresentazione JSON
{
  "text": string,
  "languageCode": string
}
Campi
text

string

Stringa localizzata nella lingua corrispondente a google.type.LocalizedText.language_code di seguito.

languageCode

string

Il codice lingua BCP-47 del testo, ad esempio "en-US" o "sr-Latn".

Per ulteriori informazioni, visita la pagina http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.

Precipitazioni

Rappresentazione JSON
{
  "probability": {
    object (PrecipitationProbability)
  },
  "snowQpf": {
    object (QuantitativePrecipitationForecast)
  },
  "qpf": {
    object (QuantitativePrecipitationForecast)
  }
}
Campi
probability

object (PrecipitationProbability)

La probabilità di precipitazioni (valori da 0 a 100).

snowQpf

object (QuantitativePrecipitationForecast)

La quantità di neve, misurata come equivalente di acqua liquida, che si è accumulata in un determinato periodo di tempo. Nota: QPF è l'abbreviazione di Previsione quantitativa delle precipitazioni (per maggiori dettagli, consulta la definizione di Previsione quantitativa delle precipitazioni).

qpf

object (QuantitativePrecipitationForecast)

La quantità di precipitazioni piovose, misurata come equivalente di acqua liquida, che si è accumulata in un periodo di tempo. Nota: QPF è l'abbreviazione di Previsione quantitativa delle precipitazioni (per maggiori dettagli, consulta la definizione di Previsione quantitativa delle precipitazioni).

PrecipitationProbability

Rappresentazione JSON
{
  "type": enum (PrecipitationType),

  // Union field _percent can be only one of the following:
  "percent": integer
  // End of list of possible types for union field _percent.
}
Campi
type

enum (PrecipitationType)

Un codice che indica il tipo di precipitazione.

Campo unione _percent.

_percent può essere solo uno dei seguenti tipi:

percent

integer

Una percentuale compresa tra 0 e 100 che indica le probabilità di precipitazioni.

QuantitativePrecipitationForecast

Rappresentazione JSON
{
  "unit": enum (Unit),

  // Union field _quantity can be only one of the following:
  "quantity": number
  // End of list of possible types for union field _quantity.
}
Campi
unit

enum (Unit)

Il codice dell'unità utilizzata per misurare la quantità di precipitazioni accumulate.

Campo unione _quantity.

_quantity può essere solo uno dei seguenti tipi:

quantity

number

La quantità di precipitazioni, misurata come equivalente di acqua liquida, che si è accumulata in un determinato periodo di tempo.

Wind

Rappresentazione JSON
{
  "direction": {
    object (WindDirection)
  },
  "speed": {
    object (WindSpeed)
  },
  "gust": {
    object (WindSpeed)
  }
}
Campi
direction

object (WindDirection)

La direzione del vento, l'angolo da cui proviene.

speed

object (WindSpeed)

La velocità del vento.

gust

object (WindSpeed)

La raffica di vento (aumento improvviso della velocità del vento).

WindDirection

Rappresentazione JSON
{
  "cardinal": enum (CardinalDirection),

  // Union field _degrees can be only one of the following:
  "degrees": integer
  // End of list of possible types for union field _degrees.
}
Campi
cardinal

enum (CardinalDirection)

Il codice che rappresenta la direzione cardinale da cui soffia il vento.

Campo unione _degrees.

_degrees può essere solo uno dei seguenti tipi:

degrees

integer

La direzione del vento in gradi (valori da 0 a 360).

WindSpeed

Rappresentazione JSON
{
  "unit": enum (SpeedUnit),

  // Union field _value can be only one of the following:
  "value": number
  // End of list of possible types for union field _value.
}
Campi
unit

enum (SpeedUnit)

Il codice che rappresenta l'unità utilizzata per misurare la velocità del vento.

Campo unione _value.

_value può essere solo uno dei seguenti tipi:

value

number

Il valore della velocità del vento.

Località

Rappresentazione JSON
{

  // Union field location_type can be only one of the following:
  "latLng": {
    object (google.type.LatLng)
  },
  "placeId": string,
  "address": string
  // End of list of possible types for union field location_type.
}
Campi
Campo unione location_type. Diversi modi per rappresentare una località. location_type può essere solo uno dei seguenti tipi:
latLng

object (google.type.LatLng)

Un punto specificato utilizzando le coordinate geografiche.

placeId

string

L'ID luogo associato alla posizione .

address

string

Indirizzo leggibile o un plus code. Per maggiori dettagli, visita la pagina https://plus.codes.

LatLng

Rappresentazione JSON
{
  "latitude": number,
  "longitude": number
}
Campi
latitude

number

La latitudine in gradi. Deve essere compresa nell'intervallo [-90,0, +90,0].

longitude

number

La longitudine in gradi. Deve essere compreso nell'intervallo [-180.0, +180.0].

Annotazioni dello strumento

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ❌ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌