Daily-verified Colorado kids' camps & after-school programs: real availability, ages, prices.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Full details for a single program by its Junely id (from search results): description, dates, ages, price, current enrollment status, and the provider’s info + registration links.
Program id from a search result
Full details for a single program by its Junely id (from search results): description, dates, ages, price, current enrollment status, and the provider’s info + registration links.
| Argument | Type | Description |
|---|---|---|
| id* | string | Program id from a search result |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Program id from a search result"
}
}
}Saves a program to the signed-in user’s Junely watchlist. NOTE: saving also arms spot-opening/status-change email alerts for that program — identical to tapping ★ on junely.co. Only call when the user explicitly asks to save/track a program. Requires connecting the user’s Junely account.
| Argument | Type | Description |
|---|---|---|
| id* | string | Program id from a search result |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Program id from a search result"
}
}
}Search Junely’s catalog of kids’ summer camps and after-school programs (coverage today: Colorado), checked against each provider’s own page. Filter by child age, month, region, category, price, and open availability. Freshness is per row, not daily: every result starts from its captured extraction date (can be weeks old); live_verified additionally means Junely re-checked that program’s own page today for after-school listings, or confirmed plausible status/dates at last capture for camp listings — it is not proof every listing was checked today.
| Argument | Type | Description |
|---|---|---|
| age | integer | Child’s age in years |
| limit | integer | Max results (default 10) |
| month | string | Month the program should run, e.g. "July" or "7" |
| query | string | Free-text interest, e.g. "robotics", "horseback riding", "Russian language" |
| region | string | Region or city where Junely has listings (today: Colorado), e.g. "Denver", "Boulder", "Colorado Springs" |
| category | string | Category, e.g. STEM, Sports, Arts, Outdoors, Academic |
| vertical | string | Camps (default) or after-school programs |
Sets a fills-up/closing email alert for one program on the signed-in user’s Junely account — identical to the “alert me” button on junely.co. Only call when the user explicitly asks to be alerted. Requires connecting the user’s Junely account.
| Argument | Type | Description |
|---|---|---|
| id* | string | Program id from a search result |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Program id from a search result"
}
}
}Programs currently OPEN for registration, most recently updated first — Junely’s honesty signal. Freshness is per row, not a blanket re-check: live_verified means Junely re-checked that program’s own page today for after-school listings; for camps it only reflects the status/dates captured at last extraction, not a same-day check. Rows without live_verified reflect their captured extraction date, which can be weeks old. Optional filters: region, category, age, vertical.
| Argument | Type | Description |
|---|---|---|
| age | integer | |
| limit | integer | |
| region | string | |
| category | string | |
| vertical | string |
{
"type": "object",
"properties": {
"age": {
"type": "integer",
"maximum": 18,
"minimum": 2
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1
},
"region": {
"type": "string"
},
"category": {
"type": "string"
},
"vertical": {
"enum": [
"camps",
"afterschool"
],
"type": "string"
}
}
}| max_price |
| number |
| Maximum price in USD |
| open_only | boolean | Only programs currently open for registration (default false) |
{
"type": "object",
"properties": {
"age": {
"type": "integer",
"maximum": 18,
"minimum": 2,
"description": "Child’s age in years"
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Max results (default 10)"
},
"month": {
"type": "string",
"description": "Month the program should run, e.g. \"July\" or \"7\""
},
"query": {
"type": "string",
"description": "Free-text interest, e.g. \"robotics\", \"horseback riding\", \"Russian language\""
},
"region": {
"type": "string",
"description": "Region or city where Junely has listings (today: Colorado), e.g. \"Denver\", \"Boulder\", \"Colorado Springs\""
},
"category": {
"type": "string",
"description": "Category, e.g. STEM, Sports, Arts, Outdoors, Academic"
},
"vertical": {
"enum": [
"camps",
"afterschool"
],
"type": "string",
"description": "Camps (default) or after-school programs"
},
"max_price": {
"type": "number",
"description": "Maximum price in USD"
},
"open_only": {
"type": "boolean",
"description": "Only programs currently open for registration (default false)"
}
}
}