KiddingLab MCP
An official MCP server for KiddingLab that allows AI agents to search for kids' camps, find camps by name, retrieve camp details and session availability, check booking policies, and generate prefilled checkout handoff links for parents in the DC/MD/VA area.
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://www.kiddinglab.com/mcpWhat its tools do
6 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Read-only (5)
Can change data (1)
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to kiddinglab.com ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Search for kids' camps by location, dates, and age groups
- Find specific camps by name and retrieve detailed information
- Check live session availability and pricing for upcoming camps
- Generate prefilled checkout links for parents to complete bookings
Source and maintenance
Protocol and capabilities
- Server
- kiddinglab 1.2.0
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 6 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
6 advertised
search_camps — Search kids' camps (DC/MD/VA area)
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.
{
"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
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}find_camp_by_name — Find a camp by name
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.
{
"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\"."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}get_camp_details — Get camp details
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.
{
"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
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}get_sessions_and_availability — Check live availability & pricing for sessions
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.
{
"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)."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}get_booking_policies — Get booking, refund & payment policies
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.
{
"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
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}create_booking_handoff — Create a checkout link for the parent
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.
{
"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."
}
}
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-02: 3 of 3 checks answered
- 2026-11-03: 4 of 4 checks answered
30-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
- 771 ms
- 95th percentile latency
- 771 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 771 ms · metadata changed · 6 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http kiddinglab-mcp https://www.kiddinglab.com/mcpCodex
codex mcp add kiddinglab-mcp --url https://www.kiddinglab.com/mcpCursor
{
"mcpServers": {
"kiddinglab-mcp": {
"url": "https://www.kiddinglab.com/mcp"
}
}
}Cline
{
"mcpServers": {
"kiddinglab-mcp": {
"type": "streamableHttp",
"url": "https://www.kiddinglab.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"kiddinglab-mcp": {
"type": "http",
"url": "https://www.kiddinglab.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http kiddinglab-mcp https://www.kiddinglab.com/mcpClaude Desktop
{
"mcpServers": {
"kiddinglab-mcp": {
"url": "https://www.kiddinglab.com/mcp"
}
}
}Windsurf
{
"mcpServers": {
"kiddinglab-mcp": {
"serverUrl": "https://www.kiddinglab.com/mcp"
}
}
}Let your agent find its tools
Find servers like KiddingLab MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other commerce servers
Do you run KiddingLab MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.