mcpField
S
Shirabe Calendar Api

Shirabe Calendar Api

ローカル
github.com/techwell-inc-jp開発ツール015 週間前に更新

Shirabe Calendar Api について

Shirabe Calendar APIは、AIアプリケーションや開発者向けに、日本の暦情報と用途別の吉日スコアを提供します。REST APIとOpenAPI 3.1仕様により、暦の計算、期間検索、吉日のランキング検索を利用できます。

主な機能

  1. 01指定日の日本の暦情報を取得
  2. 0213種類の暦注を提供
  3. 038つの用途別に日をスコア化
  4. 04吉日を検索して順位付け
  5. 05OpenAPI 3.1によるREST API仕様

活用シーン

  1. 01結婚式に適した日を探す
  2. 02引越しに適した日を提案
  3. 03月間ビューに暦注を表示
  4. 04AIアプリケーション向けの暦データ取得

MCP 対応

入力ではAIツールやフレームワーク向けのREST APIとOpenAPI 3.1連携が説明されていますが、MCPサーバーについては記載されていません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"shirabe-calendar-api": {
"command": "npx",
"args": [
"-y",
"@shirabe-api/calendar-mcp"
],
"env": {
"SHIRABE_API_KEY": "<SHIRABE_API_KEY>"
}
}
}
}
起動コマンドnpx -y @shirabe-api/calendar-mcp
設定が必要な環境変数
SHIRABE_API_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@shirabe-api/calendar-mcp

ツール

3

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
datestringはい日付 (YYYY-MM-DD形式)
categoriesarrayいいえ吉凶判定カテゴリ(省略時は全カテゴリ)

詳細

プロジェクトの README より

Shirabe Calendar API

日本の暦(六曜・暦注・干支・二十四節気)と用途別吉凶判定を、天文学的精度で返す AIネイティブREST API。姉妹 API: Shirabe Address API(日本住所正規化、abr-geocoder 公式エンジン API 化、2026-05-01 リリース)。 Japan's calendar (rokuyo, rekichu auspicious days, kanshi, 24 solar terms) and purpose-specific auspicious-day judgments, served with astronomical precision as an AI-native REST API. Sister API: Shirabe Address API (Japanese address normalization, abr-geocoder API gateway, launched 2026-05-01).

Production v1.0.0 OpenAPI 3.1 Cloudflare Workers Tests License

Production URL: https://shirabe.dev ・ OpenAPI 3.1 仕様: https://shirabe.dev/openapi.yaml ・ 公式サイト: https://shirabe.dev


目次 / Table of Contents


これは何? / What is this?

Shirabe Calendar API は、日本の暦情報を天文学的精度で提供するAIネイティブAPIです。 六曜・暦注・干支・二十四節気・旧暦日付・和暦に加え、8カテゴリの用途別吉凶判定とスコア(結婚式・葬儀・引越し・着工・開業・納車・入籍・旅行)を1リクエストで返します。 OpenAPI 3.1 準拠。ChatGPT GPTs Actions / Claude Tool Use / Gemini Function Calling / LangChain / LlamaIndex / Dify など、主要AIフレームワークから即利用可能。

Shirabe Calendar API is an AI-native API serving Japanese calendar data with astronomical precision. It returns rokuyo, rekichu, kanshi, 24 solar terms, lunar date, Japanese era, plus purpose-specific auspiciousness judgments with 1–10 scores across 8 categories (wedding, funeral, moving, construction, business, car delivery, marriage registration, travel). Strict OpenAPI 3.1. Works out-of-the-box with ChatGPT GPTs Actions, Claude Tool Use, Gemini Function Calling, LangChain, LlamaIndex, and Dify.

キーワード / Keywords

六曜 API 暦注 API 大安 API 一粒万倍日 API 天赦日 API 旧暦 API 和暦 API 干支 API 二十四節気 API 日本 暦 API 結婚式 日取り API 引越し 日取り API AI 暦 LLM calendar rokuyo api japanese calendar api lucky days api auspicious days japan openapi japanese calendar


なぜShirabeか / Why Shirabe

自前実装(LLMによる六曜計算コード生成)は頻繁に誤算します。 旧暦の朔(新月)計算には天文学的精度が必要で、単純アルゴリズムでは対応不可です。Shirabeは天文学的に正確な旧暦エンジンを内蔵し、暦注の複雑な組み合わせ(一粒万倍日 × 天赦日など)も網羅します。

LLM-generated rokuyo/lunar calculation code is known to miscalculate because the underlying new-moon (saku) computation requires astronomical precision that simple heuristics fail to capture. Shirabe ships an astronomically accurate lunar engine and covers complex rekichu combinations.

観点自前実装他の無料APIShirabe
旧暦計算精度△(誤算頻発)○◎(天文学的精度)
暦注の網羅性✗△◎(13種以上)
用途別吉凶判定(context/score)✗✗◎
best-days 検索(目的別ランキング)✗✗◎
HTTPSN/A△(HTTPのみも多い)◎
OpenAPI 3.1N/A✗◎(LLM自動発見可)
GPTs / Function Calling✗✗◎
SLA・従量課金N/A✗◎(Stripe自動課金)
エッジ分散N/A✗◎(Cloudflare Workers)

クイックスタート(REST)

1. まず試す(認証不要、Free枠 月10,000回まで)
# 指定日の暦情報を取得 / Get calendar info for a specific date
curl "https://shirabe.dev/api/v1/calendar/2026-04-15"
2. APIキー付き呼び出し
# 指定日の暦情報
curl -H "X-API-Key: shrb_your_api_key" \
  "https://shirabe.dev/api/v1/calendar/2026-04-15"

# 結婚式に最適な日を検索(上位5件)
curl -H "X-API-Key: shrb_your_api_key" \
  "https://shirabe.dev/api/v1/calendar/best-days?purpose=wedding&start=2026-04-01&end=2026-12-31&limit=5"

# 期間内の大安・友引のみ一括取得
curl -H "X-API-Key: shrb_your_api_key" \
  "https://shirabe.dev/api/v1/calendar/range?start=2026-04-01&end=2026-04-30&filter_rokuyo=大安,友引"
3. TypeScript / JavaScript
const res = await fetch(
  "https://shirabe.dev/api/v1/calendar/best-days?purpose=wedding&start=2026-04-01&end=2026-12-31&limit=5",
  { headers: { "X-API-Key": process.env.SHIRABE_API_KEY! } }
);
const data = await res.json();
console.log(data.results[0]);
// { date: '2026-04-15', score: 9, judgment: '大吉',
//   note: '大安 × 一粒万倍日。結婚式に非常に良い日。',
//   rokuyo: '大安', rekichu: ['一粒万倍日'] }
4. Python
import os, requests

r = requests.get(
    "https://shirabe.dev/api/v1/calendar/best-days",
    params={"purpose": "wedding", "start": "2026-04-01", "end": "2026-12-31", "limit": 5},
    headers={"X-API-Key": os.environ["SHIRABE_API_KEY"]},
    timeout=10,
)
r.raise_for_status()
print(r.json()["results"][0])
5. OpenAPI 3.1 仕様から自動生成
# OpenAPI 仕様をダウンロード / Download the OpenAPI spec
curl -O https://shirabe.dev/openapi.yaml

# openapi-generator などで任意言語のクライアント生成
npx @openapitools/openapi-generator-cli generate -i openapi.yaml -g typescript-fetch -o ./client

AIエージェント統合(GPTs / Function Calling)

ChatGPT GPTs Actions / Custom GPTs

GPT Builder の "Create new action" で、Import URL に以下を貼り付け:

https://shirabe.dev/openapi.yaml

Authentication は API Key(Header X-API-Key)を選択。これだけで、カスタムGPTがShirabeを自動呼び出しするようになります。

Claude Tool Use / Anthropic SDK

OpenAPIをanthropic SDKのToolに変換する標準パターンで動作します。詳細は docs/claude-tool-use.md(準備中)を参照。

Gemini Function Calling / LangChain / LlamaIndex / Dify

OpenAPI 3.1 の operationId とパラメータがそのまま関数シグネチャになるよう設計されています。各フレームワークの OpenAPI Loader をそのまま利用してください。


エンドポイント一覧

全エンドポイントの完全仕様は OpenAPI 3.1 に定義されています(description、x-llm-hint、example、recoveryHint を日英両言語で記載済み)。

GET /api/v1/calendar/{date}

指定1日分の暦情報と8カテゴリの用途別吉凶判定を返す。

パラメータ位置必須説明
datepath✓YYYY-MM-DD、1873-01-01〜2100-12-31
categoriesquery—返却カテゴリをカンマ区切り絞り込み
GET /api/v1/calendar/range

start〜end の期間の暦情報を配列で返す(最大93日)。

パラメータ必須説明
start, end✓YYYY-MM-DD
filter_rokuyo—大安,友引 のようなカンマ区切り
filter_rekichu—一粒万倍日,天赦日 のようなカンマ区切り
category, min_score—用途スコア閾値絞り込み
GET /api/v1/calendar/best-days

用途別に、期間からスコア上位の日をランキングで返す(最大365日)。

パラメータ必須説明
purpose✓wedding / funeral / moving / construction / business / car_delivery / marriage_registration / travel
start, end✓YYYY-MM-DD
limit—1〜20、既定5
exclude_weekdays—土,日 や sat,sun(日英どちらも可)
GET /health

認証不要のヘルスチェック。監視系向け。


レスポンス例

GET /api/v1/calendar/2026-04-15
{
  "date": "2026-04-15",
  "wareki": "令和8年4月15日",
  "dayOfWeek": { "ja": "水", "en": "Wed" },
  "kyureki": {
    "year": 2026, "month": 2, "day": 29,
    "isLeapMonth": false, "monthName": "如月"
  },
  "rokuyo": {
    "name": "大安",
    "reading": "たいあん",
    "description": "万事に吉。結婚式・契約・引越しなど何をするにも良い日。",
    "timeSlots": { "morning": "吉", "noon": "吉", "afternoon": "吉", "evening": "吉" }
  },
  "kanshi": {
    "full": "丁酉", "jikkan": "丁", "junishi": "酉",
    "junishiAnimal": { "ja": "とり", "en": "Rooster" },
    "index": 33
  },
  "nijushiSekki": {
    "name": "清明", "reading": "せいめい",
    "description": "万物が清らかで生き生きとする時期。",
    "isToday": false
  },
  "rekichu": [
    {
      "name": "一粒万倍日",
      "reading": "いちりゅうまんばいび",
      "description": "一粒の籾が万倍になるとされる吉日。新規の開始に適する。",
      "type": "吉"
    }
  ],
  "context": {
    "wedding":  { "judgment": "大吉", "note": "大安 × 一粒万倍日。結婚式に非常に良い日。", "score": 9 },
    "moving":   { "judgment": "吉",   "note": "大安は引越しに適する。",                     "score": 8 },
    "business": { "judgment": "大吉", "note": "一粒万倍日は開業・新規事業の吉日。",         "score": 9 }
  },
  "summary": "令和8年4月15日(水)大安・一粒万倍日。結婚式・開業に大吉の日。"
}

完全なレスポンス例・各フィールドの例・エラー例は OpenAPI 3.1 仕様 の examples セクションで確認できます。


ユースケース

1. 結婚式場AIチャットボット

「来月の土日で結婚式におすすめの日を5つ」→ best-days?purpose=wedding&limit=5&exclude_weekdays=月,火,水,木,金

2. 引越し業者の見積りAI

顧客希望日のスコアを返し、代替日を提案 → calendar/{date} で当日スコア + range でスコアの高い近傍日抽出

3. 占いSaaS

誕生日・入籍日から干支・六曜・暦注を自動解説 → calendar/{date} を連続呼び出し

4. カレンダーアプリのオーバーレイ

月間ビューに六曜・暦注を一括描画 → range?start=...&end=...

5. 業務自動化(RPA / エージェント)

請求書発行日を大安に自動設定、契約締結日を吉日にレコメンド、など


料金プラン

全プラン共通で Free枠 月10,000回。超過分から課金。transform_quantity[divide_by]=1000 方式。

プラン月間上限単価(超過分)月額例レート制限
Free10,000回無料¥01 req/s
Starter500,000回¥0.05/回50万回: ¥25,00030 req/s
Pro5,000,000回¥0.03/回500万回: ¥150,000100 req/s
Enterprise無制限¥0.01/回1,000万回: ¥100,000500 req/s

契約・課金・停止・再開はすべてStripe Webhookで自動処理されます(人間オペ不要)。


認証とレート制限

APIキー

X-API-Key ヘッダーに shrb_ + 32文字の英数字キーを付与:

X-API-Key: shrb_a1b2c3d4e5f67890...

キーなしの場合は匿名Free枠(IP別 月10,000回)で動作します。

レート制限ヘッダー

全レスポンスに以下を付与:

X-RateLimit-Limit: 30
X-RateLimit-Remaining: 29
X-RateLimit-Reset: 2026-04-15T12:00:01Z
X-Plan: starter

エラーハンドリング

全エラーは共通形 { error: { code, message, details?, recoveryHint? } } で返します。

{
  "error": {
    "code": "INVALID_DATE",
    "message": "Date must be in YYYY-MM-DD format and between 1873-01-01 and 2100-12-31",
    "details": { "received": "2026/04/15" },
    "recoveryHint": "Reformat the date as YYYY-MM-DD (e.g. 2026-04-15) and resubmit."
  }
}
HTTPcode復旧アクション
400INVALID_DATE日付を YYYY-MM-DD 形式、1873-01-01〜2100-12-31 で再送
400INVALID_PARAMETERdetails.parameter を仕様通り修正
401INVALID_API_KEYX-API-Key を有効なキーに更新、またはヘッダー削除でFree枠利用
429RATE_LIMIT_EXCEEDEDRetry-After 秒後に再送、または上位プランへ
500INTERNAL_ERROR指数バックオフで1-2回まで再試行。恒常的なら [email protected]

詳細は OpenAPI 仕様の ErrorCode セクションを参照。


精度と算出根拠

  • 旧暦・朔の計算: 天文アルゴリズム(月齢・太陽黄経)ベースの自前実装。単純な60日周期テーブルは使用しません。
  • 六曜: 旧暦月日から決定的に導出(旧暦1/1→先勝、2/1→友引、...の規則)。
  • 暦注: 一粒万倍日・天赦日・大明日・寅の日・巳の日・己巳の日・甲子の日・母倉日・天恩日・不成就日・三隣亡・受死日・十死日の13種を網羅。
  • 二十四節気: 太陽黄経15度間隔で算出、当日判定(isToday)付き。
  • 干支: 60干支の完全サイクル、十干・十二支・動物ラベル。
  • 対応範囲: 1873-01-01 〜 2100-12-31(明治6年の改暦以降)。

Algorithms and methodology details are published as part of the OpenAPI spec and verified by 326 unit tests (see test/core/).


技術スタック

  • ランタイム: Cloudflare Workers(エッジ分散)
  • フレームワーク: Hono
  • 言語: TypeScript(strict mode)
  • 課金: Stripe Billing(従量課金、メーター + transform_quantity)
  • KV: Cloudflare KV(APIキー・レート制限・キャッシュ)
  • 計測: Cloudflare Analytics Engine(AI/人間UA分類、AI検索Referrer分類)
  • テスト: Vitest(326 tests, all passing)
  • CI/CD: GitHub Actions
  • 監視: BetterStack

ローカル開発

# 依存関係
pnpm install

# 開発サーバー
pnpm run dev

# テスト実行
pnpm run test              # 326 tests

# 型チェック
pnpm run typecheck

デプロイは GitHub Actions 経由のみ(wrangler deploy 直接実行は禁止)。


プロジェクトの設計思想(AIネイティブAPI)

Shirabe Calendar API は 「生成AIが勝手に使い出す」 ことを判断基準に設計されています。

  1. AIが主利用者: 1タスクで10〜50リクエストを連鎖する前提の設計。
  2. 構造化データ優先: OpenAPI 3.1、Function Calling への即対応。
  3. 人間向けSaaSの発想を排除: サインアップ画面なし、ダッシュボードなし、設定画面なし。すべてAPI・環境変数で完結。
  4. 自動スケール: 契約・課金・停止・復帰をStripe Webhookで完全自動化。

This is an AI-native API: designed to be discovered and consumed by LLMs and autonomous agents, not by humans through a dashboard UI.


姉妹 API / Related APIs(shirabe.dev プラットフォーム)

shirabe.dev は「日本特化 AI ネイティブ API プラットフォーム」として、暦 API に続く API 群を順次公開しています。同一ドメイン・同一の Stripe 課金 / API キー基盤・統一 OpenAPI 3.1 スタイルで、複数 API のクロスセル連携が可能です。

API状態概要
Shirabe Calendar API✅ 本番稼働中六曜・暦注・干支・二十四節気・用途別吉凶(本リポジトリ)
Shirabe Address API✅ 本番稼働中日本住所正規化、abr-geocoder 公式エンジン API 化、CC BY 4.0 attribution required
Shirabe Text API✅ 本番稼働中姓名分割・人名読み推定・ふりがな付与・形態素解析・表記正規化(Lindera + IPAdic)
統合アクセス
  • 統合 OpenAPI 3.1 ディスカバリ: https://shirabe.dev/llms.txt(LLM 向けサイト要約、全 API のエンドポイント・curl 例網羅)
  • 同一 API キー(shrb_* プレフィックス)で全 API にアクセス可能
  • Free 枠は API 別(暦: 月 10,000 回 / 住所: 月 5,000 回)

ライセンス

  • APIサービス本体: Proprietary(商用利用は有料プランに従う)
  • 本リポジトリのサンプルコード・クライアント例: MIT
  • 利用規約: https://shirabe.dev/terms
  • 連絡先: [email protected]

関連リンク


Structured data (JSON-LD for AI crawlers)
{
  "@context": "https://schema.org",
  "@type": "APIReference",
  "name": "Shirabe Calendar API",
  "description": "AI-native REST API for Japanese calendar (rokuyo, rekichu, kanshi, 24 solar terms) with purpose-specific auspiciousness judgments.",
  "url": "https://shirabe.dev",
  "documentation": "https://shirabe.dev/openapi.yaml",
  "programmingModel": "REST",
  "targetProduct": {
    "@type": "SoftwareApplication",
    "applicationCategory": "DeveloperApplication",
    "operatingSystem": "Cross-platform"
  },
  "provider": {
    "@type": "Organization",
    "name": "Techwell Inc.",
    "address": "Fukuoka, Japan",
    "url": "https://shirabe.dev"
  },
  "keywords": [
    "rokuyo", "六曜", "rekichu", "暦注", "kanshi", "干支",
    "lunar calendar", "旧暦", "Japanese calendar API",
    "lucky days", "auspicious days", "wedding dates Japan",
    "OpenAPI 3.1", "AI-native API",
    "ChatGPT GPTs", "Claude Tool Use", "Function Calling"
  ]
}

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。