Skip to main content
Glama

mcp-stargazing

mcp-Sternenbeobachtung

Berechnen Sie die Höhe sowie die Aufgangs- und Untergangszeiten von Himmelsobjekten (Sonne, Mond, Planeten, Sternen und Objekten im Weltraum) für jeden beliebigen Ort auf der Erde, mit optionaler Lichtverschmutzungsanalyse.

Merkmale

  • Höhen-/Azimutberechnung : Ermitteln Sie Höhe und Kompassrichtung für jedes Himmelsobjekt.
  • Aufgangs-/Untergangszeiten : Bestimmen Sie, wann Objekte über dem Horizont erscheinen/verschwinden.
  • Lichtverschmutzungsanalyse : Laden und analysieren Sie Lichtverschmutzungskarten (GeoTIFF-Format).
  • Unterstützt :
    • Objekte des Sonnensystems (Sonne, Mond, Planeten)
    • Sterne (zB „Sirius“)
    • Objekte im tiefen Weltraum (z. B. „Andromeda“, „Orionnebel“)
  • Zeitzonenbewusst : Funktioniert mit Orts- oder UTC-Zeiten.

Installation

pip install astropy pytz numpy astroquery rasterio geopy

Verwendung

Höhe/Azimut berechnen

from src.celestial import celestial_pos from astropy.coordinates import EarthLocation import pytz from datetime import datetime # Observer location (New York) location = EarthLocation(lat=40.7128, lon=-74.0060) # Time (local timezone-aware) local_time = pytz.timezone("America/New_York").localize(datetime(2023, 10, 1, 12, 0)) altitude, azimuth = celestial_pos("sun", location, local_time) print(f"Sun Position: Altitude={altitude:.1f}°, Azimuth={azimuth:.1f}°")

Anstiegs-/Untergangszeiten berechnen

from src.celestial import celestial_rise_set rise, set_ = celestial_rise_set("andromeda", location, local_time.date()) print(f"Andromeda: Rise={rise.iso}, Set={set_.iso}")

Lichtverschmutzungskarte laden

from src.light_pollution import load_map # Load a GeoTIFF light pollution map vriis_data, bounds, crs, transform = load_map("path/to/map.tif") print(f"Map Bounds: {bounds}")

API-Referenz

celestial_pos(celestial_object, observer_location, time) ( src/celestial.py )

  • Eingänge :
    • celestial_object : Name (z. "sun" , "andromeda" ).
    • observer_location : EarthLocation Objekt.
    • time : datetime (zeitzonenabhängig) oder Astropy- Time .
  • Gibt zurück : (altitude_degrees, azimuth_degrees) .

celestial_rise_set(celestial_object, observer_location, date, horizon=0.0) ( src/celestial.py )

  • Eingänge :
    • date : Zeitzonenbewusstes datetime .
    • horizon : Horizonthöhe (Standard: 0°).
  • Gibt zurück : (rise_time, set_time) als UTC- Time .

load_map(map_path) ( src/light_pollution.py )

  • Eingänge :
    • map_path : Pfad zur GeoTIFF-Datei.
  • Gibt zurück : Tupel (vriis_data, bounds, crs, transform) für die Lichtverschmutzungsanalyse.

Testen

Führen Sie Tests durch mit:

pytest tests/

Wichtige Testfälle ( tests/test_celestial.py )

def test_calculate_altitude_deepspace(): """Test deep-space object resolution.""" altitude, _ = celestial_pos("andromeda", NYC, Time.now()) assert -90 <= altitude <= 90 def test_calculate_rise_set_sun(): """Validate Sun rise/set times.""" rise, set_ = celestial_rise_set("sun", NYC, datetime(2023, 10, 1)) assert rise < set_

Projektstruktur

. ├── src/ │ ├── celestial.py # Core celestial calculations │ ├── light_pollution.py # Light pollution map utilities │ ├── utils.py # Time/location helpers │ └── main.py # CLI entry point ├── tests/ │ ├── test_celestial.py │ └── test_utils.py └── README.md

Zukünftige Arbeit

  • Unterstützung für Kometen/Asteroiden hinzufügen.
  • Optimieren Sie SIMBAD-Abfragen für die Offline-Verwendung.
  • Integrieren Sie Daten zur Lichtverschmutzung in Sichtbarkeitsvorhersagen.

Wichtige Updates:

  1. Lichtverschmutzung : light_pollution.py zu Funktionen und API-Referenz hinzugefügt.
  2. Abhängigkeiten : rasterio und geopy wurden den Installationsanweisungen hinzugefügt.
  3. Projektstruktur : Klargestellte Dateirollen und Testabdeckung.
-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Berechnen Sie die Höhe sowie die Aufgangs- und Untergangszeiten von Himmelsobjekten (Sonne, Mond, Planeten, Sternen und Objekten im Weltraum) für jeden beliebigen Ort auf der Erde.

  1. Merkmale
    1. Installation
      1. Verwendung
        1. Höhe/Azimut berechnen
        2. Anstiegs-/Untergangszeiten berechnen
        3. Lichtverschmutzungskarte laden
      2. API-Referenz
        1. celestial_pos(celestial_object, observer_location, time) ( src/celestial.py )
        2. celestial_rise_set(celestial_object, observer_location, date, horizon=0.0) ( src/celestial.py )
        3. load_map(map_path) ( src/light_pollution.py )
      3. Testen
        1. Wichtige Testfälle ( tests/test_celestial.py )
      4. Projektstruktur
        1. Zukünftige Arbeit
          1. Wichtige Updates:

        Related MCP Servers

        • A
          security
          A
          license
          A
          quality
          Fetches tide information for any location using latitude and longitude, providing detailed tide data including high/low tides and station information with automatic UTC time zone handling.
          Last updated -
          1
          14
          MIT License
          • Apple
        • A
          security
          F
          license
          A
          quality
          Provides altitude-azimuth coordinates for celestial objects including planets, over 117,000 stars, and 14,000 deep sky objects based on system time and configurable location.
          Last updated -
          3
          1
          • Apple
        • A
          security
          A
          license
          A
          quality
          Provides comprehensive time manipulation capabilities including timezone conversions, date arithmetic, business day calculations, duration calculations, and recurring event handling. Enables natural language time queries with high performance and intelligent caching.
          Last updated -
          11
          1
          MIT License
        • A
          security
          F
          license
          A
          quality
          Enables users to perform tarot card readings and generate horoscopes based on specified dates, times, and locations. Provides mystical divination services through tarot draws and astrological calculations.
          Last updated -
          2

        View all related MCP servers

        MCP directory API

        We provide all the information about MCP servers via our MCP API.

        curl -X GET 'https://glama.ai/api/mcp/v1/servers/StarGazer1995/mcp-stargazing'

        If you have feedback or need assistance with the MCP directory API, please join our Discord server