NPS MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@NPS MCP Servershow me campgrounds in Yosemite National Park"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
NPS MCP Server
A Model Context Protocol (MCP) server that gives Claude (or any MCP-compatible AI client) access to the National Park Service API. Ask questions about parks, alerts, campgrounds, events, parking, and more — all in natural language.
Prerequisites
Python 3.11+
An NPS API key — free, get one at https://www.nps.gov/subjects/developer/get-started.htm
Installation
# 1. Clone the repository
git clone https://github.com/AniruddhaShukla/nps-mcp.git
cd nps-mcp
# 2. Create and activate a virtual environment
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
# 3. Install dependencies
pip install -r requirements.txtConfiguration
# Copy the example env file
cp .env.example .env
# Open .env and replace the placeholder with your real API key
# NPS_API_KEY=your_api_key_hereYour .env file is listed in .gitignore and will never be committed.
Running the Server
python server.pyThe server communicates over stdio (standard MCP transport) and stays running until you stop it. You don't interact with it directly — your MCP client does.
Connecting to Claude Desktop
Open your Claude Desktop config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Add this block inside the
"mcpServers"object (create the object if it doesn't exist):
{
"mcpServers": {
"national-parks": {
"command": "/absolute/path/to/.venv/bin/python",
"args": ["/absolute/path/to/nps-mcp/server.py"],
"env": {
"NPS_API_KEY": "your_api_key_here"
}
}
}
}Replace the paths with the actual absolute paths on your machine. Using the env block here means you don't even need the .env file — the key is passed directly.
Restart Claude Desktop. To verify it's working, click the paperclip / attachment icon in the chat input bar, then select Connectors — you should see
national-parkslisted with a blue toggle indicating it's running. You can enable or disable it per conversation from there.
Connecting to Claude Code
claude mcp add national-parks -- /absolute/path/to/.venv/bin/python /absolute/path/to/nps-mcp/server.pyThen set the environment variable in your shell before running Claude Code:
export NPS_API_KEY=your_api_key_here
claudeTesting with MCP Inspector
npx @modelcontextprotocol/inspector python server.pyThis opens a browser UI where you can call each tool manually and inspect responses.
Available Tools
Tool | Description |
| List all park codes and full names known to this server |
| Search parks by name or keyword, optionally filtered by state |
| Get full details for a specific park by code |
| Current closures, dangers, and notices for a park |
| Visitor center hours and contact info |
| Parking lot capacity, accessibility, and live occupancy |
| Campground details, fees, and reservations |
| Upcoming ranger programs and park events |
| Recommended activities (hiking, fishing, stargazing, etc.) |
| Guided tours available at a park |
| Live webcam feeds |
| Entrance fees and pass information |
| Recent press releases from a park |
| Road closures and construction zones |
| Notable landmarks and places within a park |
| Historical figures and conservationists associated with a park |
| Educational articles published by the park |
| Teacher lesson plans related to a park |
| Where to collect National Park Passport stamps |
| Browse all activity categories across the NPS |
| Browse all topic categories (history, geology, etc.) |
Known Park Codes
All 63 officially designated U.S. National Parks are pre-mapped. For any other NPS site (monuments, seashores, recreation areas, etc.) use search_parks to find its code.
Northeast
Code | Park |
| Acadia National Park |
| New River Gorge National Park & Preserve |
| Shenandoah National Park |
| Virgin Islands National Park |
Southeast
Code | Park |
| Biscayne National Park |
| Congaree National Park |
| Dry Tortugas National Park |
| Everglades National Park |
| Great Smoky Mountains National Park |
| Hot Springs National Park |
| Mammoth Cave National Park |
Midwest
Code | Park |
| Cuyahoga Valley National Park |
| Indiana Dunes National Park |
| Isle Royale National Park |
| Gateway Arch National Park |
| Voyageurs National Park |
Great Plains
Code | Park |
| Badlands National Park |
| Theodore Roosevelt National Park |
| Wind Cave National Park |
Rocky Mountain
Code | Park |
| Black Canyon Of The Gunnison National Park |
| Bryce Canyon National Park |
| Canyonlands National Park |
| Capitol Reef National Park |
| Great Sand Dunes National Park & Preserve |
| Grand Teton National Park |
| Mesa Verde National Park |
| Rocky Mountain National Park |
| Yellowstone National Park |
| Zion National Park |
Southwest
Code | Park |
| Arches National Park |
| Big Bend National Park |
| Carlsbad Caverns National Park |
| Death Valley National Park |
| Grand Canyon National Park |
| Great Basin National Park |
| Guadalupe Mountains National Park |
| Petrified Forest National Park |
| Saguaro National Park |
| White Sands National Park |
California
Code | Park |
| Channel Islands National Park |
| Joshua Tree National Park |
| Kings Canyon National Park |
| Lassen Volcanic National Park |
| Pinnacles National Park |
| Redwood National & State Parks |
| Sequoia National Park |
| Yosemite National Park |
Pacific Northwest
Code | Park |
| Crater Lake National Park |
| Mount Rainier National Park |
| North Cascades National Park |
| Olympic National Park |
Hawaii
Code | Park |
| Haleakalā National Park |
| Hawaiʻi Volcanoes National Park |
Alaska
Code | Park |
| Denali National Park & Preserve |
| Gates of the Arctic National Park & Preserve |
| Glacier Bay National Park & Preserve |
| Katmai National Park & Preserve |
| Kenai Fjords National Park |
| Kobuk Valley National Park |
| Lake Clark National Park & Preserve |
| Wrangell-St. Elias National Park & Preserve |
Other
Code | Park |
| Glacier National Park (Montana) |
| National Park of American Samoa |
Example Queries
Once connected to Claude, try asking:
"What are the current alerts at Yellowstone?"
"Find campgrounds in Yosemite National Park."
"What are the entrance fees for the Grand Canyon?"
"Show me parking lots at Yellowstone and their current occupancy."
"Are there any road closures at Glacier National Park?"
"What events are happening at Acadia this week?"
"What's there to do at Zion National Park?"
"Find national parks in Utah."
License
This project is open source. The NPS API is a free public service provided by the U.S. National Park Service.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AniruddhaShukla/nps-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server