Capabilities
Schedule
This API does not stream third-party radio audio. Source-labelled schedule metadata: source, verification state, verified_at and timezone. No verified broadcaster feeds are installed; programmes is null and SCHEDULE_UNAVAILABLE means missing data, not an empty schedule.
How this capability is exposed
- Stable ID
ursy.fm:schedule- Owning service
- URSY.fm
- Runtime
- See the source declaration
Capability declarations describe what the service exposes. They are not a guarantee of availability or permission to execute an operation.
Accepted contract
{
"id": "ursy.fm:schedule",
"description": "This API does not stream third-party radio audio. Source-labelled schedule metadata: source, verification state, verified_at and timezone. No verified broadcaster feeds are installed; programmes is null and SCHEDULE_UNAVAILABLE means missing data, not an empty schedule.",
"operationId": "getStationSchedule",
"rest": {
"method": "GET",
"path": "/schedules/{station_id}"
},
"mcp_tool": "get_schedule",
"input_schema": {
"type": "object",
"properties": {
"station_id": {
"type": "string",
"pattern": "^stn_[a-z0-9]{16,64}$"
}
},
"additionalProperties": false,
"required": [
"station_id"
]
},
"output_schema": {
"type": "object",
"required": [
"state",
"source",
"verified_at",
"timezone",
"programmes"
],
"properties": {
"station_id": {
"type": [
"string",
"null"
]
},
"state": {
"enum": [
"publisher_supplied",
"regulator_metadata",
"verified",
"unverified",
"unknown"
]
},
"source": {
"type": [
"object",
"null"
]
},
"verified_at": {
"type": [
"string",
"null"
]
},
"timezone": {
"type": [
"string",
"null"
]
},
"programmes": {
"type": [
"array",
"null"
],
"items": {
"type": "object",
"required": [
"programme_id",
"station_id",
"name",
"starts_at",
"ends_at",
"timezone",
"source",
"state"
]
}
},
"code": {
"type": "string"
}
}
},
"service_id": "ursy-fm",
"parent_id": "",
"name": "Schedule",
"summary": "This API does not stream third-party radio audio. Source-labelled schedule metadata: source, verification state, verified_at and timezone. No verified broadcaster feeds are installed; programmes is null and SCHEDULE_UNAVAILABLE means missing data, not an empty schedule.",
"source_url": "https://ursy.fm/.well-known/ursy-capabilities.json",
"source_type": "capability_manifest",
"verified_at": "2026-10-15 07:03:53",
"revision": "821e430e2816fb9edee1900726411b4f238ad60090efdf492d19542183e57ab7",
"type": "capabilities",
"source": {
"url": "https://ursy.fm/.well-known/ursy-capabilities.json",
"type": "capability_manifest"
},
"last_verified_at": "2026-10-15 07:03:53",
"stale": false
}