MAD Synapse · World
Weather, geocoding, FX rates, holidays, time zones, countries, earthquakes, sun and moon.
使うべきか
品質と安全性
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"synapse-world": {
"url": "https://agent.maddegen.art/hub/mcp/world"
}
}
}リモートエンドポイント
https://agent.maddegen.art/hub/mcp/worldstreamable-httpできること
ツール一覧
ツール(8)
🟢weather(place, days, tz)
Current weather and hourly/daily forecast for any place name or lat,lon: temperature, feels-like, wind, gusts, rain, cloud, humidity, UV — up to 9 days. Forecast from the Norwegian Meteorological Institute (MET Norway), the same model data yr.no uses, worldwide. Place names are geocoded with OpenStreetMap. Times are UTC plus local time when tz is given (IANA, e.g. Australia/Sydney). Price: $0.001 per call (10 free/day; after that a payment-required result lists x402 options). Errors: returns isError with a message for invalid input or an upstream failure (not charged).
入力スキーマ
{
"type": "object",
"properties": {
"place": {
"type": "string",
"description": "city/address or \"lat,lon\""
},
"days": {
"type": "integer",
"minimum": 1,
"maximum": 9,
"default": 3,
"description": "Days of daily forecast to include. Range 1-9. Default 3."
},
"tz": {
"type": "string",
"description": "IANA time zone for local times (optional)"
}
},
"required": [
"place"
],
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"place": {
"type": [
"string",
"null"
]
},
"lat": {
"type": [
"number",
"null"
]
},
"lon": {
"type": [
"number",
"null"
]
},
"updated": {
"type": [
"string",
"null"
]
},
"now": {
"type": [
"object",
"null"
],
"properties": {
"time": {
"type": [
"string",
"null"
]
},
"temp_c": {
"type": [
"number",
"null"
]
},
"feels_like_c": {
"type": [
"number",
"null"
]
},
"sky": {
"type": [
"string",
"null"
]
},
"humidity_pct": {
"type": [
"number",
"null"
]
},
"wind_ms": {
"type": [
"number",
"null"
]
},
"wind_kmh": {
"type": [
"number",
"null"
]
},
"wind_gust_ms": {},
"wind_from_deg": {
"type": [
"number",
"null"
]
},
"pressure_hpa": {
"type": [
"number",
"null"
]
},
"cloud_pct": {
"type": [
"number",
"null"
]
},
"uv_index": {
"type": [
"number",
"null"
]
},
"dew_point_c": {
"type": [
"number",
"null"
]
},
"rain_next_hour_mm": {
"type": [
"number",
"null"
]
}
}
},
"daily": {
"type": "array",
"items": {
"type": [
"object",
"null"
],
"properties": {
"date": {
"type": [
"string",
"null"
]
},
"min_c": {
"type": [
"number",
"null"
]
},
"max_c": {
"type": [
"number",
"null"
]
},
"rain_mm": {
"type": [
"number",
"null"
]
},
"max_wind_ms": {
"type": [
"number",
"null"
]
},
"max_gust_ms": {},
"sky": {
"type": [
"string",
"null"
]
}
}
}
},
"hourly_48h": {
"type": "array",
"items": {
"type": [
"object",
"null"
],
"properties": {
"time": {
"type": [
"string",
"null"
]
},
"local": {
"type": [
"string",
"null"
]
},
"temp_c": {
"type": [
"number",
"null"
]
},
"wind_ms": {
"type": [
"number",
"null"
]
},
"rain_mm": {
"type": [
"number",
"null"
]
},
"rain_prob_pct": {},
"sky": {
"type": [
"string",
"null"
]
}
}
}
},
"source": {
"type": [
"string",
"null"
]
}
}
}🟢geocode(query, limit)
Place name or address → coordinates (with city, state, country, postcode), or lat,lon → the nearest address. Up to 10 candidates. OpenStreetMap data via Photon. Returns OSM links so results can be checked. When to use: To turn names into coordinates; weather and sun_moon accept place names directly. Price: $0.001 per call (10 free/day; after that a payment-required result lists x402 options). Errors: returns isError with a message for invalid input or an upstream failure (not charged).
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "address/place, or \"lat,lon\" for reverse"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 3,
"description": "How many candidate matches to return. Range 1-10. Default 3."
}
},
"required": [
"query"
],
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"mode": {
"type": [
"string",
"null"
]
},
"query": {
"type": [
"string",
"null"
]
},
"results": {
"type": "array",
"items": {
"type": [
"object",
"null"
],
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"type": {
"type": [
"string",
"null"
]
},
"city": {},
"state": {
"type": [
"string",
"null"
]
},
"country": {
"type": [
"string",
"null"
]
},
"country_code": {
"type": [
"string",
"null"
]
},
"postcode": {},
"street": {},
"lat": {
"type": [
"number",
"null"
]
},
"lon": {
"type": [
"number",
"null"
]
},
"osm": {
"type": [
"string",
"null"
]
}
}
}
},
"attribution": {
"type": [
"string",
"null"
]
}
}
}🟢fx_rates(from, to, amount, date, end_date)
Official exchange rates for 30 major currencies (European Central Bank reference rates): latest or any date since 1999, convert an amount, or a time series. Frankfurter API over ECB reference rates, published each working day ~16:00 CET. For crypto use crypto_price. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
入力スキーマ
{
"type": "object",
"properties": {
"from": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"default": "USD",
"description": "Base currency ISO 4217 code, e.g. \"USD\". Default \"USD\"."
},
"to": {
"type": "array",
"maxItems": 30,
"items": {
"type": "string",
"pattern": "^[A-Za-z]{3}$"
},
"description": "targets (default: all) 0-30 items."
},
"amount": {
"type": "number",
"minimum": 0,
"default": 1,
"description": "Amount of the base currency to convert. Default 1."
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "historical date (optional)"
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "with date: returns a daily series"
}
},
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"from": {
"type": [
"string",
"null"
]
},
"amount": {
"type": [
"number",
"null"
]
},
"date": {
"type": [
"string",
"null"
]
},
"rates": {
"type": [
"object",
"null"
],
"properties": {
"AUD": {
"type": [
"number",
"null"
]
},
"EUR": {
"type": [
"number",
"null"
]
},
"JPY": {
"type": [
"number",
"null"
]
}
}
},
"source": {
"type": [
"string",
"null"
]
}
}
}🟢holidays(country, year)
Public holidays for 100+ countries for any year, whether today is a holiday there, and the next upcoming ones — including regional (state) holidays. Nager.Date open holiday data. Use for scheduling, market-closure awareness or delivery estimates. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
入力スキーマ
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "ISO code or name, e.g. AU, United States"
},
"year": {
"type": "integer",
"minimum": 1975,
"maximum": 2075,
"description": "Calendar year; defaults to the current year. Range 1975-2075."
}
},
"required": [
"country"
],
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"country": {
"type": [
"string",
"null"
]
},
"code": {
"type": [
"string",
"null"
]
},
"year": {
"type": [
"number",
"null"
]
},
"today_is_holiday": {
"type": "array"
},
"next": {
"type": "array",
"items": {
"type": [
"object",
"null"
],
"properties": {
"date": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"local_name": {
"type": [
"string",
"null"
]
},
"nationwide": {
"type": [
"boolean",
"null"
]
},
"regions": {},
"types": {
"type": "array"
}
}
}
},
"holidays": {
"type": "array",
"items": {
"type": [
"object",
"null"
],
"properties": {
"date": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"local_name": {
"type": [
"string",
"null"
]
},
"nationwide": {
"type": [
"boolean",
"null"
]
},
"regions": {},
"types": {
"type": "array"
}
}
}
},
"source": {
"type": [
"string",
"null"
]
}
}
}🟢time_convert(time, from_tz, to_tz, add, until)
Current time in any time zones, convert a time between zones (DST-correct), and date arithmetic: add/subtract durations, days between dates, weekday, ISO week, Unix time. Computed locally from the IANA time-zone database — no rate limits, exact. Zones are IANA names (America/New_York, Asia/Tokyo, UTC). Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
入力スキーマ
{
"type": "object",
"properties": {
"time": {
"type": "string",
"description": "ISO time, \"now\", or a Unix timestamp; naive times are read in from_tz"
},
"from_tz": {
"type": "string",
"default": "UTC",
"description": "IANA time zone the input time is in, e.g. \"America/New_York\". Default \"UTC\"."
},
"to_tz": {
"type": "array",
"maxItems": 20,
"items": {
"type": "string"
},
"default": [
"UTC"
],
"description": "IANA time zones to convert into. 0-20 items. Default [\"UTC\"]."
},
"add": {
"type": "string",
"description": "e.g. \"+3d 4h\", \"-90m\", \"+2w\""
},
"until": {
"type": "string",
"description": "second ISO date: returns the difference"
}
},
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"input_utc": {
"type": [
"string",
"null"
]
},
"added": {
"type": [
"string",
"null"
]
},
"utc": {
"type": [
"string",
"null"
]
},
"unix": {
"type": [
"number",
"null"
]
},
"iso_week": {
"type": [
"number",
"null"
]
},
"source_zone": {
"type": [
"object",
"null"
],
"properties": {
"zone": {
"type": [
"string",
"null"
]
},
"local": {
"type": [
"string",
"null"
]
},
"readable": {
"type": [
"string",
"null"
]
},
"utc_offset": {
"type": [
"string",
"null"
]
}
}
},
"converted": {
"type": "array",
"items": {
"type": [
"object",
"null"
],
"properties": {
"zone": {
"type": [
"string",
"null"
]
},
"local": {
"type": [
"string",
"null"
]
},
"readable": {
"type": [
"string",
"null"
]
},
"utc_offset": {
"type": [
"string",
"null"
]
}
}
}
}
}
}🟢country_info(country)
Any country's essentials: capital, population, GDP and GDP per capita (World Bank), currencies, languages, calling code, internet TLD, time zones, driving side, borders, flag. Static facts from the world-countries dataset (no rate limits) plus the latest World Bank population and GDP figures. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
入力スキーマ
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "name or ISO code"
}
},
"required": [
"country"
],
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"official_name": {
"type": [
"string",
"null"
]
},
"cca2": {
"type": [
"string",
"null"
]
},
"cca3": {
"type": [
"string",
"null"
]
},
"capital": {
"type": "array",
"items": {
"type": [
"string",
"null"
]
}
},
"region": {
"type": [
"string",
"null"
]
},
"subregion": {
"type": [
"string",
"null"
]
},
"population": {
"type": [
"object",
"null"
],
"properties": {
"value": {
"type": [
"number",
"null"
]
},
"year": {
"type": [
"number",
"null"
]
}
}
},
"gdp_usd": {
"type": [
"object",
"null"
],
"properties": {
"value": {
"type": [
"number",
"null"
]
},
"year": {
"type": [
"number",
"null"
]
}
}
},
"gdp_per_capita_usd": {
"type": [
"object",
"null"
],
"properties": {
"value": {
"type": [
"number",
"null"
]
},
"year": {
"type": [
"number",
"null"
]
}
}
},
"area_km2": {
"type": [
"number",
"null"
]
},
"currencies": {
"type": "array",
"items": {
"type": [
"object",
"null"
],
"properties": {
"code": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"symbol": {
"type": [
"string",
"null"
]
}
}
}
},
"languages": {
"type": "array",
"items": {
"type": [
"string",
"null"
]
}
},
"calling_code": {
"type": [
"string",
"null"
]
},
"tld": {
"type": "array",
"items": {
"type": [
"string",
"null"
]
}
},
"landlocked": {
"type": [
"boolean",
"null"
]
},
"borders": {
"type": "array"
},
"latlng": {
"type": "array",
"items": {
"type": [
"number",
"null"
]
}
},
"flag": {
"type": [
"string",
"null"
]
},
"un_member": {
"type": [
"boolean",
"null"
]
},
"independent": {
"type": [
"boolean",
"null"
]
},
"demonym": {
"type": [
"string",
"null"
]
},
"source": {
"type": [
"string",
"null"
]
}
}
}🟢earthquakes(min_magnitude, period, near, radius_km, limit)
Earthquakes worldwide from the last hour to 30 days, filtered by minimum magnitude and optionally within a radius of a place — with depth, tsunami flag and USGS alert level. USGS real-time earthquake feeds (updated every minute). Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
入力スキーマ
{
"type": "object",
"properties": {
"min_magnitude": {
"type": "number",
"minimum": 0,
"maximum": 9,
"default": 4.5,
"description": "Only quakes at or above this magnitude. Range 0-9. Default 4.5."
},
"period": {
"type": "string",
"enum": [
"hour",
"day",
"week",
"month"
],
"default": "day",
"description": "Look-back window. One of \"hour\", \"day\", \"week\", \"month\". Default \"day\"."
},
"near": {
"type": "string",
"description": "place or lat,lon (optional)"
},
"radius_km": {
"type": "number",
"minimum": 10,
"maximum": 5000,
"default": 1000,
"description": "Search radius around the given place (only when a place is given). Range 10-5000. Default 1000."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 20,
"description": "How many quakes to return, largest first. Range 1-100. Default 20."
}
},
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"period": {
"type": [
"string",
"null"
]
},
"min_magnitude": {
"type": [
"number",
"null"
]
},
"count": {
"type": [
"number",
"null"
]
},
"strongest": {
"type": [
"object",
"null"
],
"properties": {
"time": {
"type": [
"string",
"null"
]
},
"magnitude": {
"type": [
"number",
"null"
]
},
"place": {
"type": [
"string",
"null"
]
},
"depth_km": {
"type": [
"number",
"null"
]
},
"lat": {
"type": [
"number",
"null"
]
},
"lon": {
"type": [
"number",
"null"
]
},
"tsunami_flag": {
"type": [
"boolean",
"null"
]
},
"alert": {
"type": [
"string",
"null"
]
},
"felt_reports": {
"type": [
"number",
"null"
]
},
"url": {
"type": [
"string",
"null"
]
}
}
},
"quakes": {
"type": "array",
"items": {
"type": [
"object",
"null"
],
"properties": {
"time": {
"type": [
"string",
"null"
]
},
"magnitude": {
"type": [
"number",
"null"
]
},
"place": {
"type": [
"string",
"null"
]
},
"depth_km": {
"type": [
"number",
"null"
]
},
"lat": {
"type": [
"number",
"null"
]
},
"lon": {
"type": [
"number",
"null"
]
},
"tsunami_flag": {
"type": [
"boolean",
"null"
]
},
"alert": {},
"felt_reports": {},
"url": {
"type": [
"string",
"null"
]
}
}
}
},
"source": {
"type": [
"string",
"null"
]
}
}
}🟢sun_moon(place, date, tz)
Sunrise, sunset, golden hour, twilight, day length and solar noon for any place and date — plus moon phase, illumination, moonrise and moonset. Astronomical calculation (SunCalc), exact and instant. Pass tz for local times. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
入力スキーマ
{
"type": "object",
"properties": {
"place": {
"type": "string",
"description": "Place name or \"lat,lon\"."
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "default today (UTC)"
},
"tz": {
"type": "string",
"description": "IANA zone for local times"
}
},
"required": [
"place"
],
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"place": {
"type": [
"string",
"null"
]
},
"lat": {
"type": [
"number",
"null"
]
},
"lon": {
"type": [
"number",
"null"
]
},
"date": {
"type": [
"string",
"null"
]
},
"times_in": {
"type": [
"string",
"null"
]
},
"sun": {
"type": [
"object",
"null"
],
"properties": {
"dawn": {
"type": [
"string",
"null"
]
},
"sunrise": {
"type": [
"string",
"null"
]
},
"golden_hour_morning_ends": {
"type": [
"string",
"null"
]
},
"solar_noon": {
"type": [
"string",
"null"
]
},
"golden_hour_evening_starts": {
"type": [
"string",
"null"
]
},
"sunset": {
"type": [
"string",
"null"
]
},
"dusk": {
"type": [
"string",
"null"
]
},
"night": {
"type": [
"string",
"null"
]
},
"day_length_hours": {
"type": [
"number",
"null"
]
},
"polar": {}
}
},
"moon": {
"type": [
"object",
"null"
],
"properties": {
"phase": {
"type": [
"string",
"null"
]
},
"phase_fraction": {
"type": [
"number",
"null"
]
},
"illumination_pct": {
"type": [
"number",
"null"
]
},
"rise": {
"type": [
"string",
"null"
]
},
"set": {
"type": [
"string",
"null"
]
},
"always_up": {
"type": [
"boolean",
"null"
]
},
"always_down": {
"type": [
"boolean",
"null"
]
}
}
}
}
}コミュニティ
エビデンス