Ephemeris MCP
This repo is a standalone celestial computation service exposed through MCP.
v0.1 is the core sky-state slice only; satellite work is planned but deferred.
Working rules
- Keep the core contract narrow: compute raw astronomical data and return structured JSON.
- Do not add interpretation layers here. Astrology, charting, narrative output, and consumer-specific meaning belong in downstream projects.
- Prefer small, deterministic changes that preserve the existing tool surface and cache behavior.
- Keep time, location, and sky-state calculations internally consistent across tools.
- Keep planned future slices in the docs and plan, even when they are out of v0.1.
- Treat the wiki as the companion source of project context, not a duplicate code dump.
Primary references
- Wiki project page:
/home/lucky/wiki/entities/projects/ephemeris-mcp.md
- Wiki schema:
/home/lucky/wiki/SCHEMA.md
- Wiki index:
/home/lucky/wiki/index.md
Repo shape
main.py starts the app.
src/ephemeris_mcp/ holds the runtime code.
tests/ holds verification.
run.sh, restart.sh, killserver.sh, and tests.sh are the operational entry points.
Practical expectations
- Keep the implementation aligned with the plan in
IMPLEMENTATION_PLAN.md.
- Keep
README.md and the wiki project page aligned with the shipped slice.
- Prefer explicit, reproducible behavior over hidden heuristics.
- If a change affects the public tool surface or data model, update the repo docs in the same pass.