Sunvane Golden Hour MCP
Provides local sun times, photography light windows, sunrise/sunset, golden hour, blue hour, and twilight times for cities and dates. Supports planning up to 31 days of photography windows with calendar and CSV downloads, and comparing day length between dates.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://golden-hour.zovo.one/mcpWhat you can do with it
- Calculate golden hour times for a specific city and date
- Plan evening shoots for multiple days with CSV download
- Compare day length differences between two dates
Source and maintenance
Protocol and capabilities
- Server
- golden-hour 1.0.0
- MCP protocol
- 2025-06-18
- Tools
- 3 advertised
- Resources
- 1 advertised
- Resource templates
- 1 advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
},
"resources": {
"listChanged": true
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
3 advertised
find_sun_times — Find sun times
Use this when the user asks for a golden hour calculator, golden hour time, sunrise sunset times, sunset time today, what time is golden hour, blue hour, sunrise time, or twilight times for a city and local date. Returns local sunrise, sunset, solar noon, day length, twilight, light windows and sun azimuth. Limits: cities with population 50,000+ (plus Tromso), dates 1900–2100, flat sea-level horizon; Does not model weather or terrain.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city",
"date"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"description": "City name, for example New York. Cities with population 50,000+ are supported; the largest same-name match is used."
},
"date": {
"type": "string",
"maxLength": 10,
"description": "Local calendar date, YYYY-MM-DD, from 1900 to 2100; for example 2026-06-21."
},
"state": {
"type": "string",
"maxLength": 40,
"description": "Optional US state name or abbreviation, for example NY or New York."
},
"country": {
"type": "string",
"maxLength": 60,
"description": "Optional country name or two-letter code to narrow the match, for example US."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"mode",
"location",
"definitions",
"limitations",
"request"
],
"properties": {
"blue": {
"type": "array",
"items": {}
},
"date": {
"type": "string"
},
"days": {
"type": "number"
},
"mode": {
"enum": [
"sun",
"plan",
"compare"
],
"type": "string"
},
"civil": {},
"golden": {
"type": "array",
"items": {}
},
"period": {
"type": "string"
},
"sunset": {},
"values": {
"type": "array",
"items": {}
},
"changes": {
"type": "array",
"items": {}
},
"preview": {
"type": "array",
"items": {}
},
"request": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"sunrise": {},
"location": {
"type": "object",
"required": [
"city",
"timeZone",
"otherMatches",
"otherMatchCount"
],
"properties": {
"city": {
"type": "string"
},
"timeZone": {
"type": "string"
},
"otherMatches": {
"type": "array",
"items": {
"type": "string"
}
},
"otherMatchCount": {
"type": "number"
}
},
"additionalProperties": false
},
"nautical": {},
"timeZone": {
"type": "string"
},
"dayLength": {
"type": "string"
},
"dayStatus": {
"type": "string"
},
"downloads": {
"type": "object",
"required": [
"ics",
"csv"
],
"properties": {
"csv": {
"type": "string"
},
"ics": {
"type": "string"
}
},
"additionalProperties": false
},
"solarNoon": {},
"startDate": {
"type": "string"
},
"eventCount": {
"type": "number"
},
"definitions": {
"type": "string"
},
"limitations": {
"type": "string"
},
"astronomical": {},
"sunsetAzimuth": {
"type": [
"number",
"null"
]
},
"sunriseAzimuth": {
"type": [
"number",
"null"
]
},
"dayLengthSeconds": {
"type": "number"
}
},
"additionalProperties": false
}{
"title": "Find sun times",
"readOnlyHint": true,
"openWorldHint": false,
"destructiveHint": false
}plan_golden_hour_shoot — Plan golden hour shoot
Use this when the user wants photography golden hour shoot windows for a city and a date range, with an ICS calendar file and CSV table. Choose morning, evening or both. Limits: 1–31 days, cities with population 50,000+ (plus Tromso), years 1900–2100, flat sea-level horizon; missing polar windows are reported and calendar events are only included for existing windows. Does not access or change a calendar.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city",
"start_date",
"days",
"period"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"description": "City name, for example New York. Cities with population 50,000+ are supported; the largest same-name match is used."
},
"days": {
"type": "integer",
"maximum": 31,
"minimum": 1,
"description": "Number of consecutive days, 1 to 31, for example 7."
},
"state": {
"type": "string",
"maxLength": 40,
"description": "Optional US state name or abbreviation, for example NY or New York."
},
"period": {
"enum": [
"morning",
"evening",
"both"
],
"type": "string",
"description": "Light windows to include, for example evening. A continuous window includes both periods."
},
"country": {
"type": "string",
"maxLength": 60,
"description": "Optional country name or two-letter code to narrow the match, for example US."
},
"start_date": {
"type": "string",
"maxLength": 10,
"description": "First local date in YYYY-MM-DD, for example 2026-10-12."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"mode",
"location",
"definitions",
"limitations",
"request"
],
"properties": {
"blue": {
"type": "array",
"items": {}
},
"date": {
"type": "string"
},
"days": {
"type": "number"
},
"mode": {
"enum": [
"sun",
"plan",
"compare"
],
"type": "string"
},
"civil": {},
"golden": {
"type": "array",
"items": {}
},
"period": {
"type": "string"
},
"sunset": {},
"values": {
"type": "array",
"items": {}
},
"changes": {
"type": "array",
"items": {}
},
"preview": {
"type": "array",
"items": {}
},
"request": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"sunrise": {},
"location": {
"type": "object",
"required": [
"city",
"timeZone",
"otherMatches",
"otherMatchCount"
],
"properties": {
"city": {
"type": "string"
},
"timeZone": {
"type": "string"
},
"otherMatches": {
"type": "array",
"items": {
"type": "string"
}
},
"otherMatchCount": {
"type": "number"
}
},
"additionalProperties": false
},
"nautical": {},
"timeZone": {
"type": "string"
},
"dayLength": {
"type": "string"
},
"dayStatus": {
"type": "string"
},
"downloads": {
"type": "object",
"required": [
"ics",
"csv"
],
"properties": {
"csv": {
"type": "string"
},
"ics": {
"type": "string"
}
},
"additionalProperties": false
},
"solarNoon": {},
"startDate": {
"type": "string"
},
"eventCount": {
"type": "number"
},
"definitions": {
"type": "string"
},
"limitations": {
"type": "string"
},
"astronomical": {},
"sunsetAzimuth": {
"type": [
"number",
"null"
]
},
"sunriseAzimuth": {
"type": [
"number",
"null"
]
},
"dayLengthSeconds": {
"type": "number"
}
},
"additionalProperties": false
}{
"title": "Plan golden hour shoot",
"readOnlyHint": true,
"openWorldHint": false,
"destructiveHint": false
}compare_day_length — Compare day length
Use this when the user asks for day length differences and average change per day between two local dates, or the solstices and equinoxes of a year. Returns daylight duration for each date and signed changes. Limits: cities with population 50,000+ (plus Tromso), dates/years 1900–2100, flat sea-level horizon; use either date_a and date_b or year, and not both. Does not forecast weather.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"description": "City name, for example New York. Cities with population 50,000+ are supported; the largest same-name match is used."
},
"year": {
"type": "integer",
"maximum": 2100,
"minimum": 1900,
"description": "Year whose equinox and solstice local dates to compare, for example 2026. Omit date_a/date_b."
},
"state": {
"type": "string",
"maxLength": 40,
"description": "Optional US state name or abbreviation, for example NY or New York."
},
"date_a": {
"type": "string",
"maxLength": 10,
"description": "First local date for a two-date comparison, for example 2026-03-20. Required with date_b; omit with year."
},
"date_b": {
"type": "string",
"maxLength": 10,
"description": "Second local date, for example 2026-06-21. Required with date_a; omit with year."
},
"country": {
"type": "string",
"maxLength": 60,
"description": "Optional country name or two-letter code to narrow the match, for example US."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"mode",
"location",
"definitions",
"limitations",
"request"
],
"properties": {
"blue": {
"type": "array",
"items": {}
},
"date": {
"type": "string"
},
"days": {
"type": "number"
},
"mode": {
"enum": [
"sun",
"plan",
"compare"
],
"type": "string"
},
"civil": {},
"golden": {
"type": "array",
"items": {}
},
"period": {
"type": "string"
},
"sunset": {},
"values": {
"type": "array",
"items": {}
},
"changes": {
"type": "array",
"items": {}
},
"preview": {
"type": "array",
"items": {}
},
"request": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"sunrise": {},
"location": {
"type": "object",
"required": [
"city",
"timeZone",
"otherMatches",
"otherMatchCount"
],
"properties": {
"city": {
"type": "string"
},
"timeZone": {
"type": "string"
},
"otherMatches": {
"type": "array",
"items": {
"type": "string"
}
},
"otherMatchCount": {
"type": "number"
}
},
"additionalProperties": false
},
"nautical": {},
"timeZone": {
"type": "string"
},
"dayLength": {
"type": "string"
},
"dayStatus": {
"type": "string"
},
"downloads": {
"type": "object",
"required": [
"ics",
"csv"
],
"properties": {
"csv": {
"type": "string"
},
"ics": {
"type": "string"
}
},
"additionalProperties": false
},
"solarNoon": {},
"startDate": {
"type": "string"
},
"eventCount": {
"type": "number"
},
"definitions": {
"type": "string"
},
"limitations": {
"type": "string"
},
"astronomical": {},
"sunsetAzimuth": {
"type": [
"number",
"null"
]
},
"sunriseAzimuth": {
"type": [
"number",
"null"
]
},
"dayLengthSeconds": {
"type": "number"
}
},
"additionalProperties": false
}{
"title": "Compare day length",
"readOnlyHint": true,
"openWorldHint": false,
"destructiveHint": false
}Prompts
Not advertised
Resources
1 advertised
golden-hour-widget — Sunvane Golden Hour view
Interactive view for Sunvane Golden Hour.
ui://widget/golden-hour-v3-1.0.0-0cdcf822c109b610a073547f7eb0ac9ce2eaf7ef6dfc8ed802c96b3e94110d3d.htmlgolden-hour-widget-legacy — Sunvane Golden Hour view (previous versions)
ui://widget/golden-hour-{version}.html30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 882 ms
- 95th percentile latency
- 882 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 882 ms · metadata changed · 3 tool(s), 1 resource(s), 1 resource template(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http sunvane-golden-hour-mcp https://golden-hour.zovo.one/mcpCodex
codex mcp add sunvane-golden-hour-mcp --url https://golden-hour.zovo.one/mcpCursor
{
"mcpServers": {
"sunvane-golden-hour-mcp": {
"url": "https://golden-hour.zovo.one/mcp"
}
}
}Cline
{
"mcpServers": {
"sunvane-golden-hour-mcp": {
"type": "streamableHttp",
"url": "https://golden-hour.zovo.one/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"sunvane-golden-hour-mcp": {
"type": "http",
"url": "https://golden-hour.zovo.one/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http sunvane-golden-hour-mcp https://golden-hour.zovo.one/mcpClaude Desktop
{
"mcpServers": {
"sunvane-golden-hour-mcp": {
"url": "https://golden-hour.zovo.one/mcp"
}
}
}Windsurf
{
"mcpServers": {
"sunvane-golden-hour-mcp": {
"serverUrl": "https://golden-hour.zovo.one/mcp"
}
}
}Let your agent find its tools
Find servers like Sunvane Golden Hour MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.