Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Exact date/time math for agents: business days, holidays, time zones, cron, RRULE, SLA. x402 paid.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
https://date-math.datemath.workers.dev/mcpターミナルでこれを実行します
claude mcp add --transport http date-math https://date-math.datemath.workers.dev/mcpプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"date-math": {
"url": "https://date-math.datemath.workers.dev/mcp"
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"date-math": {
"type": "http",
"url": "https://date-math.datemath.workers.dev/mcp"
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
https://date-math.datemath.workers.dev/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
ツールの名前と説明は、サーバーが2026年11月7日に返したそのままの内容です。書いたのは作者で、私たちではありません。プレーンテキストとして表示しています。
date_diffDifference between two dates or datetimes: calendar (Y/M/D), total days/weeks/hours, and business days (weekdays in [from, to) minus holidays; pass country to exclude its public holidays). Costs $0.001 per call (x402).
date_addAdd or subtract years/months/weeks/days/business days/hours/minutes/seconds. Month-end clamping; business days skip weekends, given holidays, and the public holidays of an optional country. Costs $0.001 per call (x402).
timezone_convertConvert an instant or local wall-clock time between IANA time zones (DST-aware). Costs $0.001 per call (x402).
date_infoCalendar facts for a date: weekday, ISO week, quarter, day of year, leap year, weekend. Costs $0.001 per call (x402).
public_holidaysPublic holidays for a country and year: 207 countries, 2000–2050. Lunar or government-proclaimed dates are rule-based estimates. Costs $0.001 per call (x402).
working_hours_overlapFind when working hours overlap across time zones (meeting windows). Per-participant hours optional; skips weekends by default; up to 14 days. Costs $0.001 per call (x402).
cron_scheduleExplain a cron expression in plain English and list its next run times in any time zone. Costs $0.001 per call (x402).
parse_date_textResolve natural-language dates like "next Friday at 3pm", "in 2 weeks" or "Dec 25 to Jan 2" to exact datetimes, relative to a reference time and time zone. Costs $0.001 per call (x402).
city_timeFind the IANA time zone and current local time for up to 10 cities by name ("Cebu", "São Paulo", "Springfield" + country). 7,000+ cities. Costs $0.001 per call (x402).
recurring_datesExpand an iCalendar RRULE ("every 2nd Tuesday", "Mon/Wed until June") into concrete dates and times in a time zone, DST-aware, with optional excluded dates. Costs $0.001 per call (x402).
business_hours_deadlineSLA math in working hours: the deadline N business hours after a start time, or business time elapsed between two times. Custom hours and workdays, holidays, country public holidays, DST-aware. Costs $0.001 per call (x402).
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント JowenDelaPena で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
280ミリ秒で応答(HTTP 200)
サインイン不要
11件のツールの説明を読み、AIへの隠れた指示は見つかりませんでした
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
作者のクラウドで動きます。インストール不要でインターネット経由でつながりますが、送った内容は作者のサーバーを通ります。
GitHubリポジトリの最終更新は–、最新バージョン(1.2.0)がレジストリに届いたのは今日です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Playcal
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Edit-settle-verify loop, observe, replay and log tools for AI agents working in the Unity Editor
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Exact date and time math for AI agents, paid per call. LLMs are unreliable at business days, DST, recurring schedules and holiday calendars. Date Math gives them deterministic answers over HTTP or MCP.
https://date-math.datemath.workers.devhttps://date-math.datemath.workers.dev/mcp (Streamable HTTP)/llms.txt · /openapi.jsonHTTP (POST, JSON body) | MCP tool | What it does |
|---|---|---|
/v1/diff | date_diff | Days, weeks, months and business days between two dates. Pass country to skip its public holidays. |
/v1/add | date_add | The date N days, weeks, months or business days before or after a date |
/v1/convert | timezone_convert | Converts a time between IANA time zones (DST-aware) |
/v1/info | date_info | Weekday, ISO week, quarter, day of year, leap year |
/v1/holidays | public_holidays | Public holidays for 207 countries, 2000–2050 |
/v1/overlap | working_hours_overlap | When working hours overlap across time zones (meeting slots) |
/v1/cron | cron_schedule | Explains a cron expression and lists its next runs in any zone |
/v1/parse | parse_date_text | "next Friday at 3pm" → an exact ISO datetime |
/v1/city | city_time | City name → time zone and local time (7,000+ cities) |
/v1/recurrence | recurring_dates | Expands an iCal RRULE ("every 2nd Tuesday") into dates |
/v1/business_hours | business_hours_deadline | SLA deadline N working hours from now, or working time elapsed |
Every response is a JSON object. Errors look like {"error":{"code","message"}}. Full schemas and examples are in /openapi.json.
# Unpaid call → HTTP 402 with payment terms in the PAYMENT-REQUIRED header
curl -i -X POST https://date-math.datemath.workers.dev/v1/business_hours \ -H "Content-Type: application/json" \ -d '{"start":"2026-11-06T16:00","hours":2,"timezone":"Asia/Manila","country":"PH"}'
| Request body | Result |
|---|---|
/v1/business_hours {"start":"2026-11-06T16:00","hours":2,"timezone":"Asia/Manila"} | "deadline":"2026-11-09T10:00:00+08:00" (Monday) |
/v1/add {"date":"2026-12-22","business_days":5,"country":"PH"} | "result":"2026-12-31" (skips Christmas and Rizal Day) |
/v1/overlap {"timezones":["Asia/Manila","Europe/London"],"date":"2026-11-10","work_end":"18:00"} | One window: 09:00–10:00Z |
/v1/recurrence {"rrule":"FREQ=MONTHLY;BYDAY=2TU","start":"2026-01-01T10:00","timezone":"Asia/Manila","count":3} | Jan 13, Feb 10, Mar 10 at 10:00 +08:00 |
Any x402 client pays automatically. With the official TypeScript client:
import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm"; import { privateKeyToAccount } from "viem/accounts";
const pay = wrapFetchWithPaymentFromConfig(fetch, { schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(privateKeyToAccount(process.env.KEY as 0x${string})) }], });
const res = await pay("https://date-math.datemath.workers.dev/v1/city", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ cities: ["Cebu", "London"] }), }); console.log(await res.json());
The wallet needs USDC on Base. No ETH is required, because the facilitator pays gas.
https://date-math.datemath.workers.dev/mcp (Streamable HTTP, stateless)tools/list) is free._meta, and x402-aware clients handle it automatically:import { createx402MCPClient } from "@x402/mcp";
import { ExactEvmScheme } from "@x402/evm/exact/client"; import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
const client = createx402MCPClient({ name: "my-agent", version: "1.0.0", schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(account) }], autoPayment: true, }); await client.connect(new StreamableHTTPClientTransport(new URL("https://date-math.datemath.workers.dev/mcp"))); const r = await client.callTool("public_holidays", { country: "US", year: 2026 });
MCP clients without x402 support can list the tools, but calls return "Payment required".
The service is a single Cloudflare Worker and fits the free plan: every tool uses 0–6 ms of CPU per call.
cd worker
npm install npm test # 99 tests npx wrangler login npx wrangler deploy
Set your own wallet and price in worker/wrangler.toml:
| Setting | Meaning |
|---|---|
PAY_TO | Your wallet address. Leave empty to make every endpoint free. |
PRICE | Price per call, e.g. $0.001 |
X402_NETWORK | eip155:8453 (Base) or eip155:84532 (Base Sepolia, for testing) |
FACILITATOR_URL | Defaults to PayAI: no key needed, and it pays gas |
Optional secrets (set with npx wrangler secret put):
To check your deployment against x402scan's discovery rules, run node tools/x402scan-audit.mjs https://your-worker.workers.dev.
@x402/hono and @x402/mcp.x-payment-info, /.well-known/x402, x402 Bazaar metadata on every 402, and llms.txt.worker/scripts/build-*.mjs), so lookups are O(1) per request.Intl formatters and a week-segment cache. They're tested against direct lookups for tricky zones (Morocco, Lord Howe, Chatham).worker/src/cron.ts), checked against cron-parser on 400 random expressions.new Function), which Workers blocks. wrangler.toml aliases it to a no-op shim (worker/src/shims/bazaar.ts).Contact: see info.contact in /openapi.json.