Sunrise & Sunset Times

Sunrise, sunset, twilight, golden hour and moon times for any place on Earth. Free, no API key.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
100%
이름 품질
100%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~3,561토큰 (도구 정의)
~19.9 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 2.78%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "sun-times": {
      "url": "https://api.sunrise-sunset.org/mcp"
    }
  }
}

원격 엔드포인트

https://api.sunrise-sunset.org/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (2)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_sun_times(lat, lng, tz, date)

Sunrise, sunset, solar noon, day length, civil/nautical/astronomical twilight, dawn/dusk, first/last light, golden hour, blue hour, sunrise/sunset azimuth, solar noon altitude, moonrise/moonset, moon phase and illumination for any coordinates on Earth and any date. Times are ISO 8601 in the local timezone of the location. Polar day/night handled via sun_status (normal | midnight_sun | polar_night); events that do not occur are null.

입력 스키마

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude in decimal degrees."
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude in decimal degrees."
    },
    "tz": {
      "type": "string",
      "description": "IANA timezone like 'Europe/Madrid'. Omit to use the local timezone of the coordinates, resolved automatically (recommended)."
    },
    "date": {
      "type": "string",
      "description": "'today' (default), 'tomorrow' or YYYY-MM-DD. Relative dates resolve in the local timezone of the coordinates."
    }
  },
  "required": [
    "lat",
    "lng"
  ]
}

출력 스키마

{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "description": "Local date, YYYY-MM-DD."
    },
    "tzid": {
      "type": "string",
      "description": "IANA timezone used."
    },
    "utc_offset": {
      "type": "string",
      "description": "UTC offset of the location at local noon, like +02:00."
    },
    "lat": {
      "type": "number"
    },
    "lng": {
      "type": "number"
    },
    "sunrise": {
      "type": [
        "string",
        "null"
      ],
      "description": "Sunrise, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "sunset": {
      "type": [
        "string",
        "null"
      ],
      "description": "Sunset, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "solar_noon": {
      "type": [
        "string",
        "null"
      ],
      "description": "Solar noon, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "day_length": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Seconds of daylight: 86400 with midnight sun, 0 with polar night, null on a day with only one of sunrise/sunset."
    },
    "sun_status": {
      "type": "string",
      "enum": [
        "normal",
        "midnight_sun",
        "polar_night"
      ]
    },
    "civil_twilight_begin": {
      "type": [
        "string",
        "null"
      ],
      "description": "Start of civil twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "civil_twilight_end": {
      "type": [
        "string",
        "null"
      ],
      "description": "End of civil twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "nautical_twilight_begin": {
      "type": [
        "string",
        "null"
      ],
      "description": "Start of nautical twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "nautical_twilight_end": {
      "type": [
        "string",
        "null"
      ],
      "description": "End of nautical twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "astronomical_twilight_begin": {
      "type": [
        "string",
        "null"
      ],
      "description": "Start of astronomical twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "astronomical_twilight_end": {
      "type": [
        "string",
        "null"
      ],
      "description": "End of astronomical twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "dawn": {
      "type": [
        "string",
        "null"
      ],
      "description": "Dawn (start of civil twilight), ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "dusk": {
      "type": [
        "string",
        "null"
      ],
      "description": "Dusk (end of civil twilight), ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "first_light": {
      "type": [
        "string",
        "null"
      ],
      "description": "First light (start of astronomical twilight), ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "last_light": {
      "type": [
        "string",
        "null"
      ],
      "description": "Last light (end of astronomical twilight), ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "golden_hour": {
      "type": "object",
      "properties": {
        "morning": {
          "type": "object",
          "properties": {
            "begin": {
              "type": [
                "string",
                "null"
              ],
              "description": "Start of the morning golden hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
            },
            "end": {
              "type": [
                "string",
                "null"
              ],
              "description": "End of the morning golden hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
            }
          },
          "required": [
            "begin",
            "end"
          ]
        },
        "evening": {
          "type": "object",
          "properties": {
            "begin": {
              "type": [
                "string",
                "null"
              ],
              "description": "Start of the evening golden hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
            },
            "end": {
              "type": [
                "string",
                "null"
              ],
              "description": "End of the evening golden hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
            }
          },
          "required": [
            "begin",
            "end"
          ]
        }
      },
      "required": [
        "morning",
        "evening"
      ]
    },
    "blue_hour": {
      "type": "object",
      "properties": {
        "morning": {
          "type": "object",
          "properties": {
            "begin": {
              "type": [
                "string",
                "null"
              ],
              "description": "Start of the morning blue hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
            },
            "end": {
              "type": [
                "string",
                "null"
              ],
              "description": "End of the morning blue hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
            }
          },
          "required": [
            "begin",
            "end"
          ]
        },
        "evening": {
          "type": "object",
          "properties": {
            "begin": {
              "type": [
                "string",
                "null"
              ],
              "description": "Start of the evening blue hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
            },
            "end": {
              "type": [
                "string",
                "null"
              ],
              "description": "End of the evening blue hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
            }
          },
          "required": [
            "begin",
            "end"
          ]
        }
      },
      "required": [
        "morning",
        "evening"
      ]
    },
    "solar_position": {
      "type": "object",
      "properties": {
        "sunrise_azimuth": {
          "type": [
            "number",
            "null"
          ],
          "description": "Azimuth of the sun at sunrise in degrees; null if the event does not happen."
        },
        "sunset_azimuth": {
          "type": [
            "number",
            "null"
          ],
          "description": "Azimuth of the sun at sunset in degrees; null if the event does not happen."
        },
        "solar_noon_azimuth": {
          "type": [
            "number",
            "null"
          ],
          "description": "Azimuth of the sun at solar noon in degrees; null if the event does not happen."
        },
        "solar_noon_altitude": {
          "type": [
            "number",
            "null"
          ],
          "description": "Altitude of the sun at solar noon in degrees; null if the event does not happen."
        }
      },
      "required": [
        "sunrise_azimuth",
        "sunset_azimuth",
        "solar_noon_azimuth",
        "solar_noon_altitude"
      ]
    },
    "moonrise": {
      "type": [
        "string",
        "null"
      ],
      "description": "Moonrise, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "moonset": {
      "type": [
        "string",
        "null"
      ],
      "description": "Moonset, ISO 8601 with the local UTC offset; null if it does not happen that day."
    },
    "moon_phase": {
      "type": "string",
      "enum": [
        "New Moon",
        "Waxing Crescent",
        "First Quarter",
        "Waxing Gibbous",
        "Full Moon",
        "Waning Gibbous",
        "Last Quarter",
        "Waning Crescent"
      ],
      "description": "Moon phase at local noon."
    },
    "moon_illumination": {
      "type": "number",
      "description": "Illuminated fraction of the moon at local noon, in percent (0-100)."
    },
    "attribution": {
      "type": "string"
    }
  },
  "required": [
    "date",
    "tzid",
    "utc_offset",
    "lat",
    "lng",
    "sunrise",
    "sunset",
    "solar_noon",
    "day_length",
    "sun_status",
    "civil_twilight_begin",
    "civil_twilight_end",
    "nautical_twilight_begin",
    "nautical_twilight_end",
    "astronomical_twilight_begin",
    "astronomical_twilight_end",
    "dawn",
    "dusk",
    "first_light",
    "last_light",
    "golden_hour",
    "blue_hour",
    "solar_position",
    "moonrise",
    "moonset",
    "moon_phase",
    "moon_illumination"
  ]
}
🟢get_sun_times_range(lat, lng, tz, date_start, date_end)

Same per-day data as get_sun_times but for an inclusive date range (up to 366 days) in a single call. Use this instead of repeated get_sun_times calls when you need several consecutive days. The days array may contain fewer entries than the number of dates requested: calendar days that never existed in that timezone (Samoa skipped 30 December 2011 when it crossed the date line) are left out, so read each entry's date field instead of assuming one per requested date.

입력 스키마

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude in decimal degrees."
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude in decimal degrees."
    },
    "tz": {
      "type": "string",
      "description": "IANA timezone like 'Europe/Madrid'. Omit to use the local timezone of the coordinates, resolved automatically (recommended)."
    },
    "date_start": {
      "type": "string",
      "description": "First day, YYYY-MM-DD."
    },
    "date_end": {
      "type": "string",
      "description": "Last day (inclusive), YYYY-MM-DD. The range covers at most 366 days counting both ends, so date_end can be at most 365 days after date_start."
    }
  },
  "required": [
    "lat",
    "lng",
    "date_start",
    "date_end"
  ]
}

출력 스키마

{
  "type": "object",
  "properties": {
    "tzid": {
      "type": "string",
      "description": "IANA timezone used."
    },
    "lat": {
      "type": "number"
    },
    "lng": {
      "type": "number"
    },
    "days": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "description": "Local date, YYYY-MM-DD."
          },
          "utc_offset": {
            "type": "string",
            "description": "UTC offset of the location at local noon, like +02:00."
          },
          "sunrise": {
            "type": [
              "string",
              "null"
            ],
            "description": "Sunrise, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "sunset": {
            "type": [
              "string",
              "null"
            ],
            "description": "Sunset, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "solar_noon": {
            "type": [
              "string",
              "null"
            ],
            "description": "Solar noon, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "day_length": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Seconds of daylight: 86400 with midnight sun, 0 with polar night, null on a day with only one of sunrise/sunset."
          },
          "sun_status": {
            "type": "string",
            "enum": [
              "normal",
              "midnight_sun",
              "polar_night"
            ]
          },
          "civil_twilight_begin": {
            "type": [
              "string",
              "null"
            ],
            "description": "Start of civil twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "civil_twilight_end": {
            "type": [
              "string",
              "null"
            ],
            "description": "End of civil twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "nautical_twilight_begin": {
            "type": [
              "string",
              "null"
            ],
            "description": "Start of nautical twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "nautical_twilight_end": {
            "type": [
              "string",
              "null"
            ],
            "description": "End of nautical twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "astronomical_twilight_begin": {
            "type": [
              "string",
              "null"
            ],
            "description": "Start of astronomical twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "astronomical_twilight_end": {
            "type": [
              "string",
              "null"
            ],
            "description": "End of astronomical twilight, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "dawn": {
            "type": [
              "string",
              "null"
            ],
            "description": "Dawn (start of civil twilight), ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "dusk": {
            "type": [
              "string",
              "null"
            ],
            "description": "Dusk (end of civil twilight), ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "first_light": {
            "type": [
              "string",
              "null"
            ],
            "description": "First light (start of astronomical twilight), ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "last_light": {
            "type": [
              "string",
              "null"
            ],
            "description": "Last light (end of astronomical twilight), ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "golden_hour": {
            "type": "object",
            "properties": {
              "morning": {
                "type": "object",
                "properties": {
                  "begin": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Start of the morning golden hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
                  },
                  "end": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "End of the morning golden hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
                  }
                },
                "required": [
                  "begin",
                  "end"
                ]
              },
              "evening": {
                "type": "object",
                "properties": {
                  "begin": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Start of the evening golden hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
                  },
                  "end": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "End of the evening golden hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
                  }
                },
                "required": [
                  "begin",
                  "end"
                ]
              }
            },
            "required": [
              "morning",
              "evening"
            ]
          },
          "blue_hour": {
            "type": "object",
            "properties": {
              "morning": {
                "type": "object",
                "properties": {
                  "begin": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Start of the morning blue hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
                  },
                  "end": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "End of the morning blue hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
                  }
                },
                "required": [
                  "begin",
                  "end"
                ]
              },
              "evening": {
                "type": "object",
                "properties": {
                  "begin": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Start of the evening blue hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
                  },
                  "end": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "End of the evening blue hour, ISO 8601 with the local UTC offset; null if it does not happen that day."
                  }
                },
                "required": [
                  "begin",
                  "end"
                ]
              }
            },
            "required": [
              "morning",
              "evening"
            ]
          },
          "solar_position": {
            "type": "object",
            "properties": {
              "sunrise_azimuth": {
                "type": [
                  "number",
                  "null"
                ],
                "description": "Azimuth of the sun at sunrise in degrees; null if the event does not happen."
              },
              "sunset_azimuth": {
                "type": [
                  "number",
                  "null"
                ],
                "description": "Azimuth of the sun at sunset in degrees; null if the event does not happen."
              },
              "solar_noon_azimuth": {
                "type": [
                  "number",
                  "null"
                ],
                "description": "Azimuth of the sun at solar noon in degrees; null if the event does not happen."
              },
              "solar_noon_altitude": {
                "type": [
                  "number",
                  "null"
                ],
                "description": "Altitude of the sun at solar noon in degrees; null if the event does not happen."
              }
            },
            "required": [
              "sunrise_azimuth",
              "sunset_azimuth",
              "solar_noon_azimuth",
              "solar_noon_altitude"
            ]
          },
          "moonrise": {
            "type": [
              "string",
              "null"
            ],
            "description": "Moonrise, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "moonset": {
            "type": [
              "string",
              "null"
            ],
            "description": "Moonset, ISO 8601 with the local UTC offset; null if it does not happen that day."
          },
          "moon_phase": {
            "type": "string",
            "enum": [
              "New Moon",
              "Waxing Crescent",
              "First Quarter",
              "Waxing Gibbous",
              "Full Moon",
              "Waning Gibbous",
              "Last Quarter",
              "Waning Crescent"
            ],
            "description": "Moon phase at local noon."
          },
          "moon_illumination": {
            "type": "number",
            "description": "Illuminated fraction of the moon at local noon, in percent (0-100)."
          }
        },
        "required": [
          "date",
          "utc_offset",
          "sunrise",
          "sunset",
          "solar_noon",
          "day_length",
          "sun_status",
          "civil_twilight_begin",
          "civil_twilight_end",
          "nautical_twilight_begin",
          "nautical_twilight_end",
          "astronomical_twilight_begin",
          "astronomical_twilight_end",
          "dawn",
          "dusk",
          "first_light",
          "last_light",
          "golden_hour",
          "blue_hour",
          "solar_position",
          "moonrise",
          "moonset",
          "moon_phase",
          "moon_illumination"
        ]
      },
      "description": "One entry per local day that exists in that timezone, in order; match entries by their date field."
    },
    "attribution": {
      "type": "string"
    }
  },
  "required": [
    "tzid",
    "lat",
    "lng",
    "days"
  ]
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 2개