Tool: lookup_weather
Ruft umfassende Wetterdaten ab, einschließlich aktueller Bedingungen, stündlicher und täglicher Vorhersagen. Verfügbare spezifische Daten:Temperatur (aktuell, gefühlt, Höchst-/Tiefsttemperatur, Hitzeindex), Wind (Geschwindigkeit, Böen, Richtung), Himmelsereignisse (Sonnenaufgang/-untergang, Mondphase), Niederschlag (Art, Wahrscheinlichkeit, Menge/QPF), atmosphärische Bedingungen (UV-Index, Luftfeuchtigkeit, Bewölkung, Wahrscheinlichkeit von Gewittern) und geocodierte Standortadresse. Standort und Standortregeln (KRITISCH): Der Standort, für den Wetterdaten angefordert werden, wird über das Feld „location“ angegeben. Dieses Feld ist eine „oneof“-Struktur. Das bedeutet, dass Sie für NUR EINES der drei untergeordneten Standortfelder unten einen Wert angeben MÜSSEN, damit die Wetterdaten korrekt abgerufen werden. 1. Geografische Koordinaten (lat_lng): Verwenden Sie diesen Parameter, wenn Sie genaue Breiten- und Längengradkoordinaten erhalten. * Beispiel: „lat_lng“: { „latitude“: 34.0522, „longitude“: -118.2437 } // Los Angeles 2. Orts-ID (place_id) * Eine eindeutige String-Kennzeichnung (Google Maps-Orts-ID). * Die place_id kann mit dem Tool „search_places“ abgerufen werden. * Beispiel: „place_id“: „ChIJLU7jZClu5kcR4PcOOO6p3I0“ // Eiffelturm 3. Adressstring (address): * Ein beliebig definierbarer String, der für die Geocodierung spezifisch sein muss. * Stadt und Region: Geben Sie immer die Region/das Land an (z.B. „London, UK“ statt „London“). * Adresse: Geben Sie die vollständige Adresse an, z.B. „1600 Pennsylvania Ave NW, Washington, DC“). * Postleitzahlen: MÜSSEN mit einem Ländernamen angegeben werden (z.B. „90210, USA“ und NICHT „90210“). Verwendungsmodi:1. Aktuelles Wetter:Gib nur address an. Geben Sie date und hour nicht an. 2. Stündliche Vorhersage:Geben Sie address, date und hour (0–23) an. Für bestimmte Zeiten verwenden (z.B. um 17:00 Uhr“) oder Begriffe wie „in den nächsten Stunden“ oder „später heute“. Wenn der Nutzer eine Minute angibt, runde auf die nächste volle Stunde ab. Stündliche Vorhersagen, die mehr als 48 Stunden in der Zukunft liegen, werden nicht unterstützt. 3. Tagesvorhersage:Gib address und date an. Geben Sie nicht hour an. Für allgemeine Tagesanfragen verwenden (z.B. „Wetter für morgen“, „Wetter am Freitag“, „Wetter am 25.12.“ Wenn das heutige Datum nicht im Kontext enthalten ist, sollten Sie es mit dem Nutzer klären. Tagesprognosen für mehr als 7 Tage, einschließlich des heutigen Tages, werden nicht unterstützt. Verlaufsdaten zum Wetter werden nicht unterstützt. Parameterbeschränkungen: * Zeitzonen:Alle date- und hour-Eingaben müssen sich auf die lokale Zeitzone des Standorts und nicht auf die Zeitzone des Nutzers beziehen. * Datumsformat:Die Eingaben müssen in {year, month, day} Ganzzahlen unterteilt werden. * Einheiten:Die Standardeinstellung ist METRIC. Setze units_system auf IMPERIAL für Fahrenheit/Meilen, wenn der Nutzer US-Standards impliziert oder explizit anfordert.
Im folgenden Beispiel wird gezeigt, wie Sie mit curl das MCP-Tool lookup_weather aufrufen.
| Curl-Anfrage |
|---|
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 }' |
Eingabeschema
Anfrage für die Methode „LookupWeather“ – stellt die Wetterbedingungen am angeforderten Ort dar.
LookupWeatherRequest
| JSON-Darstellung |
|---|
{ "DEPRECATEDAddress": string, "unitsSystem": enum ( |
| Felder | |
|---|---|
DEPRECATEDAddress |
VERALTET: Verwenden Sie stattdessen „location“. |
unitsSystem |
Optional. Das Einheitensystem, das für die zurückgegebenen Wetterbedingungen verwendet werden soll. Wenn keine Angabe erfolgt, werden die zurückgegebenen Wetterbedingungen im metrischen System angegeben (Standard = METRIC). |
location |
Erforderlich. Der Standort, für den die Wetterbedingungen abgerufen werden sollen. |
Union-Feld Für |
|
date |
Optional. Das Datum der erforderlichen Wetterinformationen. Hinweis: Dieses Datum bezieht sich auf die lokale Zeitzone des im Feld „Standort“ angegebenen Standorts. Das Datum muss innerhalb der nächsten 7 Tage liegen. |
Union-Feld Für |
|
hour |
Optional. Die Stunde der angeforderten Wetterinformationen im 24‑Stunden-Format (0–23). Dieser Wert bezieht sich auf die lokale Zeitzone des im Feld „Standort“ angegebenen Standorts. Die stündliche Vorhersage wird nur für die nächsten 48 Stunden ab der aktuellen Uhrzeit unterstützt. |
Datum
| JSON-Darstellung |
|---|
{ "year": integer, "month": integer, "day": integer } |
| Felder | |
|---|---|
year |
Jahr des Datums. Der Wert muss zwischen 1 und 9999 liegen oder kann 0 sein, wenn ein Datum ohne Jahreszahl angegeben wird. |
month |
Monat eines Jahres. Der Wert muss zwischen 1 und 12 liegen. Er kann auch 0 sein, wenn ein Jahr ohne Monat und Tag angegeben wird. |
day |
Tag eines Monats. Der Wert muss zwischen 1 und 31 liegen und für das Jahr und den Monat gültig sein. Er kann auch 0 sein, wenn das Jahr bzw. der Monat angegeben wird, der Tag selbst jedoch nicht relevant ist. |
Standort
| JSON-Darstellung |
|---|
{ // Union field |
| Felder | |
|---|---|
Union-Feld location_type. Verschiedene Möglichkeiten, einen Ort darzustellen. Für location_type ist nur einer der folgenden Werte zulässig: |
|
latLng |
Ein Punkt, der mit geografischen Koordinaten angegeben wird. |
placeId |
Die mit dem Standort verknüpfte Orts-ID . |
address |
Eine lesbare Adresse oder ein Plus Code. Weitere Informationen finden Sie unter https://plus.codes. |
LatLng
| JSON-Darstellung |
|---|
{ "latitude": number, "longitude": number } |
| Felder | |
|---|---|
latitude |
Der Breitengrad in Grad. Er muss im Bereich [-90,0, +90,0] liegen. |
longitude |
Der Längengrad in Grad. Er muss im Bereich [-180,0, +180,0] liegen. |
Ausgabeschema
Antwort für den LookupWeather-RPC – stellt die Wetterbedingungen am angeforderten Ort dar.
Diese Antwort enthält sowohl stündliche als auch tägliche Informationen. Sie ist daher in drei Abschnitte unterteilt: „Stündlich“, „Täglich“ und „Gemeinsam“. Die Felder „Nur stündlich“ und „Nur täglich“ sind als optional gekennzeichnet. Bei Feldern, die sowohl für stündliche als auch für tägliche Informationen verwendet werden, sind einige immer vorhanden und daher nicht als optional gekennzeichnet. Die restlichen Felder sind als optional gekennzeichnet, da sie nicht immer verfügbar sind.
LookupWeatherResponse
| JSON-Darstellung |
|---|
{ "weatherCondition": { object ( |
| Felder | |
|---|---|
weatherCondition |
Die Wetterbedingungen |
precipitation |
Die Niederschlagswahrscheinlichkeit und die angesammelte Niederschlagsmenge |
wind |
Die Windverhältnisse |
DEPRECATEDGeocodedAddress |
VERALTET: Verwenden Sie stattdessen „returned_location“. |
returnedLocation |
Erforderlich. Der Ort, für den die Wetterinformationen zurückgegeben werden. Dieser Standort ist mit dem Standort in der Anfrage identisch, kann sich aber davon unterscheiden, wenn der angeforderte Standort eine Freitextadresse ist, die auf einen groben Standort verweist (z.B. „Mountain View, CA“). |
Union-Feld Für |
|
temperature |
Die stündliche Temperatur |
Union-Feld Für |
|
feelsLikeTemperature |
Die stündliche Messung der gefühlten Temperatur. |
Union-Feld Für |
|
heatIndex |
Die stündliche Hitzeindex-Temperatur. |
Union-Feld Für |
|
airPressure |
Die stündlichen Luftdruckbedingungen. |
Union-Feld Für |
|
maxTemperature |
Die Höchsttemperatur des Tages. |
Union-Feld Für |
|
minTemperature |
Die niedrigste Temperatur des Tages. |
Union-Feld Für |
|
feelsLikeMaxTemperature |
Die maximale (hohe) gefühlte Temperatur im Tagesverlauf. |
Union-Feld Für |
|
feelsLikeMinTemperature |
Die niedrigste gefühlte Temperatur im Laufe des Tages. |
Union-Feld Für |
|
maxHeatIndex |
Die maximale Hitzeindex-Temperatur im Laufe des Tages. |
Union-Feld Für |
|
sunEvents |
Die Ereignisse im Zusammenhang mit der Sonne (z.B. Sonnenaufgang, Sonnenuntergang). |
Union-Feld Für |
|
moonEvents |
Die Ereignisse im Zusammenhang mit dem Mond (z.B. Mondaufgang, Monduntergang). |
Union-Feld Für |
|
relativeHumidity |
Der Prozentsatz der relativen Luftfeuchtigkeit (Werte von 0 bis 100). Optional, da nicht immer verfügbar. |
Union-Feld Für |
|
uvIndex |
Der maximale UV-Index. Optional, da er nicht immer verfügbar ist. |
Union-Feld Für |
|
thunderstormProbability |
Die Wahrscheinlichkeit für Gewitter (Werte von 0 bis 100). Optional, da nicht immer verfügbar. |
Union-Feld Für |
|
cloudCover |
Der Prozentsatz des Himmels, der von Wolken bedeckt ist (Werte von 0 bis 100). Optional, da nicht immer verfügbar. |
Temperatur
| JSON-Darstellung |
|---|
{ "unit": enum ( |
| Felder | |
|---|---|
unit |
Der Code für die Einheit, die zum Messen des Temperaturwerts verwendet wird. |
Union-Feld Für |
|
degrees |
Der Temperaturwert (in Grad) in der angegebenen Einheit. |
AirPressure
| JSON-Darstellung |
|---|
{ // Union field |
| Felder | |
|---|---|
Union-Feld Für |
|
meanSeaLevelMillibars |
Der Luftdruck auf Meereshöhe in Millibar. |
SunEvents
| JSON-Darstellung |
|---|
{ "sunriseTime": string, "sunsetTime": string } |
| Felder | |
|---|---|
sunriseTime |
Die Zeit, zu der die Sonne aufgeht. HINWEIS: In einigen besonderen Fällen (z.B. nördlich des Polarkreises) gibt es an einem Tag möglicherweise keine Sonnenaufgangszeit. In diesen Fällen wird dieses Feld nicht festgelegt. Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: |
sunsetTime |
Die Zeit, zu der die Sonne untergeht. HINWEIS: In einigen besonderen Fällen (z.B. nördlich des Polarkreises) gibt es an einem Tag möglicherweise keine Sonnenuntergangszeit. In diesen Fällen wird dieses Feld nicht festgelegt. Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: |
Zeitstempel
| JSON-Darstellung |
|---|
{ "seconds": string, "nanos": integer } |
| Felder | |
|---|---|
seconds |
Stellt Sekunden der UTC-Zeit seit Unix-Epoche 1970-01-01T00:00:00Z dar. Muss einschließlich zwischen -62135596800 und 253402300799 liegen (entspricht 0001-01-01T00:00:00Z bis 9999-12-31T23:59:59Z). |
nanos |
Nicht negative Sekundenbruchteile Nanosekunden-Auflösung. Dieses Feld enthält den Nanosekundenanteil der Dauer und ist keine Alternative zu Sekunden. Negative Sekundenwerte mit Bruchteilen müssen weiterhin nicht negative Nano-Werte haben, die zeitlich vorwärts gezählt werden. Muss zwischen 0 und 999.999.999 liegen. |
MoonEvents
| JSON-Darstellung |
|---|
{
"moonriseTimes": [
string
],
"moonsetTimes": [
string
],
"moonPhase": enum ( |
| Felder | |
|---|---|
moonriseTimes[] |
Die Zeit, zu der der obere Rand des Mondes über dem Horizont erscheint (siehe https://en.wikipedia.org/wiki/Moonrise_and_moonset)). HINWEIS: In den meisten Fällen gibt es nur eine Zeit für den Mondaufgang pro Tag. In anderen Fällen ist die Liste möglicherweise leer, z.B. wenn der Mond nach Mitternacht des nächsten Tages aufgeht. In Sonderfällen (z.B. in Polarregionen) kann die Liste jedoch mehr als einen Wert enthalten. In diesen Fällen werden die Werte in aufsteigender Reihenfolge sortiert. Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: |
moonsetTimes[] |
Die Zeit, zu der der obere Rand des Mondes unter dem Horizont verschwindet (siehe https://en.wikipedia.org/wiki/Moonrise_and_moonset)). HINWEIS: In den meisten Fällen gibt es pro Tag nur eine Uhrzeit für den Monduntergang. In anderen Fällen ist die Liste möglicherweise leer, z.B. wenn der Mond nach Mitternacht des nächsten Tages untergeht. In Sonderfällen (z.B. in Polarregionen) kann die Liste jedoch mehr als einen Wert enthalten. In diesen Fällen werden die Werte in aufsteigender Reihenfolge sortiert. Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: |
moonPhase |
Die Mondphase. |
WeatherCondition
| JSON-Darstellung |
|---|
{ "iconBaseUri": string, "description": { object ( |
| Felder | |
|---|---|
iconBaseUri |
Die Basis-URI für das Symbol ohne die Dateityperweiterung. Wenn Sie das Symbol anzeigen möchten, hängen Sie diesem URI ein Design (falls gewünscht) und die Dateityperweiterung ( |
description |
Die Textbeschreibung für diese Wetterbedingung (lokalisiert). |
type |
Die Art der Wetterbedingungen. |
LocalizedText
| JSON-Darstellung |
|---|
{ "text": string, "languageCode": string } |
| Felder | |
|---|---|
text |
Lokalisierter String in der Sprache, die |
languageCode |
Der BCP-47-Sprachcode des Texts, z. B. „en-US“ oder „sr-Latn“. Weitere Informationen finden Sie unter http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
Niederschlag
| JSON-Darstellung |
|---|
{ "probability": { object ( |
| Felder | |
|---|---|
probability |
Die Wahrscheinlichkeit für Niederschlag (Werte von 0 bis 100). |
snowQpf |
Die Menge an Schnee, gemessen als Flüssigwasseräquivalent, die sich über einen bestimmten Zeitraum angesammelt hat. Hinweis: QPF ist die Abkürzung für „Quantitative Precipitation Forecast“ (Vorhersage der Niederschlagsmenge). Weitere Informationen finden Sie in der Definition von „QuantitativePrecipitationForecast“. |
qpf |
Die Menge an Niederschlag in Form von Regen, gemessen als Äquivalent an flüssigem Wasser, die sich über einen bestimmten Zeitraum angesammelt hat. Hinweis: QPF ist die Abkürzung für „Quantitative Precipitation Forecast“ (Vorhersage der Niederschlagsmenge). Weitere Informationen finden Sie in der Definition von „QuantitativePrecipitationForecast“. |
PrecipitationProbability
| JSON-Darstellung |
|---|
{ "type": enum ( |
| Felder | |
|---|---|
type |
Ein Code, der den Niederschlagstyp angibt. |
Union-Feld Für |
|
percent |
Ein Prozentsatz zwischen 0 und 100, der die Wahrscheinlichkeit von Niederschlag angibt. |
QuantitativePrecipitationForecast
| JSON-Darstellung |
|---|
{ "unit": enum ( |
| Felder | |
|---|---|
unit |
Der Code der Einheit, mit der die Menge des angesammelten Niederschlags gemessen wird. |
Union-Feld Für |
|
quantity |
Die Niederschlagsmenge, gemessen als Äquivalent in flüssigem Wasser, die sich über einen bestimmten Zeitraum angesammelt hat. |
Wind
| JSON-Darstellung |
|---|
{ "direction": { object ( |
| Felder | |
|---|---|
direction |
Die Richtung, aus der der Wind kommt. |
speed |
Die Windgeschwindigkeit. |
gust |
Die Windböe (plötzlicher Anstieg der Windgeschwindigkeit). |
WindDirection
| JSON-Darstellung |
|---|
{ "cardinal": enum ( |
| Felder | |
|---|---|
cardinal |
Der Code, der die Himmelsrichtung angibt, aus der der Wind weht. |
Union-Feld Für |
|
degrees |
Die Windrichtung in Grad (Werte von 0 bis 360). |
WindSpeed
| JSON-Darstellung |
|---|
{ "unit": enum ( |
| Felder | |
|---|---|
unit |
Der Code, der die Einheit für die Windgeschwindigkeit angibt. |
Union-Feld Für |
|
value |
Der Wert der Windgeschwindigkeit. |
Standort
| JSON-Darstellung |
|---|
{ // Union field |
| Felder | |
|---|---|
Union-Feld location_type. Verschiedene Möglichkeiten, einen Ort darzustellen. Für location_type ist nur einer der folgenden Werte zulässig: |
|
latLng |
Ein Punkt, der mit geografischen Koordinaten angegeben wird. |
placeId |
Die mit dem Standort verknüpfte Orts-ID . |
address |
Eine lesbare Adresse oder ein Plus Code. Weitere Informationen finden Sie unter https://plus.codes. |
LatLng
| JSON-Darstellung |
|---|
{ "latitude": number, "longitude": number } |
| Felder | |
|---|---|
latitude |
Der Breitengrad in Grad. Er muss im Bereich [-90,0, +90,0] liegen. |
longitude |
Der Längengrad in Grad. Er muss im Bereich [-180,0, +180,0] liegen. |
Tool-Annotationen
Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ❌ | Hinweis „Nur lesen“: ✅ | Hinweis „Offene Welt“: ❌