D Fetcher

changelog

What's changed, newest first. Back to the calculator →

2026-05-28

  • Geocoder fix. Canadian, UK, and Dutch postal codes were 404'ing against zippopotam.us because we sent the full postcode but the service only stores the outward portion (FSA / sector). Now we look up the outward and preserve the user's typed code in the label. Bare outward codes (SW1A, M5V) also resolve directly.
  • MCP server. D Fetcher now speaks the Model Context Protocol at /mcp. Add https://dfetcher.com/mcp to Claude Desktop / Claude Code / any MCP client and the calculate, geocode, and describe_skin_types tools light up.
  • FAQ. Plain-English answers to the ten questions people actually ask about the model: accuracy, cloud handling, glass / sunscreen / shade, the 20° elevation cutoff, what counts as medical advice. Search-engine-friendly (FAQPage schema). Read the FAQ →
  • Structured data. JSON-LD added to every page (WebApplication, TechArticle, FAQPage, WebPage + breadcrumbs) so Google / Bing / AI assistants can surface the calculator with richer context.
  • API docs page. Endpoint, parameters, response shape, errors, and caching documented at /api, with a one-click copy for the URL. Footer-linked from every page.
  • JSON API. /api/calculate?lat=…&lon=… returns the same data the page computes — sun position, UV index, IU/min, minutes to target, MED, peak window, and full day + year curves. Same model, no scraping. CORS-open, 60s edge cache.
  • Shared model. The math moved to lib/dfetcher.js so the page and the API can't drift. Page now loads as an ES module.
  • Hour-by-hour chart. Today's "minutes to target" plotted across the day, anchored on live UV forecast where available and clear-sky elsewhere. Sun-below-horizon, low-sun, and synthesis-viable bands are shaded distinctly so the curve's shape is readable at a glance.
  • Global postal codes. Canadian, UK, Dutch, Japanese, and Brazilian postal formats now route directly to zippopotam.us. Other countries can be resolved with a code, CC suffix (e.g. 10115, DE). City-name search worldwide is unchanged.
  • Header refresh. Sun mark added next to the D Fetcher wordmark, with a one-line intro about what the tool is for.
  • Social card. Open Graph + Twitter card image (og.png, 1200×630) for previews on Twitter/X, LinkedIn, Facebook, iMessage, Slack.
  • Changelog page. You're reading it. Linked from the footer; included in sitemap.xml.