Search DC/MD/VA kids' camps: dates, prices, ages, live availability, checkout links. Parents pay.
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.
Create a prefilled checkout link for 1-6 bookable sessions and share it with the parent. This is a shopping-list prefill, NOT a reservation: no spots are held, and the parent signs in, names their campers, signs waivers, and pays on kiddinglab.com. Never include child names or other personal information. The link expires in 24 hours.
1-6 sessions to prefill into the parent checkout. No PII — session ids and counts only.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
claude mcp add --transport http kiddinglab https://www.kiddinglab.com/mcp
Create a prefilled checkout link for 1-6 bookable sessions and share it with the parent. This is a shopping-list prefill, NOT a reservation: no spots are held, and the parent signs in, names their campers, signs waivers, and pays on kiddinglab.com. Never include child names or other personal information. The link expires in 24 hours.
| Argument | Type | Description |
|---|---|---|
| items* | array | 1-6 sessions to prefill into the parent checkout. No PII — session ids and counts only. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"sess_id"
],
"properties": {
"sess_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Session id (sess_id from search_camps or get_camp_details).",
"exclusiveMinimum": 0
},
"children_count": {
"type": "integer",
"maximum": 4,
"minimum": 1,
"description": "How many children to register for this session (1-4, default 1). Do NOT include child names — the parent enters those on kiddinglab.com."
}
}
},
"maxItems": 6,
"minItems": 1,
"description": "1-6 sessions to prefill into the parent checkout. No PII — session ids and counts only."
}
}
}Look up camps by camp or organization name when the parent already knows (roughly) what the camp is called. Tolerates misspellings. Returns matching camps ranked by similarity — use get_camp_details on a result for sessions, prices, and availability. For discovery by area, use search_camps instead.
| Argument | Type | Description |
|---|---|---|
| name* | string | Camp or organization name (or part of one), e.g. "Steve and Kate's". |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 80,
"minLength": 2,
"description": "Camp or organization name (or part of one), e.g. \"Steve and Kate's\"."
}
}
}Get the refund policy, payment schedule, waiver requirement, and platform payment facts for one session. Parents review, sign, and pay on kiddinglab.com — assistants only prepare the choice.
| Argument | Type | Description |
|---|---|---|
| sess_id* | integer | The session id (sess_id from search_camps or get_camp_details). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"sess_id"
],
"properties": {
"sess_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "The session id (sess_id from search_camps or get_camp_details).",
"exclusiveMinimum": 0
}
}
}Get the full profile of one camp: description, organizer, parent rating, and its sessions with dates, prices (US dollars), registration_status, and bookability. Sessions from the last 12 months are included — check session_status (ended/in_progress/upcoming) before recommending. data_freshness says how recently the listing was verified. Use the camp_id returned by search_camps.
| Argument | Type | Description |
|---|---|---|
| camp_id* | integer | The kiddinglab camp_id (from search_camps results). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"camp_id"
],
"properties": {
"camp_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "The kiddinglab camp_id (from search_camps results).",
"exclusiveMinimum": 0
}
}
}Check live bookability, pricing (US dollars), remaining spots, and refund policy for up to 20 sessions at once. Sessions marked listing_only are booked on the camp's own website (registration_url) rather than on kiddinglab.com.
| Argument | Type | Description |
|---|---|---|
| sess_ids* | array | 1-20 session ids (sess_id values from search_camps or get_camp_details). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"sess_ids"
],
"properties": {
"sess_ids": {
"type": "array",
"items": {
"type": "integer",
"maximum": 9007199254740991,
"exclusiveMinimum": 0
},
"maxItems": 20,
"minItems": 1,
"description": "1-20 session ids (sess_id values from search_camps or get_camp_details)."
}
}
}Search kids' camp sessions in the Washington DC / Maryland / Virginia area by location, dates, ages, categories, and price. Location is required: pass a 5-digit ZIP code (or lat+lon, or city+state). With start_date/end_date, results are individual sessions (10 per page); without dates, results are one representative upcoming session per camp location (result_grain says which). Each result includes prices in US dollars, registration_status, data_freshness (how recently the listing was verified), and a canonical kiddinglab.com URL.
| Argument | Type | Description |
|---|---|---|
| lat | number | Latitude (use with lon instead of zip). |
| lon | number | Longitude (use with lat instead of zip). |
| zip | string | 5-digit US ZIP code to search around. Provide zip OR lat+lon. |
| ages | array | Children's ages to match, e.g. [7, 9]. |
| city | string | City name as an alternative location (use with state), e.g. "Arlington". |
| page | integer | Result page (10 results per page, max page 100). |
| state | string | Two-letter state code (use with city), e.g. "VA". |
| end_date |
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 2, 2026.
| string |
| Latest session end date (YYYY-MM-DD). |
| categories | array | Filter by category names. Unknown categories are ignored. |
| start_date | string | Earliest session start date (YYYY-MM-DD). |
| future_only | boolean | Only sessions that have not yet ended (default true). Set false to also include recently ended past-season programs — useful for "did they run this last year" questions. |
| radius_miles | number | Search radius in miles (default 15, max 50). |
| max_price_usd | number | Maximum session price in US dollars. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude (use with lon instead of zip)."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (use with lat instead of zip)."
},
"zip": {
"type": "string",
"description": "5-digit US ZIP code to search around. Provide zip OR lat+lon."
},
"ages": {
"type": "array",
"items": {
"type": "number"
},
"description": "Children's ages to match, e.g. [7, 9]."
},
"city": {
"type": "string",
"maxLength": 60,
"description": "City name as an alternative location (use with state), e.g. \"Arlington\"."
},
"page": {
"type": "integer",
"default": 1,
"maximum": 100,
"minimum": 1,
"description": "Result page (10 results per page, max page 100)."
},
"state": {
"type": "string",
"maxLength": 2,
"description": "Two-letter state code (use with city), e.g. \"VA\"."
},
"end_date": {
"type": "string",
"description": "Latest session end date (YYYY-MM-DD)."
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by category names. Unknown categories are ignored."
},
"start_date": {
"type": "string",
"description": "Earliest session start date (YYYY-MM-DD)."
},
"future_only": {
"type": "boolean",
"default": true,
"description": "Only sessions that have not yet ended (default true). Set false to also include recently ended past-season programs — useful for \"did they run this last year\" questions."
},
"radius_miles": {
"type": "number",
"default": 15,
"maximum": 50,
"description": "Search radius in miles (default 15, max 50).",
"exclusiveMinimum": 0
},
"max_price_usd": {
"type": "number",
"description": "Maximum session price in US dollars.",
"exclusiveMinimum": 0
}
}
}