Narzędzie: lookup_weather
Pobiera kompleksowe dane pogodowe, w tym bieżące warunki, prognozy godzinowe i dzienne. Dostępne dane: temperatura (aktualna, odczuwalna, maksymalna/minimalna, indeks ciepła), wiatr (prędkość, porywy, kierunek), zjawiska astronomiczne (wschód/zachód słońca, faza księżyca), opady (rodzaj, prawdopodobieństwo, ilość/QPF), warunki atmosferyczne (indeks UV, wilgotność, zachmurzenie, prawdopodobieństwo burzy) i adres lokalizacji geokodowanej. Lokalizacja i reguły dotyczące lokalizacji (KRYTYCZNE): lokalizacja, dla której są wysyłane żądania danych pogodowych, jest określana za pomocą pola „location”. To pole ma strukturę „oneof”, co oznacza, że aby zapewnić dokładne wyszukiwanie danych pogodowych, MUSISZ podać wartość TYLKO w jednym z 3 pól podrzędnych lokalizacji poniżej. 1. Współrzędne geograficzne (lat_lng) * Używaj, gdy masz dokładne współrzędne geograficzne. * Przykład: „lat_lng”: { „latitude”: 34.0522, „longitude”: -118.2437 } // Los Angeles 2. Identyfikator miejsca (place_id) * Niejednoznaczny identyfikator w postaci ciągu znaków (identyfikator miejsca w Mapach Google). * Identyfikator miejsca można pobrać za pomocą narzędzia search_places. * Przykład: „place_id”: „ChIJLU7jZClu5kcR4PcOOO6p3I0” // Wieża Eiffla 3. Ciąg znaków adresu (address) * Ciąg znaków w dowolnym formacie, który wymaga precyzyjnego określenia na potrzeby geokodowania. * Miasto i region: zawsze podawaj region/kraj (np. „Londyn, Wielka Brytania”, a nie „Londyn”). * Adres: podaj pełny adres (np. „1600 Pennsylvania Ave NW, Washington, DC”). * Kody pocztowe: MUSZĄ zawierać nazwę kraju (np. „90210, USA”, a NIE „90210”). Tryby użytkowania: 1. Current Weather: podaj tylko address. Nie podawaj parametrów date i hour. 2. Prognoza godzinowa: podaj address, date i hour (0–23). Używaj w określonych momentach (np. o godzinie 17:00) lub wyrażenia takie jak „w ciągu najbliższych kilku godzin” czy „później”. Jeśli użytkownik poda minuty, zaokrąglij w dół do najbliższej godziny. Prognoza godzinowa na okres dłuższy niż 48 godzin nie jest obsługiwana. 3. Prognoza dzienna: podaj address i date. Nie podawaj parametru hour. Używaj go w przypadku ogólnych próśb dotyczących dnia (np. „pogoda na jutro”, „pogoda w piątek”, „pogoda 25 grudnia”). Jeśli dzisiejsza data nie jest podana w kontekście, wyjaśnij to użytkownikowi. Codzienna prognoza na okres dłuższy niż 7 dni, w tym na dzień bieżący, nie jest obsługiwana. Dane historyczne o pogodzie nie są obsługiwane. Ograniczenia dotyczące parametrów: * Strefy czasowe: wszystkie dane wejściowe date i hour muszą być podawane w lokalnej strefie czasowej lokalizacji, a nie w strefie czasowej użytkownika. * Format daty: dane wejściowe muszą być rozdzielone na {year, month, day} liczby całkowite. * Jednostki: domyślnie METRIC. Ustaw wartość units_system na IMPERIAL w przypadku skali Fahrenheita i mil, jeśli użytkownik sugeruje standardy amerykańskie lub wyraźnie o to prosi.
Poniższy przykład pokazuje, jak za pomocą curl wywołać narzędzie lookup_weather MCP.
| Żądanie 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": "lookup_weather", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Schemat danych wejściowych
Żądanie metody LookupWeather – reprezentuje warunki pogodowe w wybranej lokalizacji.
LookupWeatherRequest
| Zapis JSON |
|---|
{ "DEPRECATEDAddress": string, "unitsSystem": enum ( |
| Pola | |
|---|---|
DEPRECATEDAddress |
WYCOFANO: zamiast niej używaj lokalizacji. |
unitsSystem |
Opcjonalnie: System jednostek, który ma być używany w przypadku zwracanych warunków pogodowych. Jeśli nie podasz tej wartości, zwrócone warunki pogodowe będą podane w systemie metrycznym (domyślnie = METRIC). |
location |
Wymagane. Lokalizacja, dla której chcesz uzyskać informacje o warunkach pogodowych. |
Pole zbiorcze Pole |
|
date |
Opcjonalnie: Data wymaganych informacji o pogodzie. Uwaga: data jest określana zgodnie ze strefą czasową lokalizacji podanej w odpowiednim polu. Data musi przypadać w ciągu najbliższych 7 dni. |
Pole zbiorcze Pole |
|
hour |
Opcjonalnie: Godzina, dla której chcesz uzyskać informacje o pogodzie, w formacie 24-godzinnym (0–23). Ta wartość jest podana w odniesieniu do lokalnej strefy czasowej lokalizacji określonej w polu lokalizacji. Prognoza godzinowa jest dostępna tylko na najbliższe 48 godzin od bieżącego czasu. |
Data
| Zapis JSON |
|---|
{ "year": integer, "month": integer, "day": integer } |
| Pola | |
|---|---|
year |
Rok daty. Musi mieścić się w zakresie od 1 do 9999 lub wynosić 0, jeśli określasz datę bez roku. |
month |
Miesiąc roku. Musi mieścić się w zakresie od 1 do 12 lub wynosić 0, jeśli określasz rok bez miesiąca i dnia. |
day |
Dzień miesiąca. Wartość musi mieścić się w zakresie od 1 do 31 i być prawidłowa w przypadku danego roku i miesiąca lub wynosić 0, jeśli określasz sam rok albo rok i miesiąc, w których dzień nie ma znaczenia. |
Lokalizacja
| Zapis JSON |
|---|
{ // Union field |
| Pola | |
|---|---|
Pole zbiorcze location_type. Różne sposoby przedstawiania lokalizacji. location_type może mieć tylko jedną z tych wartości: |
|
latLng |
Punkt określony za pomocą współrzędnych geograficznych. |
placeId |
Identyfikator miejsca powiązany z lokalizacją . |
address |
Adres w formie czytelnej dla człowieka lub kod Plus Code. Więcej informacji znajdziesz na stronie https://plus.codes. |
LatLng
| Zapis JSON |
|---|
{ "latitude": number, "longitude": number } |
| Pola | |
|---|---|
latitude |
Szerokość geograficzna w stopniach. Musi mieścić się w zakresie od –90,0 do +90,0. |
longitude |
Długość geograficzna w stopniach. Musi mieścić się w zakresie [–180,0, +180,0]. |
Schemat wyjściowy
Odpowiedź na wywołanie procedury RPC LookupWeather – zawiera informacje o warunkach pogodowych w żądanej lokalizacji.
Odpowiedź zawiera informacje zarówno godzinowe, jak i dzienne, dlatego jest podzielona na 3 sekcje: Hourly (Godzinowe), Daily (Dzienne) i Shared (Wspólne). Pola Only-Hourly i Only-Daily są oznaczone jako opcjonalne. W przypadku pól, które są wspólne dla informacji godzinowych i dziennych, niektóre są zawsze obecne, więc nie są oznaczone jako opcjonalne, a pozostałe są oznaczone jako opcjonalne, ponieważ nie zawsze są dostępne.
LookupWeatherResponse
| Zapis JSON |
|---|
{ "weatherCondition": { object ( |
| Pola | |
|---|---|
weatherCondition |
warunki pogodowe, |
precipitation |
prawdopodobieństwo opadów i wielkość opadów, |
wind |
Warunki wiatrowe |
DEPRECATEDGeocodedAddress |
WYCOFANO: zamiast niej używaj kolumny returned_location. |
returnedLocation |
Wymagane. Lokalizacja, dla której zwracane są informacje o pogodzie. Ta lokalizacja jest identyczna z lokalizacją w żądaniu, ale może się od niej różnić, jeśli żądana lokalizacja jest adresem w formie tekstu, który odnosi się do przybliżonej lokalizacji (np. „Mountain View, CA”). |
Pole zbiorcze Pole |
|
temperature |
temperatura godzinowa, |
Pole zbiorcze Pole |
|
feelsLikeTemperature |
Godzinowy pomiar temperatury odczuwalnej. |
Pole zbiorcze Pole |
|
heatIndex |
Godzinowa temperatura wskaźnika ciepła. |
Pole zbiorcze Pole |
|
airPressure |
godzinowe warunki ciśnienia powietrza; |
Pole zbiorcze Pole |
|
maxTemperature |
Maksymalna temperatura w ciągu dnia. |
Pole zbiorcze Pole |
|
minTemperature |
Minimalna (najniższa) temperatura w ciągu dnia. |
Pole zbiorcze Pole |
|
feelsLikeMaxTemperature |
Maksymalna (wysoka) temperatura odczuwalna w ciągu dnia. |
Pole zbiorcze Pole |
|
feelsLikeMinTemperature |
Minimalna (najniższa) temperatura odczuwalna w ciągu dnia. |
Pole zbiorcze Pole |
|
maxHeatIndex |
Maksymalna temperatura odczuwalna w ciągu dnia. |
Pole zbiorcze Pole |
|
sunEvents |
Zdarzenia związane ze słońcem (np. wschód i zachód słońca). |
Pole zbiorcze Pole |
|
moonEvents |
Wydarzenia związane z księżycem (np. wschód i zachód). |
Pole zbiorcze Pole |
|
relativeHumidity |
Procent wilgotności względnej (wartości od 0 do 100). Zdefiniuj jako opcjonalne, ponieważ nie zawsze jest dostępny. |
Pole zbiorcze Pole |
|
uvIndex |
Maksymalny indeks promieniowania ultrafioletowego (UV). define optional because it is not always available |
Pole zbiorcze Pole |
|
thunderstormProbability |
Prawdopodobieństwo wystąpienia burzy z wyładowaniami atmosferycznymi (wartości od 0 do 100). Zdefiniuj opcjonalnie, ponieważ nie zawsze jest dostępna. |
Pole zbiorcze Pole |
|
cloudCover |
Procent pokrycia nieba przez chmury (wartości od 0 do 100). Zdefiniuj jako opcjonalne, ponieważ nie zawsze jest dostępne. |
Temperatura
| Zapis JSON |
|---|
{ "unit": enum ( |
| Pola | |
|---|---|
unit |
Kod jednostki używanej do pomiaru wartości temperatury. |
Pole zbiorcze Pole |
|
degrees |
Wartość temperatury (w stopniach) w określonej jednostce. |
AirPressure
| Zapis JSON |
|---|
{ // Union field |
| Pola | |
|---|---|
Pole zbiorcze Pole |
|
meanSeaLevelMillibars |
Średnie ciśnienie powietrza na poziomie morza w milibarach. |
SunEvents
| Zapis JSON |
|---|
{ "sunriseTime": string, "sunsetTime": string } |
| Pola | |
|---|---|
sunriseTime |
Godzina wschodu słońca. UWAGA: w niektórych wyjątkowych przypadkach (np. na północ od koła podbiegunowego) w danym dniu może nie być wschodu słońca. W takich przypadkach to pole zostanie wyczyszczone. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
sunsetTime |
Godzina zachodu słońca. UWAGA: w niektórych wyjątkowych przypadkach (np. na północ od koła podbiegunowego) może nie być czasu zachodu słońca w danym dniu. W takich przypadkach to pole nie będzie ustawione. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Sygnatura czasowa
| Zapis JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Pola | |
|---|---|
seconds |
Reprezentuje sekundy czasu UTC od epoki uniksowej 1970-01-01T00:00:00Z. Musi mieścić się w przedziale od -62135596800 do 253402300799 (co odpowiada zakresowi od 0001-01-01T00:00:00Z do 9999-12-31T23:59:59Z). |
nanos |
Nieujemne ułamki sekundy w rozdzielczości nanosekundowej. To pole zawiera część czasu trwania w nanosekundach, a nie alternatywę dla sekund. Ujemne wartości sekund z ułamkami muszą mieć nieujemne wartości nanosekund, które liczą czas do przodu. Musi mieścić się w zakresie od 0 do 999 999 999 włącznie. |
MoonEvents
| Zapis JSON |
|---|
{
"moonriseTimes": [
string
],
"moonsetTimes": [
string
],
"moonPhase": enum ( |
| Pola | |
|---|---|
moonriseTimes[] |
Czas, w którym górna krawędź księżyca pojawia się nad horyzontem (patrz https://en.wikipedia.org/wiki/Moonrise_and_moonset)). UWAGA: w większości przypadków w ciągu dnia występuje tylko 1 wschód Księżyca. W innych przypadkach lista może być pusta (np. gdy księżyc wschodzi po północy następnego dnia). W wyjątkowych przypadkach (np. w regionach polarnych) lista może zawierać więcej niż 1 wartość. W takich przypadkach wartości są sortowane w kolejności rosnącej. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
moonsetTimes[] |
Moment, w którym górna krawędź Księżyca znika poniżej horyzontu (patrz https://en.wikipedia.org/wiki/Moonrise_and_moonset)). UWAGA: w większości przypadków każdego dnia będzie tylko 1 godzina zachodu księżyca. W innych przypadkach lista może być pusta (np. gdy księżyc zachodzi po północy następnego dnia). W wyjątkowych przypadkach (np. w regionach polarnych) lista może zawierać więcej niż 1 wartość. W takich przypadkach wartości są sortowane w kolejności rosnącej. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
moonPhase |
Faza księżyca. |
WeatherCondition
| Zapis JSON |
|---|
{ "iconBaseUri": string, "description": { object ( |
| Pola | |
|---|---|
iconBaseUri |
Podstawowy identyfikator URI ikony bez rozszerzenia typu pliku. Aby wyświetlić ikonę, dołącz do tego identyfikatora URI motyw (jeśli chcesz) i rozszerzenie typu pliku ( |
description |
Tekstowy opis warunków pogodowych (w odpowiednim języku). |
type |
Rodzaj warunków pogodowych. |
LocalizedText
| Zapis JSON |
|---|
{ "text": string, "languageCode": string } |
| Pola | |
|---|---|
text |
Zlokalizowany ciąg tekstowy w języku odpowiadającym wartości |
languageCode |
Kod języka tekstu w formacie BCP-47, np. „en-US” lub „sr-Latn”. Więcej informacji znajdziesz na stronie http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
Opady
| Zapis JSON |
|---|
{ "probability": { object ( |
| Pola | |
|---|---|
probability |
Prawdopodobieństwo opadów (wartości od 0 do 100). |
snowQpf |
Ilość śniegu mierzona jako ekwiwalent wody w stanie ciekłym, która zgromadziła się w danym okresie. Uwaga: QPF to skrót od Quantitative Precipitation Forecast (więcej informacji znajdziesz w definicji QuantitativePrecipitationForecast). |
qpf |
Ilość opadów deszczu, mierzona jako ekwiwalent wody w stanie ciekłym, która zgromadziła się w określonym czasie. Uwaga: QPF to skrót od Quantitative Precipitation Forecast (więcej informacji znajdziesz w definicji QuantitativePrecipitationForecast). |
PrecipitationProbability
| Zapis JSON |
|---|
{ "type": enum ( |
| Pola | |
|---|---|
type |
Kod wskazujący rodzaj opadów. |
Pole zbiorcze Pole |
|
percent |
Wartość procentowa od 0 do 100, która wskazuje prawdopodobieństwo opadów. |
QuantitativePrecipitationForecast
| Zapis JSON |
|---|
{ "unit": enum ( |
| Pola | |
|---|---|
unit |
Kod jednostki używanej do pomiaru ilości skumulowanych opadów. |
Pole zbiorcze Pole |
|
quantity |
Ilość opadów mierzona jako ekwiwalent wody w stanie ciekłym, która zgromadziła się w określonym czasie. |
Wiatr
| Zapis JSON |
|---|
{ "direction": { object ( |
| Pola | |
|---|---|
direction |
Kierunek wiatru, czyli kąt, pod jakim wieje wiatr. |
speed |
Prędkość wiatru. |
gust |
poryw wiatru (nagły wzrost prędkości wiatru); |
WindDirection
| Zapis JSON |
|---|
{ "cardinal": enum ( |
| Pola | |
|---|---|
cardinal |
Kod reprezentujący kierunek kardynalny, z którego wieje wiatr. |
Pole zbiorcze Pole |
|
degrees |
Kierunek wiatru w stopniach (wartości od 0 do 360). |
WindSpeed
| Zapis JSON |
|---|
{ "unit": enum ( |
| Pola | |
|---|---|
unit |
Kod reprezentujący jednostkę używaną do pomiaru prędkości wiatru. |
Pole zbiorcze Pole |
|
value |
Wartość prędkości wiatru. |
Lokalizacja
| Zapis JSON |
|---|
{ // Union field |
| Pola | |
|---|---|
Pole zbiorcze location_type. Różne sposoby przedstawiania lokalizacji. location_type może mieć tylko jedną z tych wartości: |
|
latLng |
Punkt określony za pomocą współrzędnych geograficznych. |
placeId |
Identyfikator miejsca powiązany z lokalizacją . |
address |
Adres w formie czytelnej dla człowieka lub kod Plus Code. Więcej informacji znajdziesz na https://plus.codes. |
LatLng
| Zapis JSON |
|---|
{ "latitude": number, "longitude": number } |
| Pola | |
|---|---|
latitude |
Szerokość geograficzna w stopniach. Musi mieścić się w zakresie od –90,0 do +90,0. |
longitude |
Długość geograficzna w stopniach. Musi mieścić się w zakresie [–180,0, +180,0]. |
Adnotacje do narzędzi
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌