Skip to main content
Glama
stevezhouht

Lottery MCP Server

by stevezhouht
README.md
# Lottery MCP Server

A Model Context Protocol (MCP) server for Chinese lottery data query and prize checking. Supports 双色球 (Double Color Ball) and 大乐透 (Super Lotto).

## Features

- 🔄 **Update lottery data** - Fetch latest lottery results from official sources
- 🔍 **Query results** - Search lottery results by date range
- 🎯 **Check prizes** - Check if your numbers won any prizes
- 📊 **Get latest results** - Quick access to recent lottery draws

## Installation

```bash
pip install mcp requests
```

## MCP Tools

| Tool | Description |
|------|-------------|
| `update_lottery` | Update lottery data to local database |
| `query_lottery` | Query lottery results by date range |
| `check_prize` | Check winning status for given numbers |
| `get_latest_results` | Get recent lottery results |

## Configuration

Add to your MCP config (e.g., `.kiro/settings/mcp.json`):

```json
{
  "mcpServers": {
    "lottery": {
      "command": "python",
      "args": ["/path/to/lottery_mcp_server.py"],
      "env": {
        "LOTTERY_DATA_DIR": "/path/to/data"
      },
      "disabled": false,
      "autoApprove": ["update_lottery", "query_lottery", "check_prize", "get_latest_results"]
    }
  }
}
```

### Environment Variables

| Variable | Description | Default |
|----------|-------------|---------|
| `LOTTERY_DATA_DIR` | Directory to store lottery data | `~/lottery_data` |

## Usage Examples

### Update lottery data
```python
update_lottery("double_ball", "2025-12-01", "2026-01-18")
update_lottery("super_lotto", "2025-12-01", "2026-01-18")
```

### Query results
```python
query_lottery("double_ball", "2025-12-01", "2026-01-18")
```

### Check prize (Double Color Ball: 6 red + 1 blue)
```python
check_prize("double_ball", "2025-12-01", "2026-01-18", [3, 11, 14, 19, 29, 30, 15])
```

### Check prize (Super Lotto: 5 front + 2 back)
```python
check_prize("super_lotto", "2025-12-01", "2026-01-18", [8, 13, 27, 30, 32, 2, 3])
```

### Get latest results
```python
get_latest_results("double_ball", 5)
get_latest_results("super_lotto", 10)
```

## Lottery Types

| Type | ID | Description | Numbers |
|------|-----|-------------|---------|
| `double_ball` | 双色球 | Double Color Ball | 6 red (1-33) + 1 blue (1-16) |
| `super_lotto` | 大乐透 | Super Lotto | 5 front (1-35) + 2 back (1-12) |

## Prize Levels

### Double Color Ball (双色球)
| Level | Red Match | Blue Match |
|-------|-----------|------------|
| 一等奖 | 6 | ✓ |
| 二等奖 | 6 | ✗ |
| 三等奖 | 5 | ✓ |
| 四等奖 | 5 or 4+blue | - |
| 五等奖 | 4 or 3+blue | - |
| 六等奖 | 0-2 | ✓ |

### Super Lotto (大乐透)
| Level | Front Match | Back Match |
|-------|-------------|------------|
| 一等奖 | 5 | 2 |
| 二等奖 | 5 | 1 |
| 三等奖 | 5 | 0 |
| 四等奖 | 4 | 2 |
| 五等奖 | 4 | 1 |
| 六等奖 | 3 | 2 |
| 七等奖 | 4+0 or 3+1 | - |
| 八等奖 | Various combinations | - |

## Data Source

Data is fetched from [中国福彩网](https://www.zhcw.com/):
- 双色球: https://www.zhcw.com/kjxx/ssq/
- 大乐透: https://www.zhcw.com/kjxx/dlt/

## License

MIT License

## Disclaimer

This tool is for educational and entertainment purposes only. Please gamble responsibly.

TDQS

A3.8/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: checking prizes for a number, getting recent results, querying historical results by date range, and updating the local database. No overlap.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (check_prize, get_latest_results, query_lottery, update_lottery), making them predictable and easy to understand.

Tool Count5/5

With 4 tools, the server is well-scoped for its purpose: prize checking, result retrieval (recent and historical), and data maintenance. This is a reasonable number for a focused lottery MCP server.

Completeness4/5

The tool set covers core operations: checking prizes, fetching latest results, querying historical results, and updating data. Minor gaps like a tool to retrieve a specific draw by issue number or list supported types are not critical.

Maintenance

ActivityInactive
ResponsivenessNo issues