Email alerts when a summer camp opens sign-ups, or when a sold-out camp has a seat open.
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.
Get one camp by its id from search_camps (e.g. "california/camp-kennolyn") or its page URL: its facts, the programs its directory listing publishes, and — for a camp parents are watching — each session's live open/full status as last read from the camp's own registration page, with when it was read. Status can lag; registration and any seat are only ever on the camp's own site.
Camp id from search_camps, or its page URL.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http campnotice https://campnotice.com/mcp
Get one camp by its id from search_camps (e.g. "california/camp-kennolyn") or its page URL: its facts, the programs its directory listing publishes, and — for a camp parents are watching — each session's live open/full status as last read from the camp's own registration page, with when it was read. Status can lag; registration and any seat are only ever on the camp's own site.
| Argument | Type | Description |
|---|---|---|
| id* | string | Camp id from search_camps, or its page URL. |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Camp id from search_camps, or its page URL."
}
},
"additionalProperties": false
}Read one public Camp Notice page as markdown — its full prose, key points, any step-by-step guide, and its FAQ. Takes a path from list_pages, e.g. "/pricing" or "/watch".
| Argument | Type | Description |
|---|---|---|
| path* | string | Page path, e.g. "/watch". |
{
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string",
"description": "Page path, e.g. \"/watch\"."
}
},
"additionalProperties": false
}Get what Camp Notice costs: one price, per camp, paid once — no subscription and no tiers. Read from the same constant the site prints, so it is never a stale quote.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}List the US states the camp directory covers, each with how many camps it lists. Use a state code from here as the "state" filter of search_camps.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}List every public Camp Notice page — home, the watch wizard, pricing, and the policies — with its path, title and one-line description. Start here, then read one with get_page.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Search the summer camp directory by camp name or town, optionally within a state and by type (day, overnight, family). Returns each camp's id, town, ages, accreditation, its page, and watchUrl — the link a parent opens to get emailed when a seat opens. "watched: true" means live session status is available from get_camp.
| Argument | Type | Description |
|---|---|---|
| type | string | Camp type. |
| limit | integer | Camps to return (default 10). |
| query | string | Camp name or town words, e.g. "pine hollow" or "austin". |
| state | string | Two-letter state code or state name, e.g. "CA" or "New York". |
| offset | integer | Camps to skip, for the next page. |
{
"type": "object",
"properties": {
"type": {
"enum": [
"day",
"overnight",
"family"
],
"type": "string",
"description": "Camp type."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Camps to return (default 10)."
},
"query": {
"type": "string",
"description": "Camp name or town words, e.g. \"pine hollow\" or \"austin\"."
},
"state": {
"type": "string",
"description": "Two-letter state code or state name, e.g. \"CA\" or \"New York\"."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Camps to skip, for the next page."
}
},
"additionalProperties": false
}Search Camp Notice pages and FAQs by keyword — waitlist, full camp, alerts, pricing — and get back the matching pages with the passage that matched.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum pages to return (default 5). |
| query* | string | Keywords or a question. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Maximum pages to return (default 5)."
},
"query": {
"type": "string",
"description": "Keywords or a question."
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 7, 2026.