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 ( |
| Campi | |
|---|---|
DEPRECATEDAddress |
DEPRECATO: utilizza la posizione. |
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 |
Obbligatorio. La località per cui ottenere le condizioni meteo. |
Campo unione
|
|
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 |
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 |
L'anno della data. Deve essere compreso tra 1 e 9999 o tra 0 e 9999 per specificare una data senza anno. |
month |
Mese dell'anno. Deve essere compreso tra 1 e 12 o 0 per specificare un anno senza mese e giorno. |
day |
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 |
| Campi | |
|---|---|
Campo unione location_type. Diversi modi per rappresentare una località. location_type può essere solo uno dei seguenti tipi: |
|
latLng |
Un punto specificato utilizzando le coordinate geografiche. |
placeId |
L'ID luogo associato alla posizione . |
address |
Indirizzo leggibile o un plus code. Per maggiori dettagli, visita la pagina https://plus.codes. |
LatLng
| Rappresentazione JSON |
|---|
{ "latitude": number, "longitude": number } |
| Campi | |
|---|---|
latitude |
La latitudine in gradi. Deve essere compresa nell'intervallo [-90,0, +90,0]. |
longitude |
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 ( |
| Campi | |
|---|---|
weatherCondition |
Condizione meteo |
precipitation |
La probabilità di precipitazioni e la quantità di precipitazioni accumulate |
wind |
Condizioni del vento |
DEPRECATEDGeocodedAddress |
DEPRECATO: utilizza returned_location. |
returnedLocation |
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 |
La temperatura oraria |
Campo unione
|
|
feelsLikeTemperature |
La misurazione oraria della temperatura percepita. |
Campo unione
|
|
heatIndex |
La temperatura oraria dell'indice di calore. |
Campo unione
|
|
airPressure |
Le condizioni di pressione atmosferica oraria. |
Campo unione
|
|
maxTemperature |
La temperatura massima (alta) durante la giornata. |
Campo unione
|
|
minTemperature |
La temperatura minima (bassa) durante il giorno. |
Campo unione
|
|
feelsLikeMaxTemperature |
La temperatura percepita massima (alta) durante la giornata. |
Campo unione
|
|
feelsLikeMinTemperature |
La temperatura percepita minima (bassa) durante il giorno. |
Campo unione
|
|
maxHeatIndex |
La temperatura massima dell'indice di calore durante la giornata. |
Campo unione
|
|
sunEvents |
Gli eventi relativi al sole (ad es. alba, tramonto). |
Campo unione
|
|
moonEvents |
Gli eventi relativi alla luna (ad es. sorgere della luna, tramonto della luna). |
Campo unione
|
|
relativeHumidity |
La percentuale di umidità relativa (valori da 0 a 100). Definisci facoltativo perché non è sempre disponibile |
Campo unione
|
|
uvIndex |
L'indice ultravioletto (UV) massimo. Definisci facoltativo perché non è sempre disponibile |
Campo unione
|
|
thunderstormProbability |
La probabilità di temporale (valori da 0 a 100). Definisci facoltativo perché non è sempre disponibile |
Campo unione
|
|
cloudCover |
La percentuale di cielo coperto da nuvole (valori da 0 a 100). Definisci facoltativo perché non è sempre disponibile |
Temperatura
| Rappresentazione JSON |
|---|
{ "unit": enum ( |
| Campi | |
|---|---|
unit |
Il codice dell'unità utilizzata per misurare il valore della temperatura. |
Campo unione
|
|
degrees |
Il valore della temperatura (in gradi) nell'unità specificata. |
AirPressure
| Rappresentazione JSON |
|---|
{ // Union field |
| Campi | |
|---|---|
Campo unione
|
|
meanSeaLevelMillibars |
La pressione atmosferica media al livello del mare in millibar. |
SunEvents
| Rappresentazione JSON |
|---|
{ "sunriseTime": string, "sunsetTime": string } |
| Campi | |
|---|---|
sunriseTime |
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: |
sunsetTime |
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: |
Timestamp
| Rappresentazione JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campi | |
|---|---|
seconds |
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 |
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 ( |
| Campi | |
|---|---|
moonriseTimes[] |
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: |
moonsetTimes[] |
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: |
moonPhase |
La fase lunare. |
WeatherCondition
| Rappresentazione JSON |
|---|
{ "iconBaseUri": string, "description": { object ( |
| Campi | |
|---|---|
iconBaseUri |
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 ( |
description |
La descrizione testuale di questa condizione meteo (localizzata). |
type |
Il tipo di condizione meteo. |
LocalizedText
| Rappresentazione JSON |
|---|
{ "text": string, "languageCode": string } |
| Campi | |
|---|---|
text |
Stringa localizzata nella lingua corrispondente a |
languageCode |
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 ( |
| Campi | |
|---|---|
probability |
La probabilità di precipitazioni (valori da 0 a 100). |
snowQpf |
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 |
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 ( |
| Campi | |
|---|---|
type |
Un codice che indica il tipo di precipitazione. |
Campo unione
|
|
percent |
Una percentuale compresa tra 0 e 100 che indica le probabilità di precipitazioni. |
QuantitativePrecipitationForecast
| Rappresentazione JSON |
|---|
{ "unit": enum ( |
| Campi | |
|---|---|
unit |
Il codice dell'unità utilizzata per misurare la quantità di precipitazioni accumulate. |
Campo unione
|
|
quantity |
La quantità di precipitazioni, misurata come equivalente di acqua liquida, che si è accumulata in un determinato periodo di tempo. |
Wind
| Rappresentazione JSON |
|---|
{ "direction": { object ( |
| Campi | |
|---|---|
direction |
La direzione del vento, l'angolo da cui proviene. |
speed |
La velocità del vento. |
gust |
La raffica di vento (aumento improvviso della velocità del vento). |
WindDirection
| Rappresentazione JSON |
|---|
{ "cardinal": enum ( |
| Campi | |
|---|---|
cardinal |
Il codice che rappresenta la direzione cardinale da cui soffia il vento. |
Campo unione
|
|
degrees |
La direzione del vento in gradi (valori da 0 a 360). |
WindSpeed
| Rappresentazione JSON |
|---|
{ "unit": enum ( |
| Campi | |
|---|---|
unit |
Il codice che rappresenta l'unità utilizzata per misurare la velocità del vento. |
Campo unione
|
|
value |
Il valore della velocità del vento. |
Località
| Rappresentazione JSON |
|---|
{ // Union field |
| Campi | |
|---|---|
Campo unione location_type. Diversi modi per rappresentare una località. location_type può essere solo uno dei seguenti tipi: |
|
latLng |
Un punto specificato utilizzando le coordinate geografiche. |
placeId |
L'ID luogo associato alla posizione . |
address |
Indirizzo leggibile o un plus code. Per maggiori dettagli, visita la pagina https://plus.codes. |
LatLng
| Rappresentazione JSON |
|---|
{ "latitude": number, "longitude": number } |
| Campi | |
|---|---|
latitude |
La latitudine in gradi. Deve essere compresa nell'intervallo [-90,0, +90,0]. |
longitude |
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: ❌