Skip to main content
Glama

Disney Parks MCP Server

An MCP (Model Context Protocol) server that provides Disney parks data to Claude Code. Returns structured data for attractions, dining, and other park entities.

Features

  • Attraction data: Height requirements, Lightning Lane status, thrill levels, single rider availability

  • Dining data: Service type, meal periods, cuisine, reservations, mobile ordering

  • Fuzzy search: Find entities by name with intelligent matching

  • Auto-caching: 24-hour cache with SQLite persistence

  • Dual data sources: Disney Finder API (primary) with ThemeParks.wiki fallback

Related MCP server: mcp-arcgis-castateparks

Installation

npm install
npm run build

Usage

With Claude Code

Add to your Claude Code MCP configuration:

{
  "mcpServers": {
    "disney": {
      "command": "node",
      "args": ["/path/to/mouse-mcp/dist/index.js"]
    }
  }
}

Development

# Run in development mode with auto-reload
npm run dev

# Type check without building
npm run check

# Test with MCP inspector
npm run inspector

Tools

disney_destinations

List all supported Disney destinations with their parks.

No parameters required

disney_attractions

Get attractions for a destination or park.

Parameter

Type

Required

Description

destination

string

Yes

wdw or dlr

parkId

string

No

Filter to specific park

filters.hasLightningLane

boolean

No

Only Lightning Lane attractions

filters.maxHeightRequirement

number

No

Max height in inches

filters.thrillLevel

string

No

family, moderate, or thrill

filters.hasSingleRider

boolean

No

Only single rider attractions

disney_dining

Get dining locations for a destination or park.

Parameter

Type

Required

Description

destination

string

Yes

wdw or dlr

parkId

string

No

Filter to specific park

filters.serviceType

string

No

table-service, quick-service, etc.

filters.mealPeriod

string

No

breakfast, lunch, dinner, snacks

filters.reservationsAccepted

boolean

No

Only reservation restaurants

filters.characterDining

boolean

No

Only character dining

disney_entity

Look up a specific entity by ID or fuzzy name search.

Parameter

Type

Required

Description

id

string

No*

Entity ID for exact lookup

name

string

No*

Entity name for fuzzy search

destination

string

No

Limit search to wdw or dlr

entityType

string

No

ATTRACTION or RESTAURANT

*Either id or name is required.

disney_status

Get server health and cache statistics.

Parameter

Type

Required

Description

includeDetails

boolean

No

Include entity breakdown

Configuration

Environment variables (all prefixed with MOUSE_MCP_):

Variable

Default

Description

MOUSE_MCP_LOG_LEVEL

INFO

Log level: DEBUG, INFO, WARN, ERROR

MOUSE_MCP_DB_PATH

~/.cache/mouse-mcp/disney.db

SQLite database path

MOUSE_MCP_TIMEOUT

30000

Request timeout in ms

MOUSE_MCP_HEADLESS

true

Run Playwright in headless mode

Architecture

┌─────────────────────────────────────────────────────────────┐
│                     MCP Server                               │
│  ┌─────────────────────────────────────────────────────┐   │
│  │                    Tools                             │   │
│  │  destinations | attractions | dining | entity | status │
│  └─────────────────────────────────────────────────────┘   │
│                           │                                  │
│  ┌─────────────────────────────────────────────────────┐   │
│  │                  API Clients                         │   │
│  │  ┌─────────────────┐    ┌─────────────────┐        │   │
│  │  │ Disney Finder   │───▶│ ThemeParks.wiki │        │   │
│  │  │    (primary)    │    │   (fallback)    │        │   │
│  │  └─────────────────┘    └─────────────────┘        │   │
│  │           │                                          │   │
│  │  ┌─────────────────┐                                │   │
│  │  │ Session Manager │ (Playwright auth)              │   │
│  │  └─────────────────┘                                │   │
│  └─────────────────────────────────────────────────────┘   │
│                           │                                  │
│  ┌─────────────────────────────────────────────────────┐   │
│  │                   SQLite Database                    │   │
│  │  sessions | cache | entities (with FTS5)            │   │
│  └─────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────┘

Supported Destinations

Walt Disney World Resort (wdw)

  • Magic Kingdom Park

  • EPCOT

  • Disney's Hollywood Studios

  • Disney's Animal Kingdom Theme Park

Disneyland Resort (dlr)

  • Disneyland Park

  • Disney California Adventure Park

License

MIT

Available Tools

7 tools
discoverA

Discover Disney experiences using natural language. Uses semantic search to find entities matching concepts like 'thrill rides for teenagers', 'romantic dinner spots', or 'character breakfast'. Requires initialize to be run first. For exact name lookups, use search instead.

Inputs: query (required), destination, entityType, limit.

find_attractionsA

Find attractions at Disney parks with filters. Returns ride metadata including height requirements, Lightning Lane status, thrill level, and single rider availability. Use list_parks first to get valid destination and park IDs.

Inputs: destination (required), parkId, filters.

find_diningA

Find dining locations at Disney parks with filters. Returns restaurant metadata including service type, meal periods, cuisine, price range, and reservation requirements. Use list_parks first to get valid destination and park IDs.

Inputs: destination (required), parkId, filters.

initializeA

Initialize the server by loading all Disney park data and generating embeddings for semantic search. Call this once before using discover for meaning-based queries. Returns statistics about loaded entities and embedding generation progress.

Inputs: destination, skipEmbeddings, force.

list_parksA

List all Disney parks with their IDs, names, and locations. Returns Walt Disney World (wdw) and Disneyland Resort (dlr) with their theme parks. Use park IDs from this response when filtering attractions or dining.

Inputs: no named parameters.

statusA

Get server health status, session state, and cache statistics. Useful for debugging data freshness and connectivity issues.

Inputs: includeDetails.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.1/5.0

    Scored across 7 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no significant overlap. For example, 'discover' handles semantic/conceptual queries, 'search' handles exact name lookups, and tools like 'find_attractions' and 'find_dining' target specific resource types. The descriptions explicitly differentiate between similar tools (e.g., 'discover' vs. 'search'), preventing agent confusion.

    Naming Consistency4/5

    Most tools follow a consistent verb_noun pattern (e.g., 'find_attractions', 'find_dining', 'list_parks', 'search'), but 'discover' and 'initialize' deviate slightly by using single verbs without nouns. However, these deviations are minor and still readable, maintaining overall clarity without chaotic mixing of conventions.

    Tool Count5/5

    With 7 tools, the count is well-scoped for the Disney parks domain, covering core operations like data initialization, park listing, attraction/dining discovery, and health checks. Each tool earns its place by addressing specific needs, such as semantic search, exact lookups, and filtered queries, without being overly sparse or bloated.

    Completeness4/5

    The tool surface covers essential CRUD-like operations for the domain, including initialization, listing, searching, and filtering for attractions and dining. Minor gaps exist, such as no explicit update or delete tools for dynamic data (e.g., ride wait times), but agents can work around this using the provided tools for discovery and status checks.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers