Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Offline observational astronomy: positions, rise/set, moon phases, eclipses, and seasons.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
MCP_LOG_LEVEL, ASTRONOMY_ENABLE_HORIZONS, ASTRONOMY_ENABLE_SATELLITES, ASTRONOMY_DEFAULT_TIMEZONE必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
https://astronomy.caseyjhand.com/mcpClaude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"astronomy": {
"command": "npx",
"args": [
"-y",
"@cyanheads/astronomy-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"ASTRONOMY_ENABLE_HORIZONS": "your-value",
"ASTRONOMY_ENABLE_SATELLITES": "your-value",
"ASTRONOMY_DEFAULT_TIMEZONE": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add --transport http astronomy https://astronomy.caseyjhand.com/mcpclaude mcp add astronomy --env MCP_LOG_LEVEL=your-value --env ASTRONOMY_ENABLE_HORIZONS=your-value --env ASTRONOMY_ENABLE_SATELLITES=your-value --env ASTRONOMY_DEFAULT_TIMEZONE=your-value -- npx -y @cyanheads/astronomy-mcp-server動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"astronomy": {
"url": "https://astronomy.caseyjhand.com/mcp"
}
}
}プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"astronomy": {
"command": "npx",
"args": [
"-y",
"@cyanheads/astronomy-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"ASTRONOMY_ENABLE_HORIZONS": "your-value",
"ASTRONOMY_ENABLE_SATELLITES": "your-value",
"ASTRONOMY_DEFAULT_TIMEZONE": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"astronomy": {
"type": "http",
"url": "https://astronomy.caseyjhand.com/mcp"
}
}
}プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"astronomy": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/astronomy-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"ASTRONOMY_ENABLE_HORIZONS": "your-value",
"ASTRONOMY_ENABLE_SATELLITES": "your-value",
"ASTRONOMY_DEFAULT_TIMEZONE": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
https://astronomy.caseyjhand.com/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
MCP_LOG_LEVEL envASTRONOMY_ENABLE_HORIZONS envASTRONOMY_ENABLE_SATELLITES envASTRONOMY_DEFAULT_TIMEZONE envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
ツールの名前と説明は、サーバーが2026年11月7日に返したそのままの内容です。書いたのは作者で、私たちではありません。プレーンテキストとして表示しています。
astronomy_get_sky_positionCompute the apparent topocentric position of one solar-system body (sun, moon, mercury through neptune, pluto) or a named bright star for an observer location and instant. Returns equatorial (RA/Dec), refraction-corrected horizontal (altitude/azimuth), and ecliptic coordinates, p
astronomy_get_rise_setCompute rise, set, and culmination (transit) times and maximum transit altitude for a body at an observer location. Searches forward from `start` (default now) for `count` daily cycles (default 1), including days without crossings. For the Sun, each cycle carries civil −6°, nauti
astronomy_get_moon_phaseReport the Moon phase for an instant: illuminated fraction, phase name, synodic age in days since the new moon, phase longitude (the Moon–Sun ecliptic-longitude difference, 180° at full), and the next four quarter phases (new, first quarter, full, last quarter) with timestamps. A
astronomy_find_eventsSearch forward from a start time for the next occurrences of one sky-event class, selected by the `event` enum: solar_eclipse, lunar_eclipse, equinox, solstice, moon_quarter, opposition, conjunction, max_elongation, or perigee_apogee. Both eclipse classes take an optional observe
astronomy_list_visibleThe one-call "what is up right now" answer. For an observer location and instant, iterate every naked-eye solar-system body (and, with include_stars, the bundled bright stars), compute altitude and azimuth, keep those above the horizon, rank them brightest-and-highest first, and
astronomy_get_ephemerisFetch a time-series ephemeris for a small body (asteroid or comet) or spacecraft from JPL Horizons — RA/Dec, distance, and apparent magnitude over a span, optionally with observer-relative altitude/azimuth. This covers objects the in-process major-body set cannot. The designation
astronomy_get_satellite_passesPredict visible passes of a satellite (e.g. the ISS, NORAD 25544) over an observer in the next `days`. Identify the satellite by exactly one of `norad_id` or `name` — supplying both, or neither, is rejected. A few well-known common names resolve directly to their catalog numbers,
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント cyanheads で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
249ミリ秒で応答(HTTP 200)
サインイン不要
7件のツールの説明を読み、AIへの隠れた指示は見つかりませんでした
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。
GitHubリポジトリの最終更新は–、最新バージョン(0.5.0)がレジストリに届いたのは10 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Tethered Trust
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Fit, compatibility and recall checks for AI agents before they buy: verdicts, evidence, receipts.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
@cyanheads/astronomy-mcp-server What's in the sky, computed offline — planet and moon positions, rise/set, phases, eclipses, and seasons for any place and time via MCP. STDIO or Streamable HTTP. 7 Tools • 1 Resource • 1 Prompt • 1 Skill
Public Hosted Server: https://astronomy.caseyjhand.com/mcp
Observational astronomy for any place and time: sky positions, rise/set and twilight times, moon phases, and the next eclipse, equinox, opposition, or conjunction — or just ask what's visible right now. Computed locally by astronomy-engine, with optional JPL Horizons ephemerides and satellite passes.
| Tool | Description |
|---|---|
astronomy_get_sky_position | Apparent position of one body or named star: RA/Dec, alt/az, ecliptic, magnitude, phase, Sun elongation, constellation |
astronomy_get_rise_set | Rise, set, and transit times for a body, plus civil, nautical, and astronomical twilight for the Sun |
astronomy_get_moon_phase | Illuminated fraction, phase name, synodic age, and the next four quarter phases |
astronomy_find_events | Next eclipses, equinoxes, solstices, moon quarters, oppositions, conjunctions, greatest elongations, or apsides |
astronomy_list_visible | What's up now: naked-eye bodies (and optional bright stars) above the horizon, ranked, with a sky-condition gate |
astronomy_get_ephemeris | Small-body or spacecraft ephemeris from JPL Horizons (opt-in) |
astronomy_get_satellite_passes | Visible satellite passes from a CelesTrak element set propagated with SGP4 (opt-in) |
| Resource | Description |
|---|---|
astronomy://body/{body} | Reference card for a solar-system body: name, type, mean radius, naked-eye visibility |
Tool-only clients get the same type, radius, and naked-eye fields inline from astronomy_get_sky_position.
| Prompt | Description |
|---|---|
astronomy_stargazing_plan | Plan a night of stargazing from a place, chaining the astronomy tools with geocoding and weather steps |
| Skill | Description |
|---|---|
astronomy-guide | Chaining the tools for observing questions: anchoring dates to the observer's local night, what "visible" means per tool, Moon interference, eclipses from a place, and the opt-in Horizons and satellite tools |
Plugin installs load it from skills/; MCP clients that support the Skills extension read it as skill://astronomy-guide/SKILL.md.
Design reference: docs/design.md.
astronomy_get_sky_position toolbody (sun, moon, mercury … pluto) or star is required, with star winning when both are set; star resolves against a bundled 32-star catalog by common name or Bayer designation (Sirius, α CMa), and a miss fails as star_not_found listing the catalogequatorial, refraction-corrected horizontal, and ecliptic coordinates plus magnitude, angular_diameter_arcsec, phase_angle_degrees, illuminated_fraction, sun_elongation_degrees, and constellationbody_metadata, the resource card's type, mean_radius_km, and naked_eye; a star has noneastronomy_get_rise_set toolbody searched forward from start (default now) for the next count cycles, default 1; 31 are served per call, and a count up to 366 returns the first 31 with a notice naming the start and count that continue the seriesrise_utc, set_utc, transit_utc, and transit_altitude_degrees; a circumpolar or never-rising body gets null rise/set and a note instead of an errorbody: "sun", twilight holds civil, nautical, and astronomical dusk/dawn pairs for the night after each cycle's day. When the first day begins after start, night_in_progress holds the preceding night, including polar nights without a sunset; the first cycle otherwise carries its own night. Each pair stays within that night, and times before start remain includedastronomy_get_moon_phase tooltime (default now) and an optional timezoneilluminated_fraction, phase_name, age_days, next_quarters, and phase_longitude_degrees (0 new, 180 full), which is not the phase_angle_degrees of astronomy_get_sky_positionastronomy_find_events toolevent (solar_eclipse, lunar_eclipse, equinox, solstice, moon_quarter, opposition, conjunction, max_elongation, perigee_apogee) and the next count occurrences, default 1; 20 are served per call, and a count up to 200 returns the first 20 with a notice naming the start and count that continue the series; searches stop at the end of 2100body (body_required); a body the event doesn't apply to fails as body_not_supported, and conjunction with body2 takes the Moon or a planet different from body (invalid_body_pair otherwise) and reports separation_degreeslatitude and longitude together, else incomplete_observer) that adds local_visible and contact_altitudes_degreesstart; their contacts may precede startastronomy_list_visible tooltime (default now, not a window); min_altitude (default 0) and include_stars (default false) shape the listsky_condition (daylight, civil_twilight, nautical_twilight, astronomical_twilight, dark), sun_altitude_degrees, and bodies ranked brightest-and-highest first, each with a visibility_note that says when daylight, civil twilight, or Sun glare within 15° hides or dims itastronomy_get_ephemeris tooldesignation is passed to Horizons verbatim ("433;" for a numbered asteroid, "DES=1P;CAP" for a periodic comet, a negative SPK-ID for a spacecraft); start defaults to now, stop to 24 h later, and step to "1h" (a count plus m, h, d, mo, or y); latitude and longitude together add alt/aztruncated is true the notice names the start to resume from. target_name is the object Horizons resolvedambiguous_designation, observer_is_target, body_not_found, invalid_step, invalid_elevation, time_out_of_range, or request_rejected, each naming the input to correctASTRONOMY_ENABLE_HORIZONS=trueastronomy_get_satellite_passes toolnorad_id or name (ISS, Hubble/HST, and Tiangong/CSS resolve directly; other names are matched against CelesTrak, and an ambiguous one fails as ambiguous_satellite_name listing candidates); start must be within about a month of today, and days defaults to 7days up to 30 returns the first 10 with a notice naming the start and days that continue the searchnorad_id, satellite_name, and passes that are visible (sunlit, above 10° elevation, Sun below −6°), each with rise/peak/set times and azimuths, peak_altitude_degrees, duration_seconds, sunlit, and visible_start_utc/visible_end_utcASTRONOMY_ENABLE_SATELLITES=trueastronomy://body/{body} resource{body} is one of sun, moon, mercury … pluto, with name completion; anything else fails as unknown_bodyapplication/json card with body, name, type (star/planet/moon/dwarf), mean_radius_km, and naked_eyeastronomy_stargazing_plan promptlocation required; date (YYYY-MM-DD) optional, defaults to tonightastronomy_get_rise_set (sun, then moon), astronomy_get_moon_phase, and astronomy_list_visible with include_stars, plus the geocoding and weather steps this server doesn't coverBuilt on @cyanheads/mcp-ts-core: stdio and Streamable HTTP transports, pluggable auth (none / jwt / oauth), swappable storage (in-memory, filesystem, Supabase, Cloudflare KV/R2/D1), structured logging with optional OpenTelemetry tracing.
Astronomy-specific:
time_out_of_range; the Horizons tool is bounded by each target's own data span insteadtimezone (or set ASTRONOMY_DEFAULT_TIMEZONE) to get *_local fields alongside UTC. The server never infers a timezone from coordinateselevation defaults to 0 m)horizons_unavailable or celestrak_unavailable and never falls back to core outputAgent-friendly output:
magnitude, angular_diameter_arcsec, phase_angle_degrees, and illuminated_fraction are null where the engine can't compute them, rendered as "unavailable", never zeroedvisibility_note comes from real magnitude, altitude, sky condition, and Sun elongation, not a synthetic scorereason and a recovery hint, so callers can correct and retry冒頭だけを表示しています。続きはリポジトリで読めます