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.1.tar.gz (38.1 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.1-py3-none-any.whl (41.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lunar_mcp_server-1.0.1.tar.gz
  • Upload date:
  • Size: 38.1 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.1.tar.gz
Algorithm Hash digest
SHA256 258f16e5a2b8b755014209f497e7c35872f2d3c629759896bbcd0f95e5fcc38c
MD5 cfc9623ca9157c7f9ab2f34410d1b23d
BLAKE2b-256 e14ee1e12b93c9bbeddc993bb3e8c66948def68d2bb4e7e8bd2c174121751b55

See more details on using hashes here.

Provenance

The following attestation bundles were made for lunar_mcp_server-1.0.1.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.1-py3-none-any.whl.

File metadata

File hashes

Hashes for lunar_mcp_server-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ccf5a7e912834434a1d15b59bec9fa707e51e6f4bd31dc52f7f7ca379196f85f
MD5 4502466da6ebaf30a8195ace92f0cf25
BLAKE2b-256 3133bbb49711d9320a709da61bba703e1a5e7ca347aaa4b37679c202321c738d

See more details on using hashes here.

Provenance

The following attestation bundles were made for lunar_mcp_server-1.0.1-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