Skip to main content

A comprehensive Chinese Lunar Calendar MCP server providing traditional Chinese lunar calendar information, auspicious date checking, and festival data

Project description

๐ŸŒ™ Lunar Calendar MCP Server

Traditional Chinese Lunar Calendar for AI Applications

Python Version License: MIT MCP Compatible Tests

18 Tools | Chinese Zodiac | Five Elements | Moon Phases | Festivals | Auspicious Dates


๐Ÿ“– Overview

A comprehensive Model Context Protocol (MCP) server providing traditional Chinese lunar calendar information, auspicious date checking, and festival data based on Chinese cultural traditions.

Perfect for integrating ancient Chinese wisdom into modern AI applications through the Model Context Protocol.

โœจ Features

  • ๐ŸŽฏ Auspicious Date Analysis - Check favorable dates, find good dates, daily fortune, zodiac compatibility
  • ๐ŸŽŠ Festival Information - Chinese festivals, next festival, festival details, annual calendars
  • ๐ŸŒ™ Moon Phase Analysis - Accurate moon phases, location-aware, activity influence, monthly calendars
  • ๐Ÿ“… Calendar Conversions - Solar-lunar conversion, zodiac information, cultural integration
  • โšก Advanced Tools - Batch checking, date comparison, lucky hours

๐Ÿ“š Complete Features List โ†’

๐Ÿš€ Quick Start

Installation

# Using pip
pip install lunar-mcp-server

# Using uvx (no installation needed)
uvx lunar-mcp-server

# From source
git clone https://github.com/AngusHsu/lunar-mcp-server.git
cd lunar-mcp-server
uv sync

Running the Server

# Using uv
uv run lunar-mcp-server

# Using uvx
uvx lunar-mcp-server

# After pip install
lunar-mcp-server

Claude Desktop Integration

Add to your Claude Desktop configuration (claude_desktop_config.json):

{
  "mcpServers": {
    "lunar-calendar": {
      "command": "uvx",
      "args": ["lunar-mcp-server"]
    }
  }
}

๐Ÿ“– Detailed Usage Guide โ†’

๐Ÿ› ๏ธ Available Tools

๐ŸŽฏ Auspicious Date Tools (4)

  • check_auspicious_date - Check if date is favorable
  • find_good_dates - Find optimal dates
  • get_daily_fortune - Daily fortune info
  • check_zodiac_compatibility - Zodiac compatibility

๐ŸŽŠ Festival Tools (4)

  • get_lunar_festivals - Festivals on date
  • get_next_festival - Next upcoming festival
  • get_festival_details - Festival information
  • get_annual_festivals - Annual calendar

๐ŸŒ™ Moon Phase Tools (4)

  • get_moon_phase - Moon phase info
  • get_moon_calendar - Monthly calendar
  • get_moon_influence - Activity influence
  • predict_moon_phases - Phase predictions

๐Ÿ“… Calendar Conversion Tools (3)

  • solar_to_lunar - Solar to lunar conversion
  • lunar_to_solar - Lunar to solar conversion
  • get_zodiac_info - Zodiac information

โšก Advanced Tools (3)

  • batch_check_dates - Check multiple dates
  • compare_dates - Compare dates
  • get_lucky_hours - Lucky hours of day

๐Ÿ“– Complete API Reference โ†’

๐Ÿฎ Cultural Traditions

Based on traditional Chinese calendar systems:

  • Lunar Calendar - Traditional lunar-solar calendar
  • 12 Zodiac Animals - Rat, Ox, Tiger, Rabbit, Dragon, Snake, Horse, Goat, Monkey, Rooster, Dog, Pig
  • Five Elements - Wood, Fire, Earth, Metal, Water
  • 28 Lunar Mansions - Traditional stellar divisions
  • Traditional Festivals - Spring Festival, Mid-Autumn, Dragon Boat, and more

๐Ÿ“– Cultural Traditions Guide โ†’

๐Ÿ“ Example Usage

import asyncio
from lunar_mcp_server import LunarMCPServer

async def main():
    server = LunarMCPServer()

    # Check if date is auspicious for wedding
    result = await server._check_auspicious_date(
        date="2024-03-15",
        activity="wedding",
        culture="chinese"
    )
    print(f"Auspiciousness: {result['auspicious_level']}")
    print(f"Score: {result['score']}/10")

asyncio.run(main())

๐Ÿ“– More Examples โ†’

๐Ÿงช Testing

# Run comprehensive MCP server tests
./scripts/test_mcp_final.sh

# Run unit tests
uv run pytest --cov

๐Ÿ“– Testing Guide โ†’

๐Ÿ“ฆ Publishing

This server is published to:

  • PyPI: pip install lunar-mcp-server
  • Smithery.ai: npx @smithery/cli install lunar-mcp-server (coming soon)

๐Ÿ“– Publishing Guide โ†’

๐Ÿ› ๏ธ Development

# Clone and setup
git clone https://github.com/AngusHsu/lunar-mcp-server.git
cd lunar-mcp-server
uv sync --dev

# Code quality
uv run black src/ tests/
uv run ruff check src/ tests/
uv run mypy src/

๐Ÿ“– Development Guide โ†’

๐Ÿ“š Documentation

๐Ÿ“„ License

MIT License - see LICENSE file for details.

๐Ÿ™ Acknowledgments

Built with dedication for preserving and sharing traditional calendar wisdom.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lunar_mcp_server-1.0.0.tar.gz (35.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lunar_mcp_server-1.0.0-py3-none-any.whl (38.9 kB view details)

Uploaded Python 3

File details

Details for the file lunar_mcp_server-1.0.0.tar.gz.

File metadata

  • Download URL: lunar_mcp_server-1.0.0.tar.gz
  • Upload date:
  • Size: 35.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lunar_mcp_server-1.0.0.tar.gz
Algorithm Hash digest
SHA256 dbe40b5a17bca3f47192a9469f297058a48be8af77384d0d5418917a7aa2e3ed
MD5 00fd45df17d337f7ac708db694ff6c7e
BLAKE2b-256 e97f8b5ff1a4845704d93ef9d9045a4b32df572075e0c63f7889680af1ce9cce

See more details on using hashes here.

Provenance

The following attestation bundles were made for lunar_mcp_server-1.0.0.tar.gz:

Publisher: publish.yaml on AngusHsu/lunar-mcp-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lunar_mcp_server-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for lunar_mcp_server-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d7179191d59c8daa09b4ed494bd9f9c7d7817ff4f2ad6df20e9e2efe466f0cc6
MD5 354eafb988de1a973586b9db52f5b957
BLAKE2b-256 6a22bb7faf0193eb69c02772b9b9aff374a3abffca474d3038d29e4eb4d21e83

See more details on using hashes here.

Provenance

The following attestation bundles were made for lunar_mcp_server-1.0.0-py3-none-any.whl:

Publisher: publish.yaml on AngusHsu/lunar-mcp-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page