W8s Astro MCP
Natal charts, transits, history, ingress forecasting, aspects, composite & Davison charts — SQLite.
Connector by w8s · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/w8s-w8s-astro-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 26, 2026.
- Tools
- 15 read · 8 write · 5 delete · 3 not yet classified
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Tools by what they do 31
Read from the source code; the running server may list different tools.
Read 15 · Look things up without changing anything.
check_ephemeriscompare_chartsfind_electional_windowsfind_house_placementsfind_last_transitget_connection_chartget_ingressesget_natal_chartget_transit_historyget_transitslist_connectionslist_event_charts
Show 3 more tools
list_profilesview_configvisualize_natal_chart
Write 8 · Create, change, send or run things.
add_connection_memberadd_locationcreate_connectioncreate_profiledismiss_data_noticedownload_ephemeris_filessetup_ownerupdate_profile
Delete 5 · Delete, drop, revoke or wipe things.
delete_connectiondelete_event_chartdelete_profileremove_connection_memberremove_location
Not yet classified 3 · We could not tell from the name and description.
cast_event_chartsetup_astro_configvisualize_placement_dials
Network hosts it talks to 3
github.com· found in codenominatim.openstreetmap.org· found in coderaw.githubusercontent.com· found in code
Files it touches
- Your home directory (~)
~/.w8s-astro-mcp/placement_dials_content.json~/Downloads/natal_chart.png~/Downloads/placement_dials.html- Any path the agent passes to its tools
Tools (31)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
add_connection_memberAdd a profile to an existing connection. Note: adding a member invalidates any cached charts for this connection.
add_locationAdd a saved location (home, office, travel destination, etc.) for a profile. Every location must belong to a specific profile.
cast_event_chartCast an astrological chart for any date, time, and location. No profile required — useful for historical events, mundane astrology, and electional work. If 'label' is provided, the chart is saved to the database and can be referenced later via compare_charts using 'event:<label>'. If 'label' is omitted, the chart is calculated and returned but not saved.
check_ephemerisCheck the current ephemeris mode and precision level. Reports whether the built-in Moshier ephemeris (~1 arcminute) or Swiss Ephemeris data files (~0.001 arcsecond) are active, and shows the pysweph version.
compare_chartsCalculate aspects between two charts. Use for synastry (comparing two natal charts), transits (comparing natal chart with current positions), or event chart analysis. Finds conjunctions, oppositions, trines, squares, sextiles, and minor aspects. Each aspect names the chart each body belongs to (natal, transit, event) and, when a chart carries planet speeds (transit charts), whether the aspect is applying or separating with an estimated time of exactness. Times are UT. Transit-chart angles use the owner's current home location.
create_connectionCreate a new connection between two or more profiles for synastry or composite/Davison chart analysis. Requires at least 2 profile IDs. Use list_profiles to find profile IDs first.
create_profileCreate a new astrological profile (for friends, family, synastry analysis, etc.). After creating, ask user if this should be their current profile. IMPORTANT: Ask for information conversationally: 1. Ask: 'What's their name?' 2. Ask: 'What's their birthday?' (get YYYY-MM-DD) 3. Ask: 'Do you know what time they were born? (If not, we can use 12:00)' 4. Ask: 'Where were they born?' (get city, state/country) Then look up coordinates and confirm before saving.
delete_connectionDelete a connection and all its cached charts. WARNING: Permanent and cannot be undone. Does not affect the member profiles themselves.
delete_event_chartDelete a saved event chart by label. WARNING: Permanent and cannot be undone.
delete_profileDelete a profile from the database. WARNING: This is permanent and cannot be undone. Deletes the profile and all associated natal chart data. If this is the owner profile, owner_profile_id will be set to NULL.
dismiss_data_noticeStop the 'Data notice' about stored natal charts that need recalculating, until a different chart becomes affected. Call this ONLY when the user asks not to be reminded; it does not fix anything. Use undo=true to bring the notice back.
download_ephemeris_filesDownload Swiss Ephemeris data files for higher-precision calculations. Upgrades from built-in Moshier ephemeris (~1 arcminute) to full Swiss Ephemeris files (~0.001 arcsecond). Downloads ~2 MB from the official Swiss Ephemeris GitHub repository to ~/.w8s-astro-mcp/ephe/. Use check_ephemeris first to see current precision mode.
find_electional_windowsScan a time window and return candidate moments that satisfy electional astrology criteria. Useful for finding auspicious times to start a project, sign a contract, hold an event, etc. Scans at a configurable interval (default 60 minutes) and scores each moment against the requested criteria. Returns candidates ranked by score (most criteria met first), then by tightness. Maximum window: 90 days. Maximum interval: 360 minutes (6 hours). Minimum interval: 15 minutes. Available criteria: - moon_not_void: Moon is not void of course - no_retrograde_inner: Mercury and Venus are direct - no_retro…
find_house_placementsDetermine which house each planet occupies in a chart. Can use a natal chart (via profile_id or owner default) or a connection chart (composite/Davison via connection_id + chart_type) as the house reference frame. Shows both which planets are in each house and which house each planet is in.
find_last_transitFind the most recent logged transit where a planet met specific conditions. Examples: 'when was Mercury last retrograde?', 'when was the Moon last in Scorpio?', 'when was Mars last in my 7th house?'. Requires at least one of: sign, retrograde, or house.
Show 16 more tools
get_connection_chartCalculate (or retrieve cached) a composite or Davison chart for a connection. COMPOSITE: Each planet position is the circular mean of all members' natal positions. No swetest call needed — pure math on cached natal data. DAVISON: A real chart cast for the midpoint datetime and location of all members' births. Requires a swetest call. Birth times are converted to UTC before averaging, so timezone data in each profile's birth location is used. Results are cached in the database. Use invalidate=true to force recalculation.
get_ingressesScan the ephemeris for upcoming or recent planetary sign ingresses and stations (retrograde/direct). Examples: 'what transits are coming up this month?', 'when does Mercury go retrograde?', 'show me major transits next April', 'what were the outer planet movements during the Renaissance?'. Use offset to shift the window from today. Use extended=true for historical or far-future windows (outer planets only).
get_natal_chartGet the natal chart (birth chart) planetary positions for a profile. Defaults to the owner profile if no profile_id is supplied.
get_transit_historyQuery historical transit lookups stored in the database for a profile. Defaults to the owner profile. Supports filtering by date range, planet, and sign. Examples: 'show me last month\'s transits', 'when was Mercury in Capricorn?', 'what sign was Jupiter in last year?'
get_transitsGet planetary transits for a specific date and location. Location can be a saved label ('home', 'work', 'birth'), or any city/place name ('Seattle', 'Bangkok, Thailand', 'Paris') — unknown names are geocoded automatically. Defaults to current home location if omitted.
list_connectionsList all connections with their member names and IDs. Use this to find connection IDs before requesting charts.
list_event_chartsList all saved event charts. Shows label, date/time, location, and optional description. Saved charts can be used in compare_charts via 'event:<label>'.
list_profilesList all astrological profiles in the database. Shows profile names, birth dates, and which is currently active. Use this to see all available profiles before creating, updating, or switching.
remove_connection_memberRemove a profile from a connection. Connection must retain at least 2 members. Note: removing a member invalidates any cached charts.
remove_locationRemove a saved location. WARNING: Cannot remove locations that are set as birth locations for profiles.
setup_astro_configConfigure birth data and location for transit calculations. IMPORTANT: Ask the user for information conversationally in steps: 1. Ask: 'What's your birthday?' (get YYYY-MM-DD) 2. Ask: 'Do you know what time you were born? (If not, we can use 12:00)' (get HH:MM) 3. Ask: 'Where were you born?' (get city, state/country) Then look up coordinates and confirm with user before saving.
setup_ownerSet who you are — the human operating this server. This is a one-time setup step, not a session operation. The owner profile is the stable identity used as the default for get_natal_chart, get_transits, and all other tools when no profile_id is supplied. Use list_profiles to find your profile_id.
update_profileUpdate a profile field (name, birth date, birth time, etc.). Use with caution - changing birth data invalidates cached natal chart. Valid fields: name, birth_date, birth_time
view_configView current astrological configuration (birth data and saved locations)
visualize_natal_chartGenerate a circular natal chart visualization and save to file. Creates a traditional astrological chart wheel with zodiac signs, houses, planets, and angles.
visualize_placement_dialsCreate an interactive page for learning what a planet, a sign and a house mean, alone and together. Three dials (planet, sign, house) can be turned or switched off, and the reading shows each layer by itself and how the layers combine. The chart's own placements and house cusps are loaded as quick picks. Saves one HTML file to open in a browser.
Compare and alternatives
Featured in
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Weekly downloads
- 133
- Last commit
- Oct 11, 2026 (18 days ago)
- Last release
- Oct 11, 2026 (18 days ago)
- Last package publish
- Oct 11, 2026 (18 days ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.w8s/w8s-astro-mcp- Version
- 0.15.2
- Auth
- No auth
- Packages
- pypi w8s-astro-mcp
- License
- AGPL-3.0
- Repository
- github.com/w8s/w8s-astro-mcp
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Cite this page
W8s Astro MCP. Agent Mart. https://agentmart.dev/connectors/w8s-w8s-astro-mcp (last updated 2026-10-24)