Purpose
mcp-server-nationalparks is an MCP (Model Context Protocol) server that wraps the U.S. National Park Service (NPS) API to provide AI assistants with real-time information about U.S. national parks. It is suitable for scenarios that require querying park details, current alerts, visitor centers, campgrounds, and activities.
Main Capabilities
The server provides the following tools:
- findParks: Search for national parks based on various conditions. Inputs include stateCode (optional, state code, such as "CA"; multiple states can be separated by commas, such as "CA,OR,WA"), q (optional, keyword to search by name or description), limit (optional, maximum number of results to return, default 10, maximum 50), start (optional, pagination starting position), activities (optional, filter by activity, such as "hiking,camping"). Returns matching parks and their detailed information.
- getParkDetails: Get comprehensive information about a specific national park. Input parkCode (string, park code, such as "yose" for Yosemite, "grca" for Grand Canyon). Returns detailed park information including description, operating hours, fees, contact information, and activities.
- getAlerts: Get current alerts for national parks, including closures, hazards, and important information. Inputs include parkCode (optional, filter by park code; multiple parks can be separated by commas, such as "yose,grca"), limit (optional, default 10, maximum 50), start (optional, pagination starting position), q (optional, search by title or description). Returns current alerts organized by park.
- getVisitorCenters: Get visitor centers and their operating hours information. Inputs include parkCode (optional, multiple parks can be separated by commas), limit (optional, default 10, maximum 50), start (optional, pagination starting position), q (optional, search by name or description). Returns visitor center locations, hours, and contact information.
- getCampgrounds: Get available campgrounds and their facility information. Inputs include parkCode (optional, multiple parks can be separated by commas), limit (optional, default 10, maximum 50), start (optional, pagination starting position), q (optional, search by name or descSearch). Returns campground facilities, fees, and reservation details.
- getEvents: Find upcoming events at parks. Inputs include parkCode (optional, multiple parks can be separated by commas), limit (optional, default 10, maximum 50), start (optional, pagination start position), dateStart (optional, filter events by start date, format YYYY-MM-DD), dateEnd (optional, filter events by end date, format YYYY-MM-DD), q (optional, search by title or description). Returns event dates, times, and descriptions.
Usage
- Obtain a free API key from the National Park Service developer portal and store it securely for request authentication.
- Can be automatically installed into Claude Desktop via Smithery.
- When using it in Claude Desktop, add the corresponding configuration to claude_desktop_config.json.
Typical use cases include: finding parks in a state, getting details for a specific park, checking alerts or closures, finding visitor centers, finding campgrounds, finding upcoming events, and planning trips based on events.
Applicable Scenarios
- Trip planning: Search for parks by state, activity, or keyword, and get opening hours, fees, and contact information.
- Real-time information queries: Get current alerts, closures, and hazard information for parks.
- Facility queries: Find the location, hours, facilities, and reservation details of visitor centers and campgrounds.
- Event discovery: Find park events by date range.
Limitations
- Requires an NPS API key to use.
- Data comes from the NPS API and only covers data related to U.S. national parks.
- The project uses the MIT license; see the LICENSE file for details.
- The appendix lists popular national parks and their codes; the complete list can be accessed on the NPS website.