Astro Skill MCP Server

Astro Skill MCP Server

Provides Vedic astrology calculations (kundali, dasha, panchang, yoga) and Hindi/English PDF reports via 11 MCP tools, with SQLite-backed client/report storage.

Category
Visit Server

README

Astro Skill

CI

Portable Vedic astrology engine, agent skill, and MCP server. Deterministic kundali, dasha, panchang, and yoga calculations with JSON and Hindi/English PDF reports — reusable by any agent or MCP-compatible client.

<p align="center"> <img src="docs/images/sample-cover-hi.png" alt="Hindi PDF report cover" width="330"> <img src="docs/images/sample-lagna-chart.png" alt="North Indian lagna kundali chart" width="330"> </p> <p align="center"> <img src="docs/images/sample-dasha-strip.png" alt="Vimshottari dasha timeline" width="670"> </p>

The repo is split so each layer can be reused on its own:

  • astro/ — the portable skill: calculator scripts, reference data, bundled Swiss Ephemeris + Devanagari font, and tests. Drop it into any agent or call the scripts directly from Python.
  • services/astro_mcp/ — a generic stdio MCP server exposing the same calculations plus SQLite storage as 11 stable tools.
  • apps/ — optional products built on top (e.g. a web panel scaffold).
  • docs/ — architecture, roadmap, deployment, and operations docs.

Features

  • Kundali — lagna, rashi, nakshatra + pada, nine grahas (with retrograde), whole-sign houses, and dosha flags (e.g. Mangalik).
  • Navamsa (D9) divisional chart in both JSON and the PDF report.
  • Vimshottari dasha — mahadasha + antardasha timeline with correct birth-balance handling (the sub-period actually running at birth, not a fresh lord/lord cycle).
  • Daily Panchang — tithi, vara, nakshatra, yoga, karana, sunrise/sunset — anchored at sunrise (classical convention), with muhurta and yoga detection.
  • Lahiri (Chitrapaksha) sidereal positions, whole-sign houses.
  • High precision — bundled Swiss Ephemeris .se1 data (SWIEPH) with an automatic Moshier fallback; each output records the tier used in calculation.ephemeris.
  • Reports — structured JSON, and PDF via a preferred HTML/Chromium renderer (polished Devanagari) or a legacy in-process ReportLab fallback. Hindi/English, with a bundled Noto Sans Devanagari font. The HTML renderer also supports a pandit_v1 premium template for pitch-ready operator reports.
  • MCP server — 11 tools over stdio, with SQLite-backed client/report storage, input validation, and traversal-safe report filenames.

Quick start

git clone https://github.com/adityarya24/astro-skill.git
cd astro-skill
python -m venv .venv && . .venv/bin/activate    # Windows: .\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -e ".[dev]"

# Optional: Chromium for the preferred HTML PDF renderer
python -m playwright install chromium

# Checks
python -m pytest -q
python -m ruff check astro services scripts

All tests pass; the HTML/Chromium PDF render test skips automatically until Chromium is installed. For OS-specific venv details and MCP client config examples, see docs/operations/install-smoke.md.

MCP server

services/astro_mcp/ is an importable package and a runnable stdio MCP server. The same TOOLS registry powers the unit tests and the wire protocol — no duplicated logic, and no environment variables required.

Tools (11): parse_birth_details, save_client_profile, find_client_profile, list_client_reports, calculate_kundali, calculate_dasha, calculate_gochar, calculate_compatibility, calculate_panchang, generate_report_json, generate_pdf_report.

python -m services.astro_mcp        # or `astro-mcp` after `pip install -e .`

Wire it into any MCP client (Claude Desktop, a Codex agent, or your own) by pointing the client's MCP config at that command with cwd set to the repo root. See services/astro_mcp/README.md for the tool contract and config examples, and verify an install in one shot with:

python scripts/smoke_mcp_client.py

Sample commands

# Kundali JSON
python astro/scripts/kundali_calculator.py --dob 26/12/2019 --tob 09:15 \
  --place Delhi --lat 28.6139 --lon 77.2090 --timezone Asia/Kolkata --json

# Panchang JSON
python astro/scripts/panchang_calculator.py --date 2026-05-21 \
  --place Delhi --lat 28.6139 --lon 77.209 --timezone Asia/Kolkata --json

# Hindi PDF (default HTML/Chromium renderer; add --renderer reportlab for the
# no-browser fallback)
python astro/scripts/pdf_report.py --kundali-json chart.json --dasha-json dasha.json \
  --panchang-json panchang.json --output report.pdf --language hi

# Pandit-style report
python astro/scripts/pdf_report.py --kundali-json chart.json --dasha-json dasha.json \
  --panchang-json panchang.json --output pandit-v1.pdf --language hi \
  --template pandit_v1 --client-name "Client Name"

Deployment

Run it as a Docker MCP server (the image bundles Python, dependencies, Chromium, the Devanagari font, and the ephemeris data) or straight from Python. See docs/deploy.md for build, run, smoke-test, and MCP-client wiring instructions.

Documentation

Production notes

  • Positions use the bundled high-precision Swiss Ephemeris (SWIEPH) out of the box, not the lower-precision Moshier fallback.
  • The default PDF path is HTML/Chromium for production Hindi rendering; ReportLab stays as a no-browser fallback.
  • Generated runtime data lives under an ignored data/ directory (or a caller-provided output directory).
  • MCP tools validate their JSON schemas and keep generated filenames detached from caller-controlled identifiers.
  • GitHub Actions runs install, Chromium setup, tests, ruff, and skill validation on push and pull requests.

Safety boundaries

These rules apply across every layer and downstream product:

  • Reports are calculation-backed drafts, intended for review by an astrologer or operator before any final reading is shared.
  • Missing birth details must be requested rather than guessed.
  • Approximate or partial inputs must be marked clearly in any output.
  • Do not generate death, accident, medical, or unavoidable-harm certainty predictions.

License

MIT — see LICENSE.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured