Parky — Park Planning
Server Details
Find Disney and Universal rides, posted waits, park hours, and crowd forecasts with Parky.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
Each tool serves a clearly distinct purpose: ID resolution, crowd forecasting, operating hours, and live waits. The descriptions explicitly separate forecasts from live waits and clarify prerequisites, leaving no room for misselection.
All tools use a consistent parky_ prefix and snake_case verb_noun structure (find_experience, get_crowd_outlook, get_hours, get_waits). The find vs get distinction appropriately reflects lookup versus data retrieval.
Four tools is slightly lean for a broad 'Park Planning' server, but each tool earns its place by covering a distinct core need. The set is reasonable yet under what one might expect for the stated domain.
The tools cover ID resolution, crowd forecasts, hours, and waits, but notable gaps exist: no way to list supported parks or rides, no park/ride details beyond waits, and no dining or show information. Agents will hit dead ends when users want to browse or get comprehensive planning data.
Available Tools
4 toolsparky_find_experienceFind a Parky park or rideARead-onlyInspect
Use this when a visitor names or describes a park or ride and you need its canonical Parky ID. Searches only parks in Parky's current Disney and Universal release scope. It does not retrieve current wait times.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Park or ride name, such as EPCOT or Hagrid's. | |
| park_id | No | Optional canonical Parky park ID to narrow ride search. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, non-destructive, not open-world), so the bar is lower. The description adds genuine behavioral context beyond them: the search corpus is limited to the current Disney/Universal release scope, and the tool deliberately excludes live wait data. It says nothing about result cardinality, ranking, or ambiguity handling when several matches exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the use case, then the scope constraint, then the exclusion. No filler, and both boundary statements earn their place by preventing misuse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only lookup with no output schema, the description supplies the essential context: when to reach for it, what it searches over, and what it does not return. It could be slightly more complete by indicating what the returned identifier looks like or how to handle misses, but nothing critical for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both parameters are documented in-schema (query semantics plus the optional park_id narrowing purpose), so the baseline is 3. The description adds no further meaning about query syntax, matching behavior, or what happens if both a park and ride share a name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource — resolve a named/described park or ride to its canonical Parky ID — and explicitly bounds the scope to 'Parky's current Disney and Universal release scope.' It also distinguishes itself from the wait-times sibling by stating 'It does not retrieve current wait times.' An agent can tell this apart from parky_get_waits without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The trigger condition is explicit ('when a visitor names or describes a park or ride and you need its canonical Parky ID'), and there is a clear when-not ('does not retrieve current wait times'). It does not name the sibling tools that handle waits/hours/crowds, so the routing is implied rather than spelled out, which keeps this below a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parky_get_crowd_outlookGet Parky crowd outlookARead-onlyInspect
Use this when a visitor asks how crowded one supported park may be within the next 30 park-local days. Resolve the park ID first. Returns a forecast and range, not a guarantee or a live wait.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | First date in the park's local time zone, YYYY-MM-DD; defaults to today. | |
| days | No | Number of consecutive days, 1 to 30; defaults to 1. | |
| park_id | Yes | Canonical Parky park ID from parky_find_experience. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/non-destructive/closed-world, so the bar is low; the description adds useful context beyond them: single-park scope, a 30-day horizon limit, and the epistemic nature of the result ('a forecast and range, not a guarantee or a live wait'). It does not mention failure modes for unsupported parks or how a range is expressed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, zero filler, with the usage trigger and scope front-loaded. Every sentence carries distinct information (trigger, prerequisite, output nature).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by characterizing the return ('forecast and range, not a guarantee or a live wait') and by covering scope, horizon, and the ID prerequisite. It is complete enough to call correctly, though it says nothing about behavior for unsupported parks or how a multi-day range is returned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already defines date, days, and park_id; baseline would be 3. The description adds meaning by reinforcing the park-local time zone framing and the 'resolve the park ID first' dependency, which signals that park_id is a foreign key resolved via parky_find_experience rather than an arbitrary string.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete operation on a concrete resource: a crowd forecast for one supported park over the next 30 park-local days, and clarifies the output is a forecast/range. It partially rules out a sibling by contrasting with a 'live wait' (parky_get_waits), but it does not explicitly differentiate itself from parky_get_hours or parky_find_experience.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear triggering condition ('when a visitor asks how crowded one supported park may be') plus a prerequisite ('Resolve the park ID first'), and bounds the horizon to 30 park-local days. It stops short of naming the alternative tool to use for live waits, so the when-not is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parky_get_hoursGet Parky park operating hoursARead-onlyInspect
Use this when a visitor asks about operating hours for one supported park within the next seven park-local days. Resolve the park ID first. Schedule windows have guest-facing categories and labels; Early Entry is an eligibility-based window, not a separate ticketed event. These are reported schedules, which the operator may change.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | First date in the park's local time zone, YYYY-MM-DD; defaults to today. | |
| days | No | Number of consecutive days, 1 to 7; defaults to 1. | |
| park_id | Yes | Canonical Parky park ID from parky_find_experience. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/openWorldHint/destructiveHint, so the safety profile is covered. The description adds real behavioral context beyond that: the data is a reported schedule the operator may change (volatility), and Early Entry is an eligibility-based window rather than a ticketed event, which shapes how the result should be interpreted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, front-loaded with the trigger condition, and each sentence carries domain-relevant information (prerequisite, category semantics, data volatility). No filler, though the Early Entry clarification is fairly niche for the general case.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description does well to signal what the return contains (schedule windows with guest-facing categories and labels). Combined with annotations covering the safety profile and full schema coverage of inputs, an agent has enough to call and interpret it; only the exact output shape remains unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema, and the description adds only the 'seven park-local days' scope that mirrors the days maximum. The 'park-local' and 'resolve park ID first' hints are useful but marginal against a fully documented schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete verb (get) and resource (operating hours for one supported park) with an explicit scope (next seven park-local days), plus the title reinforces it. It does not name any sibling, but the resource domain (hours vs. waits vs. crowd outlook vs. find_experience) is distinct enough that an agent can route correctly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear trigger condition ('use this when a visitor asks about operating hours') and a prerequisite ('resolve the park ID first'), which is genuine usage guidance. It does not name a specific alternative tool or state when not to use it, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parky_get_waitsGet current posted waits at a Parky parkARead-onlyInspect
Use this when a visitor asks for current posted ride waits or operating status at one supported park. Resolve the park ID first. Waits older than 30 minutes are unavailable, not current; this tool does not predict future waits.
| Name | Required | Description | Default |
|---|---|---|---|
| park_id | Yes | Canonical Parky park ID from parky_find_experience. | |
| ride_id | No | Optional canonical ride ID to return one ride only. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=false). The description adds genuinely useful behavioral context beyond that: the 30-minute freshness limit and the absence of prediction. It does not describe return format or pagination, so it is not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the use case and prerequisites before the limitations. The negative statements ('unavailable, not current' and 'does not predict future waits') slightly overlap, keeping it just below full marks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only, non-open-world tool with 100% schema coverage and annotations declaring safety, the description covers trigger, prerequisite, and limitations. Return value structure is not described, but no output schema exists, so an agent could benefit from knowing the shape of results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented in the schema. The description adds only the sequencing hint 'Resolve the park ID first' and nothing about formats or edge cases beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('current posted ride waits or operating status') and scopes it to 'one supported park', which is clear. It doesn't explicitly name how it differs from siblings like parky_get_hours or parky_get_crowd_outlook, so it falls short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear context for use ('when a visitor asks for current posted ride waits or operating status') and a prerequisite ('Resolve the park ID first'), plus boundary conditions (waits older than 30 minutes unavailable; no future waits). It stops short of explicitly naming an alternative tool to use for future predictions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
parky_find_experience - First observed
parky_get_crowd_outlook - First observed
parky_get_hours - First observed
parky_get_waits
Related MCP Connectors
ThemeParks.wiki MCP — live theme park wait times, schedules, and attraction data.
- alertcampOAuthcamp.alert
Catch campsite, cabin, permit and day-use cancellations at 1,600+ parks in Canada and the US.
Campground search, live availability, weather, safety, and gear for 10,000+ US campgrounds.
Airport security wait times, forecasts, FAA delays, EES border queues and baggage stats.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables access to live theme park wait times, schedules, and attraction data from ThemeParks.wiki.176 npmMIT
- FlicenseAqualityCmaintenanceProvides access to Disney parks data including attractions, dining locations, height requirements, Lightning Lane status, and other park information for Walt Disney World and Disneyland resorts through structured queries and fuzzy search.72-
- FlicenseNot gradedqualityBmaintenanceEnables querying 80+ theme parks and destinations worldwide for their attractions, live ride wait times and statuses, and operating hours or show schedules through the ThemeParks parksapi library.-
- FlicenseAqualityBmaintenanceProvides on-demand Disney ride status and standby wait times for supported parks, resolving park and ride names by alias or partial match.2-
Glama MCP Gateway
Add one secure layer between your agents and this server.