D Fetcher
Vitamin D synthesis calculator: sun position, UV, IU/min, time to dose, sunburn risk, daily window.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"vitamin-d": {
"url": "https://dfetcher.com/mcp"
}
}
}遠端端點
https://dfetcher.com/mcpstreamable-http它能做什麼
工具清單
工具(3)
🔴calculate(lat, lon, skin, area, scalp, ...)
Calculate vitamin D synthesis at a given location and time. Returns sun position, UV index, IU/min, minutes to reach the target dose, MED (sunburn threshold), the peak window, and optional 15-min day / monthly year curves. UV index uses a live satellite-driven forecast where available, with a clear-sky fallback.
輸入結構描述
{
"type": "object",
"properties": {
"lat": {
"type": "number",
"minimum": -90,
"maximum": 90,
"description": "Latitude in degrees."
},
"lon": {
"type": "number",
"minimum": -180,
"maximum": 180,
"description": "Longitude in degrees."
},
"skin": {
"type": "integer",
"minimum": 1,
"maximum": 6,
"default": 3,
"description": "Fitzpatrick skin type 1–6. Use describe_skin_types if unknown."
},
"area": {
"type": "number",
"minimum": 0,
"maximum": 1,
"default": 0.25,
"description": "Exposed body fraction. 0.10 face+hands, 0.25 arms+face, 0.40 t-shirt+shorts, 0.85 near-full body."
},
"scalp": {
"type": "string",
"enum": [
"hair",
"bald"
],
"default": "hair",
"description": "Scalp coverage. \"bald\" adds ~3.5% BSA."
},
"age": {
"type": "integer",
"minimum": 1,
"maximum": 120,
"default": 45,
"description": "Age in years (used for the age factor)."
},
"target": {
"type": "integer",
"minimum": 100,
"maximum": 50000,
"default": 1000,
"description": "Daily vitamin D target in IU."
},
"date": {
"type": "string",
"description": "ISO 8601 timestamp or epoch ms. Defaults to now."
},
"day": {
"type": "boolean",
"default": true,
"description": "Include 15-min samples through the local day."
},
"year": {
"type": "boolean",
"default": true,
"description": "Include monthly solar-noon samples with cloud climatology."
}
},
"required": [
"lat",
"lon"
]
}🟢geocode(query)
Turn a place name, postal code, or "code, CC" string into { lat, lon, label }. Auto-detects US/CA/GB/NL/JP/BR postal patterns; ambiguous digit-only codes default to US unless the caller appends a country code (e.g. "10115, DE"). Falls back to Open-Meteo place-name search for everything else.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "City name, postal code, or \"CODE, CC\" (e.g. \"75001, FR\")."
}
},
"required": [
"query"
]
}🟢describe_skin_types
Returns the six Fitzpatrick skin types with sun-reactivity behavior and descriptive ancestry hints. Call this when the user's skin type is unknown so you can pick the closest match before calling calculate.
輸入結構描述
{
"type": "object",
"properties": {}
}社群
證據