Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
Date/time math for agents: business days, holidays, time zones, cron, RRULE. 25 free calls/day.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
DATE_MATH_PRIVATE_KEY, DATE_MATH_MAX_PRICEAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Funktioniert in Claude im Web, auf dem Desktop und auf dem Handy:
https://date-math.datemath.workers.dev/mcpÖffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"date-math": {
"command": "npx",
"args": [
"-y",
"date-math-mcp"
],
"env": {
"DATE_MATH_PRIVATE_KEY": "your-value",
"DATE_MATH_MAX_PRICE": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add --transport http date-math https://date-math.datemath.workers.dev/mcpclaude mcp add date-math --env DATE_MATH_PRIVATE_KEY=your-value --env DATE_MATH_MAX_PRICE=your-value -- npx -y date-math-mcpTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"date-math": {
"url": "https://date-math.datemath.workers.dev/mcp"
}
}
}In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"date-math": {
"command": "npx",
"args": [
"-y",
"date-math-mcp"
],
"env": {
"DATE_MATH_PRIVATE_KEY": "your-value",
"DATE_MATH_MAX_PRICE": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"date-math": {
"type": "http",
"url": "https://date-math.datemath.workers.dev/mcp"
}
}
}In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"date-math": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"date-math-mcp"
],
"env": {
"DATE_MATH_PRIVATE_KEY": "your-value",
"DATE_MATH_MAX_PRICE": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
ChatGPT verbindet sich nur mit Servern im Internet:
https://date-math.datemath.workers.dev/mcpMenünamen können sich je nach Tarif und mit der Zeit leicht unterscheiden.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
DATE_MATH_MAX_PRICE envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Tool-Namen und -Beschreibungen genau so, wie der Server sie am 9. Nov. 2026 gemeldet hat. Geschrieben hat sie der Entwickler, nicht wir; wir zeigen sie als reinen Text.
date_diffHow many days, weeks, months or business days between two dates or datetimes: calendar (Y/M/D), totals, and business days (weekdays in [from, to) minus holidays; pass country to exclude its public holidays). Use for age, tenure, countdowns, notice periods and working days until a
date_addAdd or subtract years/months/weeks/days/business days/hours/minutes/seconds from a date. Month-end clamping; business days skip weekends, given holidays, and the public holidays of an optional country. Use for due dates, deadlines, delivery estimates, expiry and "N working days f
timezone_convertConvert a time between time zones (IANA names like Asia/Manila, America/New_York), DST-aware. Use for "what time is 3pm Manila in New York", scheduling across zones and UTC offsets. First 25 calls per day are free, then $0.001 per call (x402).
date_infoCalendar facts for a date: day of the week, ISO week number, quarter, day of year, leap year, weekend. Use for "what day is", week numbers and fiscal quarters. First 25 calls per day are free, then $0.001 per call (x402).
public_holidaysList public holidays (bank holidays, national holidays) for a country and year: 207 countries, 2000–2050. Use for holiday calendars, office closures and checking if a date is a holiday. Lunar or government-proclaimed dates are rule-based estimates. First 25 calls per day are free
working_hours_overlapFind when working hours overlap across time zones: the best meeting times for a distributed or remote team. Per-participant hours optional; skips weekends by default; up to 14 days. First 25 calls per day are free, then $0.001 per call (x402).
cron_scheduleExplain a cron expression in plain English and list its next run times in any time zone. Use to check or debug crontab and scheduled-job schedules. First 25 calls per day are free, then $0.001 per call (x402).
parse_date_textParse natural-language dates and relative times like "next Friday at 3pm", "in 2 weeks", "tomorrow morning" or "Dec 25 to Jan 2" into exact ISO datetimes, relative to a reference time and time zone. Use before acting on any date a user typed. First 25 calls per day are free, then
city_timeFind the time zone and current local time in up to 10 cities by name ("Cebu", "São Paulo", "Springfield" + country). 7,000+ cities. Use for "what time is it in" questions and to get the IANA zone the other tools need. First 25 calls per day are free, then $0.001 per call (x402).
recurring_datesExpand a recurring event or iCalendar RRULE ("every 2nd Tuesday", "Mon/Wed until June") into concrete dates and times in a time zone, DST-aware, with optional excluded dates. Use for repeating meetings, calendar invites and schedules. First 25 calls per day are free, then $0.001
business_hours_deadlineSLA math in working hours: the deadline N business hours after a start time, or business time elapsed between two times. Use for support-ticket SLAs, response-time targets and office-hours deadlines. Custom hours and workdays, holidays, country public holidays, DST-aware. First 2
business_dayIs a date a business day? If not, why (weekend, or which public holiday). Also the next and previous business day, and the month's business-day count, first and last business day. Use for office-open checks, shipping cut-offs, settlement dates. Country holidays, custom holidays a
pay_datesUpcoming pay or billing dates for monthly, semi-monthly (e.g. 15th and last day), biweekly or weekly schedules, moved off weekends and public holidays (to the previous, next or nearest business day). Use for payroll calendars, invoice due dates and recurring billing. First 25 cal
stay_calculatorRolling stay-limit math such as the Schengen 90/180 rule: days used in the window, days left, overstay check, the longest stay allowed from a planned entry date, and the next date a full stay is possible. Entry and exit days both count. Custom rules via max_days/window_days. Use
timestamp_normalizeDetect and convert up to 100 mixed timestamps to UTC ISO 8601: Unix seconds/ms/µs/ns, Excel serial dates, Windows FILETIME, ISO 8601, RFC 2822, YYYY/MM/DD, month-name dates. Flags ambiguous values (03/04/2026: March 4 or 3 April? 45000: Excel date or Unix seconds?) with alternati
dst_checkDaylight saving time for a time zone: does it observe DST, the year's exact clock changes (UTC instant, local before/after), and whether a local time is valid, skipped (spring-forward gap, e.g. 02:30) or repeated (fall-back, happens twice). Use before scheduling jobs, alarms or m
sla_countdownLive SLA clock for a support ticket: business minutes elapsed and remaining, breached or not, and the deadline. The clock pauses outside working hours, on weekends and holidays, and during manual pauses (e.g. waiting on customer). Custom hours, workdays, country holidays, DST-awa
find_free_slotsFind meeting times when everyone is free: intersects each participant's working hours (own time zone, workdays, country holidays) minus their busy blocks, then lists slots of the requested length. Up to 10 people, 14 days, optional buffer between meetings. Use for scheduling acro
subscription_datesSubscription and contract date math: current billing period, next renewal, upcoming renewals, cancel-by date for a notice period, free-trial start, and day-based proration of a price. Month-end anchors stay at month end (Jan 31, Feb 28, Mar 31). Use for SaaS billing, renewals, ca
market_calendarStock exchange calendar for NYSE/Nasdaq, London (LSE) and Tokyo (JPX): is the market open now, today's session (early closes, lunch break), next open and close, holidays, previous/next trading day, and the trade settlement date (T+1/T+2). Use for trading agents, order timing and
current_timeFree: the current date, time, weekday and UTC offset in up to 10 time zones, plus UTC and Unix time. Call this first whenever you need today's date; models do not know it. Does not use the daily free calls.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 10. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto JowenDelaPena bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Antwort in 404 ms (HTTP 200)
Keine Anmeldung nötig
Wir haben 21 Tool-Beschreibungen gelesen und keine versteckten Anweisungen an die KI gefunden
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 3 von 3 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: DATE_MATH_PRIVATE_KEY
Beides geht: Installiere ihn auf deinem Computer oder verbinde dich mit der Cloud-Version.
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.7.0) kam vorgestern in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL, also funktionieren auch Apps, die Remote-MCP-Server akzeptieren, zum Beispiel ChatGPT im Entwicklermodus.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, Google Jobs
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
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.
Google Jobs listings (title, company, salary, description) + AI-training job boards.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
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.