Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Stellara MCP

by mihninversion 0.2.2i★ –iComputer or cloud
Registry nameit.natlex/stellara-mcp

Install

Overview

Description from the maker (original English)

Swiss Ephemeris for AI agents: exact natal charts, transits, synastry and birth-place resolution

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Computer or cloud
  • Transport: stdio, Streamable HTTP
  • Category: Design, images & audio
  • You need to fill in: STELLARA_API_KEY

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 2 of 3 passed
  • Runs on the maker’s server: what you ask it goes through their server.
  • You fill in yourself: STELLARA_API_KEY, STELLARA_API_BASE_URL

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • Runs in the cloudNothing to install; it connects over the internet
  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Works in Claude on the web, desktop and mobile:

  1. Open Settings → Connectors
  2. Press Add custom connector
  3. Paste the address below and press Add
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Add2https://…3
https://mcp.stellara.natlex.it/mcp

Or run it on your computer

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "stellara": {
      "command": "npx",
      "args": [
        "-y",
        "stellara-mcp"
      ],
      "env": {
        "STELLARA_API_KEY": "your-value",
        "STELLARA_API_BASE_URL": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add --transport http stellara https://mcp.stellara.natlex.it/mcp

Or run it on your computer

claude mcp add stellara --env STELLARA_API_KEY=your-value --env STELLARA_API_BASE_URL=your-value -- npx -y stellara-mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "stellara": {
      "url": "https://mcp.stellara.natlex.it/mcp"
    }
  }
}

Or run it on your computer

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "stellara": {
      "command": "npx",
      "args": [
        "-y",
        "stellara-mcp"
      ],
      "env": {
        "STELLARA_API_KEY": "your-value",
        "STELLARA_API_BASE_URL": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "stellara": {
      "type": "http",
      "url": "https://mcp.stellara.natlex.it/mcp"
    }
  }
}

Or run it on your computer

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "stellara": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "stellara-mcp"
      ],
      "env": {
        "STELLARA_API_KEY": "your-value",
        "STELLARA_API_BASE_URL": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

ChatGPT connects only to servers on the internet:

  1. Open ChatGPT on the web → Settings → Connectors (Apps)
  2. Press Create or Add (some plans need Developer mode under Advanced first)
  3. Paste the address below, give it a name and save
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Create2https://…3
https://mcp.stellara.natlex.it/mcp

Menu names can differ slightly by plan and over time.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • STELLARA_API_KEY secret required env
    Stellara API access key (request at https://stellara.natlex.it/#api)
  • STELLARA_API_BASE_URL env
    Override the API base URL (default https://api.stellara.natlex.it/api/v1/astrology)

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

The server asks you to sign in before it lists its tools.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 9, 2026

  • ! Caution

    Maker matches the repo

    The publisher (natlex.it) is not the repo owner (mihnin); someone else may have listed it

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • ✓ Pass

    Endpoint responds

    Responded in 187 ms (HTTP 401)

  • ✓ Pass

    Sign-in with OAuth

    Declares OAuth sign-in, so your AI app can take you to log in

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Compared with others in Design, images & audioi

  • More stars than 0% of the other 2809 servers in this category
  • Published to the registry more recently than 34% of the other 2809 servers in this category
  • Basic checks equal to or better than 44% of the other 2809 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Stellara MCP safe?

It passed 2 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: STELLARA_API_KEY

Does it run on my computer or in the cloud?

Either way works: install it on your computer or connect to the cloud version.

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.2.2) reached the registry 2 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Figma Context MCP, Claude Real Video, Figma MCP Server

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Figma Context MCP

Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.

by GLipsWidely used↓ 161.2K/wk★ 16.2KUpdated 5 months ago

Runs on your computer

Claude Real Video

Let any LLM watch a video locally — and search everything it has ever watched.

by HUANGCHIHHUNGLeoWidely used↓ 1.1K/wk★ 2.3KUpdated 2 months ago

Runs on your computer

Figma MCP Server

Figma’s official server gives AI your design data so it can turn designs into code or describe them accurately. Connects to Figma’s cloud.

by figmaWidely used★ 2.2KUpdated 13 months ago

Runs in the cloud✓ mcp.figma.com

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Stellara MCP: Deterministic Swiss Ephemeris for AI Agents (Hermes, Claude, Grok)

Give your AI agent a real astronomical calculator. stellara-mcp is a tiny, open-source Model Context Protocol server that turns any MCP-capable agent — Claude.ai / Claude Desktop / Claude Code, ChatGPT, Codex, Cursor, Windsurf, Gemini CLI, Grok, Hermes — into an astrologer that never invents a planetary position. Connect by URL (no install) or run the package locally with an API key.

It exposes four tools backed by Swiss Ephemeris (the same engine professional astrologers use) running in the Stellara cloud:

ToolWhat you get back (exact JSON)
resolve_birth_place"Warsaw, 14:30" → latitude / longitude, IANA timezone and a tz-aware birth_datetime with the historically correct UTC offset (old DST rules, decree time), plus age and DST-ambiguity flags — so the agent never guesses coordinates or offsets
calculate_natal_chart14 points (Sun → Pluto, Chiron, Lilith, North/South Node) with sign, degree, absolute longitude, house, retrograde, speed, declination · 12 house cusps · Ascendant / MC / Descendant / IC · every major aspect with its exact orb and applying / separating
get_transits_and_aspectsTransiting positions at any moment · every transit-to-natal aspect (planets and angles) with orb and applying / separating · which natal house each transiting planet occupies
calculate_synastryAll inter-chart aspects between two people with exact orbs · house overlays (A's planets in B's houses and vice versa)

Plus two MCP prompts: collect_birth_profile, a guided intake of the data every reading depends on (date → time with certainty → place → optional city, name, gender → confirmation card with age), and astrologer_system_prompt, which switches the agent into a disciplined professional-astrologer style for interpreting that JSON.

The server does not interpret and does not call any LLM. It is a proxy adapter: numbers in, numbers out. Your agent does the reading; Swiss Ephemeris does the math.


Why this exists: LLMs lie about natal charts

Ask a language model "where was my Moon on 17 May 1990 at 14:30 in Warsaw?" and it will answer confidently — and, more often than not, wrongly. Ecliptic longitudes, house cusps and aspect orbs are the output of numerical integration of planetary motion plus spherical trigonometry for the local horizon. That is not something a next-token predictor can do in its head. Typical failure modes:

  • the Moon (13° per day) lands in the wrong sign;
  • the Ascendant is guessed from the Sun sign, ignoring time and latitude;
  • house cusps are fabricated or silently assume Equal houses;
  • "Saturn square Sun" is asserted with no orb, or with an orb that does not exist;
  • retrograde status is invented.

Every one of those errors poisons the whole interpretation that follows. A reading built on a wrong Ascendant is worthless no matter how eloquent it is.

stellara-mcp fixes this at the root. The agent calls a tool; the tool returns Swiss-Ephemeris-grade positions (sub-arcsecond precision, tropical zodiac, ten house systems, exact orbs, applying/separating derived from real planetary speeds); the agent interprets only that data. Deterministic senses, deterministic calculator — the language model is left to do what it is actually good at.


Quick start (1-click configs)

Two ways to connect:

  • Remote, no install (Claude.ai, Claude Desktop, Claude Code, ChatGPT connectors, Grok, any client that takes an MCP URL): add a custom connector with the URL `https://mcp.stellara.natlex.it/mcp` and sign in with your Stellara account (the same account as the Stellara app; Free = 10 requests / day, Stellara Pro = 5 000). Claude: *Settings → Connectors → Add custom connector → paste the URL → Connect → sign in.* Claude Code: claude mcp add --transport http stellara https://mcp.stellara.natlex.it/mcp, then /mcp to sign in. Nothing to install, nothing to configure; tokens are short-lived and can be revoked from the app.
  • Local package + API key (below): for servers, scripts, Cursor / Windsurf / Codex and anyone who prefers a key. Get one at [stellara.natlex.it/#api](https://stellara.natlex.it/#api) — Free (5 requests / day) or Stellara API Pro (5 000 / day, $9 / month), delivered by e-mail within a minute. Then pick your client.

The package runs on Node.js ≥ 18.17 and is launched with npx, so nothing to

install globally. All configs below are the same three lines: command, args, env.

Claude Desktop

Edit claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):

{

"mcpServers": { "stellara": { "command": "npx", "args": ["-y", "stellara-mcp"], "env": { "STELLARA_API_KEY": "sk_stellara_your_key_here" } } } }

Restart Claude Desktop. The three tools appear under the 🔌 icon; the astrologer_system_prompt prompt appears in the prompts (+) menu.

Hermes Agent Desktop

Add the same block to ~/.hermes/config.json:

{

"mcpServers": { "stellara": { "command": "npx", "args": ["-y", "stellara-mcp"], "env": { "STELLARA_API_KEY": "sk_stellara_your_key_here" } } } }

Hermes discovers the tools on next launch. If your Hermes build uses a different top-level key for MCP servers, keep the command / args / env triple as is — it is the standard stdio launch spec.

Cursor / Windsurf

Cursor: Settings → MCP → Add new global MCP server (or .cursor/mcp.json in a project). Windsurf: Settings → Cascade → MCP servers (or ~/.codeium/windsurf/mcp_config.json). Both take the identical JSON:

{

"mcpServers": { "stellara": { "command": "npx", "args": ["-y", "stellara-mcp"], "env": { "STELLARA_API_KEY": "sk_stellara_your_key_here" } } } }

Any other MCP client (Grok bridges, Continue, Zed, custom agents)

Launch npx -y stellara-mcp as a stdio server with the environment variable STELLARA_API_KEY set. That is the whole integration surface.

From a local clone (for development)
git clone https://github.com/mihnin/stellara-mcp.git

cd stellara-mcp npm install && npm run build

then use "command": "node", "args": ["/absolute/path/to/stellara-mcp/dist/index.js"] in any of the configs above.


Example conversation

User: Build my natal chart — I was born on 17 May 1990 at 14:30 in Warsaw —

and tell me why work feels so heavy today.

Agent *(loads astrologer_system_prompt, asks whether 14:30 is exact or

approximate, calls resolve_birth_place("Warsaw, Poland", "1990-05-17T14:30") →

52.23 / 21.01, Europe/Warsaw, 1990-05-17T14:30:00+02:00, then

calculate_natal_chart with those values, then get_transits_and_aspects for today)*

Your chart is built from Swiss Ephemeris positions, so let's start with what's

actually there. Sun at 26°14' Taurus in the 9th house, Moon at 3°52' Capricorn in

the 4th, Ascendant 8°41' Virgo. The tightest natal aspect is Saturn conjunct

Neptune (orb 0.6°) sitting in your 5th house — a lifelong tension between structure

and drift in creative work.

Why today is heavy: transiting Saturn is squaring your natal Sun with an orb of

1.2° and it is applying, so the pressure is still building toward exact in

about two weeks. Saturn squares to the Sun feel like carrying a backpack of

obligations — output is fine, but everything costs more effort. At the same time

transiting Mars is passing through your natal 6th house of daily work

(Aquarius), conjunct your natal Mercury with a 0.4° orb: fast, irritable, prone to

arguing with tools and colleagues.

Practical read: this is a "finish, don't start" window. Close the two tasks with

deadlines, defer the brainstorming to after the Saturn square separates, and

don't read the Mars–Mercury irritability as a sign that the job is wrong. If you

can, I'd like your birth time to the minute — the Ascendant at 8° Virgo is close

to a sign boundary, and the house placements above depend on it.

Every degree, orb and "applying" in that answer came from a tool result; the interpretation is the agent's. That separation is the entire point.


Tool reference

Chart tools take datetimes as ISO-8601 with a timezone (1990-05-17T14:30:00+02:00 or ...Z); naive values are rejected before any network call. Coordinates are decimal degrees (north / east positive). The intended flow is resolve_birth_place first — it produces exactly those values from what the user actually says.

resolve_birth_place
InputTypeNotes
placestringFree text, any language: Warsaw, Варшава, Springfield, Illinois, USA
local_datetimestring (optional)Local wall-clock time without an offset: 1990-05-17T14:30, or 1990-05-17 if the time is unknown (12:00 assumed and flagged)

Output:

{

"query": "Warsaw", "display_name": "Warszawa, województwo mazowieckie, Polska", "latitude": 52.2333742, "longitude": 21.0711489, "timezone": "Europe/Warsaw", "local_datetime": "1990-05-17T14:30:00", "utc_offset": "+02:00", "birth_datetime": "1990-05-17T14:30:00+02:00", "birth_datetime_utc": "1990-05-17T12:30:00Z", "time_assumed_noon": false, "local_time_ambiguity": "none", "age_years": 36, "source": "nominatim" }

birth_datetime, latitude and longitude go straight into the chart tools. local_time_ambiguity is ambiguous_dst_fallback when the wall time happened twice (autumn clock change) and nonexistent_dst_gap when the clocks skipped it — the agent should ask which one the user means. Offsets come from the IANA tz database, so 1985 Moscow resolves to +04:00 and 2015 Moscow to +03:00. Errors: PLACE_NOT_FOUND (try a larger nearby city / add the country) and GEOCODER_UNAVAILABLE (transient — retry). Geocoding uses OpenStreetMap Nominatim; nothing about the request is stored.

calculate_natal_chart
InputTypeNotes
birth_datetimestringISO-8601 with tz
latitudenumber−90 … 90
longitudenumber−180 … 180
house_systemenumplacidus (default), koch, porphyry, regiomontanus, campanus, equal, whole_sign, topocentric, morinus, alcabitius
include_minor_aspectsbooleandefault false — majors only (conjunction 10°, opposition 10°, trine 8°, square 8°, sextile 6°)

Output (abridged):

{

"input": { "birth_datetime_utc": "1879-03-14T10:30:00Z", "latitude": 48.4011, "longitude": 9.9876, "house_system": "placidus" }, "planets": [ { "name": "Sun", "sign": "Pisces", "degree": 23.498749, "absolute_longitude": 353.498749, "house": 10, "retrograde": false, "speed": 0.995959, "declination": -2.585261 } ], "houses": [ { "house": 1, "sign": "Cancer", "degree": 7.4423, "absolute_longitude": 97.4423 } ], "angles": { "ascendant": {...}, "midheaven": {...}, "descendant": {...}, "imum_coeli": {...} }, "aspects": [ { "point_a": "Sun", "point_b": "Mercury", "aspect": "conjunction", "exact_degrees": 0, "orb": 9.627514, "movement": "separating" } ], "meta": { "engine": "Swiss Ephemeris (kerykeion 5.12.7)", "zodiac": "tropical", "house_system": "placidus", "orbs": {...}, "time_resolution": "minute" } }

get_transits_and_aspects
InputType
natalobject — same fields as calculate_natal_chart
target_datetimestring — ISO-8601 with tz
include_minor_aspectsboolean

Returns natal (the full chart above), target_datetime_utc, transiting_planets (same point shape plus natal_house), and aspects_to_natal:

{ "transiting": "Saturn", "natal": "Sun", "aspect": "square", "exact_degrees": 90, "orb": 1.21, "move

Only the beginning is shown; read the rest in the repo

Ask PopNx