Ephemeris MCP 🌌
mcp-name: io.github.scottchronicity/ephemeris-mcp
Precision Astronomical Ephemeris for AI Agents.
Ephemeris MCP is a Model Context Protocol (MCP) server that provides AI agents with precision planetary positions using the Swiss Ephemeris.
To use this in Claude Desktop, add this to your claude_desktop_config.json:
"mcpServers": {
"ephemeris": {
"command": "uvx",
"args": ["ephemeris-mcp"]
}
}
Quick Start
Install via PyPI (Recommended)
# Install with uvx (recommended - fast & isolated, no local install needed)
uvx ephemeris-mcp
# Or install globally with pip
pip install ephemeris-mcp
python -m ephemeris_mcp
Register with MCP Clients
Add to your MCP client configuration (client will start server on-demand):
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"ephemeris-mcp": {
"command": "uvx",
"args": ["ephemeris-mcp"]
}
}
}
VS Code/Cursor/Windsurf (Cline MCP settings):
{
"mcpServers": {
"ephemeris-mcp": {
"command": "uvx",
"args": ["ephemeris-mcp"]
}
}
}
The client starts the server process automatically, communicates over stdin/stdout, then terminates it when done.
Alternative: Docker
If you prefer container isolation:
# Pull latest image
docker pull ghcr.io/scottchronicity/ephemeris-mcp:latest
# Test it
docker run --rm -i ghcr.io/scottchronicity/ephemeris-mcp:latest
Configure MCP client with Docker:
{
"mcpServers": {
"ephemeris-mcp": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/scottchronicity/ephemeris-mcp:latest"]
}
}
}
Local Development
# Clone and install
git clone https://github.com/scottchronicity/ephemeris-mcp.git
cd ephemeris-mcp
uv sync
# Run tests
make test
# Run locally
uv run ephemeris-mcp
# Test the engine directly
make validate-happycase
Available Tools
get_planetary_positions
Returns precise Tropical Zodiac positions for all planets, Sun, Moon, and chart angles.
Parameters:
iso_time(string): ISO-8601 timestamp (e.g.,"2025-12-16T15:28:00Z")latitude(float): Observer latitude (default: 42.3314 - Detroit, MI)longitude(float): Observer longitude (default: -83.0458 - Detroit, MI)
Returns:
bodies: Sun, Moon, planets with sign, degrees, motion (direct/retrograde), speed, declinationhouses: Ascendant (ASC) and Midheaven (MC) with sign and degrees
Architecture
See docs/adr/ for architectural decisions:
- ADR 001: Geocentric Tropical Ecliptic coordinates specification
- ADR 002: Semantic versioning with Conventional Commits
- ADR 003: CI/CD pipeline architecture
License
AGPLv3
Release files for ephemeris-mcp 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ephemeris_mcp-1.2.0.tar.gz | 88.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ephemeris_mcp-1.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 106.9 kB
Release files / ephemeris_mcp-1.2.0.tar.gz
| Download URL | ephemeris_mcp-1.2.0.tar.gz |
|---|---|
| Size | 88.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c6a81ce295a40b1a28a49fdc5188333eafd3042d60c9fd3ad2deeb751f21f05e
|
|
BLAKE2b-256 checksum How to use checksums |
bb627c19fbcabcd02e5f23f969423ccb2e447d3d70e74dd7d547ce0c3fddda83
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 27, 2026.
Transparency logRelease files / ephemeris_mcp-1.2.0-py3-none-any.whl
| Download URL | ephemeris_mcp-1.2.0-py3-none-any.whl |
|---|---|
| Size | 18.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6c8d1ff05d809d393261ec5c68c5bedf78a1cad93415b36411e8ad37019988fa
|
|
BLAKE2b-256 checksum How to use checksums |
89d6ef3ced6151e40baa82b93dc84b5d705ed30d9011a2e74d90fd10ab35b48f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 27, 2026.
Transparency log