MCP Tools Reference: mapstools.googleapis.com

工具:lookup_weather

检索全面的天气数据,包括天气实况、每小时预报和每日预报。

可用的具体数据:温度(当前温度、体感温度、最高/最低温度、热度指数)、风(风速、阵风、风向)、天体事件(日出/日落、月相)、降水(类型、概率、数量/QPF)、大气条件(紫外线指数、湿度、云量、雷暴概率)和地理编码位置地址。

位置和位置规则(关键):

使用 location 字段指定要请求天气数据的位置。此字段采用“oneof”结构,这意味着您必须仅为以下三个位置子字段中的一个提供值,以确保准确查找天气数据。

  1. 地理坐标 (lat_lng)

    • 当您获得确切的纬度/经度坐标时,请使用此方法。
    • 示例:{"location": {"lat_lng": {"latitude": 34.0522, "longitude": -118.2437}}} // 洛杉矶
  2. 地点 ID (place_id)

    • 明确的字符串标识符(Google 地图地点 ID)。
    • place_id 可从 search_places 工具中提取。
    • 示例:{"location": {"place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0"}} // 埃菲尔铁塔
  3. 地址字符串 (address)

    • 一个自由格式的字符串,需要具体说明地理编码。
    • 城市和地区:始终包含国家/地区(例如,“英国伦敦”,而不是“伦敦”)。
    • 街道地址:提供完整地址(例如,“1600 Pennsylvania Ave NW, Washington, DC”)。
    • 邮政编码:必须附带国家/地区名称(例如“90210, USA”,而不是“90210”)。
    • 示例:{"location": {"address": "1600 Pennsylvania Ave NW, Washington, DC"}}

使用模式:

  • 当前天气:仅提供 location。请勿指定 date 和 hour。

  • 每小时预报:提供 location、date 和 hour (0-23)。用于指定具体时间(例如“下午 5 点”)或使用“未来几小时”或“今天晚些时候”等字词。如果用户指定了分钟,则向下舍入到最接近的小时。不支持 120 小时之后的每小时预报。支持过去 24 小时内的历史每小时天气数据。

  • 每日天气预报:提供 location 和 date。请勿指定 hour。用于一般日期请求(例如“明天的天气”“周五的天气”“12 月 25 日的天气”)。如果上下文中没有今天的日期,您应向用户澄清。不支持从今天起超过 10 天的每日预测。不支持历史天气。

参数限制:

  • 时区:所有 date 和 hour 输入都必须相对于营业地点的本地时区,而不是用户的时区。
  • 日期格式:输入内容必须分成 {year, month, day} 个整数。
  • 单位:默认为 METRIC。如果用户暗示使用美国标准或明确要求使用美国标准,请将 units_system 设置为 IMPERIAL,以使用华氏度/英里。
  • 必须使用 attribution 字段中的信息(如有)将接地输出归因于来源。

以下代码示例展示了如何使用 curl 调用 lookup_weather MCP 工具。

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 MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

输入架构

LookupWeather 方法的请求 - 表示所请求位置的天气状况。

LookupWeatherRequest

JSON 表示法
{
  "unitsSystem": enum (UnitsSystem),
  "location": {
    object (Location)
  },

  // Union field _date can be only one of the following:
  "date": {
    object (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.
}
字段
unitsSystem

enum (UnitsSystem)

可选。返回的天气状况所使用的单位制。如果未提供,返回的天气状况将采用公制(默认值 = METRIC)。

location

object (Location)

必需。要获取天气状况的位置。

联合字段 _date。

_date 只能是下列其中一项:

date

object (Date)

可选。所需天气信息的日期。注意:此日期是相对于“地点”字段中指定的地点所在本地时区的日期。日期必须介于过去 24 小时到未来 10 天之间。

联合字段 _hour。

_hour 只能是下列其中一项:

hour

integer

可选。所请求天气信息的小时,采用 24 小时制 (0-23)。此值是相对于“location”字段中指定地点的本地时区而言的。不支持 120 小时之后的每小时预报。支持过去 24 小时内的历史每小时天气数据。

日期

JSON 表示法
{
  "year": integer,
  "month": integer,
  "day": integer
}
字段
year

integer

日期中的年份。必须介于 1 到 9999 之间,或为 0(即指定不含年份的日期)。

month

integer

一年中的第几个月。必须介于 1 到 12 之间,或为 0(即只指定年份,不指定月份和天值)。

day

integer

一个月中的第几天。必须介于 1 到 31 之间并且对年份和月份有效,或为 0(即天不重要,指定单独的年份或者年份和月份)。

位置

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.
}
字段
联合字段 location_type。表示位置的不同方式。location_type 只能是下列其中一项:
latLng

object (LatLng)

使用地理坐标指定的点。

placeId

string

与营业地点相关联的地点 ID。

address

string

人类可读地址或 Plus Code。如需了解详情,请参阅 https://plus.codes。

LatLng

JSON 表示法
{
  "latitude": number,
  "longitude": number
}
字段
latitude

number

纬度(以度为单位)。它必须在 [-90.0, +90.0] 范围内。

longitude

number

经度(以度为单位)。它必须在 [-180.0, +180.0] 范围内。

UnitsSystem

表示用于测量值的单位制。

枚举
UNITS_SYSTEM_UNSPECIFIED 未指定单位制。
IMPERIAL 英制单位系统(例如华氏度、英里等)。
METRIC 公制单位系统(例如摄氏度、公里等)。

输出架构

LookupWeather RPC 的响应 - 表示所请求位置的天气状况。

此响应同时代表每小时和每日信息,因此响应分为三个部分:每小时、每日和共享。“仅限每小时”和“仅限每日”字段标记为选填。对于每小时和每日信息中共享的字段,有些字段始终存在,因此未标记为可选,而其余字段则标记为可选,因为它们并非始终可用。

LookupWeatherResponse

JSON 表示法
{
  "weatherCondition": {
    object (WeatherCondition)
  },
  "precipitation": {
    object (Precipitation)
  },
  "wind": {
    object (Wind)
  },
  "returnedLocation": {
    object (Location)
  },
  "attribution": {
    object (Attribution)
  },

  // 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.
}
字段
weatherCondition

object (WeatherCondition)

天气状况

precipitation

object (Precipitation)

降水概率和累计降水量

wind

object (Wind)

风况

returnedLocation

object (Location)

必需。返回天气信息的地点。此位置与请求中的位置相同,但如果请求的位置是查找粗略位置的自由文本地址(例如“Mountain View, CA”),则可能与请求中的位置不同。

attribution

object (Attribution)

与天气信息一起显示的必需提供方信息。

联合字段 _temperature。

_temperature 只能是下列其中一项:

temperature

object (Temperature)

每小时温度

联合字段 _feels_like_temperature。

_feels_like_temperature 只能是下列其中一项:

feelsLikeTemperature

object (Temperature)

每小时的体感温度。

联合字段 _heat_index。

_heat_index 只能是下列其中一项:

heatIndex

object (Temperature)

每小时酷热指数温度。

联合字段 _air_pressure。

_air_pressure 只能是下列其中一项:

airPressure

object (AirPressure)

每小时气压状况。

联合字段 _max_temperature。

_max_temperature 只能是下列其中一项:

maxTemperature

object (Temperature)

全天最高温度。

联合字段 _min_temperature。

_min_temperature 只能是下列其中一项:

minTemperature

object (Temperature)

全天最低温度。

联合字段 _feels_like_max_temperature。

_feels_like_max_temperature 只能是下列其中一项:

feelsLikeMaxTemperature

object (Temperature)

全天最高体感温度。

联合字段 _feels_like_min_temperature。

_feels_like_min_temperature 只能是下列其中一项:

feelsLikeMinTemperature

object (Temperature)

全天最低体感温度。

联合字段 _max_heat_index。

_max_heat_index 只能是下列其中一项:

maxHeatIndex

object (Temperature)

全天最高热度指数温度。

联合字段 _sun_events。

_sun_events 只能是下列其中一项:

sunEvents

object (SunEvents)

与太阳相关的事件(例如日出、日落)。

联合字段 _moon_events。

_moon_events 只能是下列其中一项:

moonEvents

object (MoonEvents)

与月亮相关的事件(例如月出、月落)。

联合字段 _relative_humidity。

_relative_humidity 只能是下列其中一项:

relativeHumidity

integer

相对湿度百分比(值介于 0 到 100 之间)。定义为可选,因为并非始终可用

联合字段 _uv_index。

_uv_index 只能是下列其中一项:

uvIndex

integer

最大紫外线 (UV) 指数。定义为可选,因为并非始终可用

联合字段 _thunderstorm_probability。

_thunderstorm_probability 只能是下列其中一项:

thunderstormProbability

integer

雷暴概率(值介于 0 到 100 之间)。定义为可选,因为并非始终可用

联合字段 _cloud_cover。

_cloud_cover 只能是下列其中一项:

cloudCover

integer

云层覆盖天空的百分比(值介于 0 到 100 之间)。定义为可选,因为并非始终可用

温度

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.
}
字段
unit

enum (TemperatureUnit)

用于测量温度值的单位的代码。

联合字段 _degrees。

_degrees 只能是下列其中一项:

degrees

number

采用指定单位的温度值(单位为度)。

AirPressure

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.
}
字段

联合字段 _mean_sea_level_millibars。

_mean_sea_level_millibars 只能是下列其中一项:

meanSeaLevelMillibars

number

平均海平面气压(以毫巴为单位)。

SunEvents

JSON 表示法
{
  "sunriseTime": string,
  "sunsetTime": string
}
字段
sunriseTime

string (Timestamp format)

日出时间。

注意:在某些特殊情况下(例如北极圈以北),一天中可能没有日出时间。在这些情况下,此字段将处于未设置状态。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

sunsetTime

string (Timestamp format)

日落时间。

注意:在某些特殊情况下(例如北极圈以北),一天中可能没有日落时间。在这些情况下,此字段将处于未设置状态。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

时间戳

JSON 表示法
{
  "seconds": string,
  "nanos": integer
}
字段
seconds

string (int64 format)

表示世界协调时间 (UTC) 的秒数(从 Unix 纪元 1970-01-01T00:00:00Z 开始算起)。必须介于 -62135596800 到 253402300799 之间(含边界值,对应于 0001-01-01T00:00:00Z 到 9999-12-31T23:59:59Z)。

nanos

integer

秒数的非负小数部分(以纳秒为单位)。此字段是时长的纳秒部分,而不是秒的替代。对于含小数部分的负秒数,仍必须包含按时间递升的非负纳秒值。必须在 0 到 999,999,999 之间(含边界值)。

MoonEvents

JSON 表示法
{
  "moonriseTimes": [
    string
  ],
  "moonsetTimes": [
    string
  ],
  "moonPhase": enum (MoonPhase)
}
字段
moonriseTimes[]

string (Timestamp format)

月球上边缘出现在地平线上方的时间(请参阅 https://en.wikipedia.org/wiki/Moonrise_and_moonset))。

注意:在大多数情况下,每天只有一个月出时间。在其他情况下,该列表可能为空(例如,当月亮在次日午夜之后升起时)。不过,在特殊情况下(例如在极地地区),该列表可能包含多个值。在这些情况下,值会按升序排序。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

moonsetTimes[]

string (Timestamp format)

月球上边缘消失在地平线以下的时间(请参阅 https://en.wikipedia.org/wiki/Moonrise_and_moonset))。

注意:在大多数情况下,每天只有一个月落时间。在其他情况下,该列表可能为空(例如,月亮在次日午夜之后落下)。不过,在特殊情况下(例如在极地地区),该列表可能包含多个值。在这些情况下,值会按升序排序。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

moonPhase

enum (MoonPhase)

月相。

WeatherCondition

JSON 表示法
{
  "iconBaseUri": string,
  "description": {
    object (LocalizedText)
  },
  "type": enum (Type)
}
字段
iconBaseUri

string

图标的基础 URI,不包括文件类型扩展名。如需显示图标,请根据需要在此 URI 后附加主题和文件类型扩展名(.png 或 .svg)。默认情况下,图标采用浅色主题,但可以附加 _dark 以采用深色模式。例如:“https://maps.gstatic.com/weather/v1/dust.svg”或“https://maps.gstatic.com/weather/v1/dust_dark.svg”,其中 icon_base_uri 为“https://maps.gstatic.com/weather/v1/dust”。

description

object (LocalizedText)

此天气状况的文字说明(本地化)。

type

enum (Type)

天气状况的类型。

LocalizedText

JSON 表示法
{
  "text": string,
  "languageCode": string
}
字段
text

string

与下方的 google.type.LocalizedText.language_code 对应的语言的本地化字符串。

languageCode

string

文本的 BCP-47 语言代码,例如“en-US”或“sr-Latn”。

如需了解详情,请参阅 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier。

降水概率

JSON 表示法
{
  "probability": {
    object (PrecipitationProbability)
  },
  "snowQpf": {
    object (QuantitativePrecipitationForecast)
  },
  "qpf": {
    object (QuantitativePrecipitationForecast)
  }
}
字段
probability

object (PrecipitationProbability)

降水概率(值介于 0 到 100 之间)。

snowQpf

object (QuantitativePrecipitationForecast)

一段时间内累积的降雪量,以液态水当量衡量。注意:QPF 是 Quantitative Precipitation Forecast(定量降水预报)的缩写(如需了解详情,请参阅 QuantitativePrecipitationForecast 定义)。

qpf

object (QuantitativePrecipitationForecast)

一段时间内累积的降水量(以液态水当量衡量)。注意:QPF 是 Quantitative Precipitation Forecast(定量降水预报)的缩写(如需了解详情,请参阅 QuantitativePrecipitationForecast 定义)。

PrecipitationProbability

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.
}
字段
type

enum (PrecipitationType)

表示降水类型的代码。

联合字段 _percent。

_percent 只能是下列其中一项:

percent

integer

一个 0 到 100 之间的百分比,表示降水概率。

QuantitativePrecipitationForecast

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.
}
字段
unit

enum (Unit)

用于测量累计降水量的单位的代码。

联合字段 _quantity。

_quantity 只能是下列其中一项:

quantity

number

一段时间内累积的降水量(以液态水当量衡量)。

Wind

JSON 表示法
{
  "direction": {
    object (WindDirection)
  },
  "speed": {
    object (WindSpeed)
  },
  "gust": {
    object (WindSpeed)
  }
}
字段
direction

object (WindDirection)

风向,即风吹来的角度。

speed

object (WindSpeed)

风速。

gust

object (WindSpeed)

阵风(风速突然增加)。

WindDirection

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.
}
字段
cardinal

enum (CardinalDirection)

表示风吹来的基本方向的代码。

联合字段 _degrees。

_degrees 只能是下列其中一项:

degrees

integer

风向,以度为单位(值介于 0 到 360 之间)。

WindSpeed

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.
}
字段
unit

enum (SpeedUnit)

表示风速测量单位的代码。

联合字段 _value。

_value 只能是下列其中一项:

value

number

风速值。

位置

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.
}
字段
联合字段 location_type。表示位置的不同方式。location_type 只能是下列其中一项:
latLng

object (LatLng)

使用地理坐标指定的点。

placeId

string

与营业地点相关联的地点 ID。

address

string

人类可读地址或 Plus Code。如需了解详情,请参阅 https://plus.codes。

LatLng

JSON 表示法
{
  "latitude": number,
  "longitude": number
}
字段
latitude

number

纬度(以度为单位)。它必须在 [-90.0, +90.0] 范围内。

longitude

number

经度(以度为单位)。它必须在 [-180.0, +180.0] 范围内。

归因

JSON 表示法
{
  "title": string,
  "url": string
}
字段
title

string

要为提供方显示的标题。

url

string

要链接到的归因网址。

TemperatureUnit

表示用于测量温度的单位。

枚举
TEMPERATURE_UNIT_UNSPECIFIED 未指定温度单位。
CELSIUS 温度以摄氏度为单位。
FAHRENHEIT 温度以华氏度为单位。

MoonPhase

标记月相。

枚举
MOON_PHASE_UNSPECIFIED 未指定月相。
NEW_MOON 月球没有被太阳照亮。
WAXING_CRESCENT 月球右侧(北半球 🌒)或左侧(南半球 🌘)有 0%-50% 的区域被照亮。
FIRST_QUARTER 月球在北半球右侧被照亮 50.1% 🌓,在南半球左侧被照亮 50.1% 🌗。
WAXING_GIBBOUS 在北半球,月球右侧有 50%-100% 的区域被照亮 🌔;在南半球,月球左侧有 50%-100% 的区域被照亮 🌖。
FULL_MOON 月球完全被照亮。
WANING_GIBBOUS 月球在北半球左侧 50%-100% 的区域被照亮 🌖,在南半球右侧 50%-100% 的区域被照亮 🌔。
LAST_QUARTER 月球在北半球的左侧 🌗 和南半球的右侧 🌓 被照亮 50.1%。
WANING_CRESCENT 月球左侧(北半球 🌘)或右侧(南半球 🌒)有 0%-50% 的区域被照亮。

类型

在天气预报元素上下文中标记天气状况类型。

枚举
TYPE_UNSPECIFIED 天气状况未指定。
CLEAR 无云。
MOSTLY_CLEAR 间歇性多云。
PARTLY_CLOUDY 局部多云(有少量云)。
MOSTLY_CLOUDY 以多云为主(云多于晴)。
CLOUDY 多云(全是云,没有太阳)。
WINDY 大风。
WIND_AND_RAIN 大风伴有降水。
LIGHT_RAIN_SHOWERS 间歇性小雨。
CHANCE_OF_SHOWERS 可能有间歇性降雨。
SCATTERED_SHOWERS 间歇性降雨。
RAIN_SHOWERS 阵雨是指持续时间比雨短的降雨,其特点是开始和停止时间具有突发性,且强度变化迅速。
HEAVY_RAIN_SHOWERS 强阵雨。
LIGHT_TO_MODERATE_RAIN 雨(小到中雨)。
MODERATE_TO_HEAVY_RAIN 雨(中到大雨)。
RAIN 中雨。
LIGHT_RAIN 小雨。
HEAVY_RAIN 大雨。
RAIN_PERIODICALLY_HEAVY 雨,偶有大雨。
LIGHT_SNOW_SHOWERS 小雪,短时间内降雪强度会有所变化。
CHANCE_OF_SNOW_SHOWERS 或有阵雪。
SCATTERED_SNOW_SHOWERS 短时间内以不同强度降雪。
SNOW_SHOWERS 阵雪。
HEAVY_SNOW_SHOWERS 强阵雪。
LIGHT_TO_MODERATE_SNOW 小到中雪。
MODERATE_TO_HEAVY_SNOW 中到大雪。
SNOW 中雪。
LIGHT_SNOW 小雪。
HEAVY_SNOW 大雪。
SNOWSTORM 有雪,可能伴有雷电。
SNOW_PERIODICALLY_HEAVY 雪,有时大雪。
HEAVY_SNOW_STORM 大雪,可能伴有雷电。
BLOWING_SNOW 降雪,伴有强风。
RAIN_AND_SNOW 雨夹雪。
HAIL 冰雹。
HAIL_SHOWERS 短时间内以不同强度降落的冰雹。
THUNDERSTORM 雷暴。
THUNDERSHOWER 伴有雷电的阵雨。
LIGHT_THUNDERSTORM_RAIN 轻度雷暴夹雨。
SCATTERED_THUNDERSTORMS 雷暴,伴有不同强度的短时降雨。
HEAVY_THUNDERSTORM 强雷暴。

PrecipitationType

表示指定位置的降水类型。

枚举
PRECIPITATION_TYPE_UNSPECIFIED 未指定的降水类型。
NONE 无降水。
SNOW 降雪。
RAIN 降雨。
LIGHT_RAIN 小雨。
HEAVY_RAIN 大雨。
RAIN_AND_SNOW 雨雪天气。
SLEET 雨夹雪。
FREEZING_RAIN 冻雨。

单位

表示用于测量累积降水量的单位。

枚举
UNIT_UNSPECIFIED 未指定降水量单位。
MILLIMETERS 降水量以毫米为单位。
INCHES 降水量以英寸为单位。

CardinalDirection

表示基本方向(包括序数方向)。

枚举
CARDINAL_DIRECTION_UNSPECIFIED 未指定基本方向。
NORTH 北向。
NORTH_NORTHEAST 北东北次级间方位。
NORTHEAST 东北方向。
EAST_NORTHEAST 东北偏东次要间方位。
EAST 东。
EAST_SOUTHEAST 东南偏东次级间方位。
SOUTHEAST 东南方向。
SOUTH_SOUTHEAST 南偏东南次要间方位。
SOUTH 南。
SOUTH_SOUTHWEST 南西南次要间方位。
SOUTHWEST 西南方向。
WEST_SOUTHWEST 西南偏西次级间方位。
WEST 西方。
WEST_NORTHWEST 西西北次要间方位。
NORTHWEST 西北方向。
NORTH_NORTHWEST 北西北次要间方位。

SpeedUnit

表示用于测量速度的单位。

枚举
SPEED_UNIT_UNSPECIFIED 未指定速度单位。
KILOMETERS_PER_HOUR 速度以公里/小时为单位。
MILES_PER_HOUR 速度以英里/小时为单位。

工具注释

工具注解会发送到 MCP 客户端,用于描述给定工具的基本风险。大多数客户端会将这些提示视为不可信,但可用于决定何时向用户发送确认提示。

除了标题字符串之外,还定义了以下布尔值提示:

  • readOnlyHint:如果为 true,则该工具不会修改其环境。默认值:false。
  • destructiveHint:如果为 true,则该工具可以执行破坏性操作。如果为 false,则该工具只能执行添加操作。默认值:true。
  • idempotentHint:如果为 true,则使用相同参数重复调用该工具不会对其环境产生额外影响。默认值:false。
  • openWorldHint:如果为 true,则该工具可以与外部实体的“开放世界”进行交互。如果为 false,则该工具只能与内部实体交互。例如,网页搜索工具是开放世界,而记忆工具不是开放世界。

破坏性提示:❌ | 幂等性提示:❌ | 只读提示:✅ | 开放世界提示:❌