Outdoors

US outdoor recreation: 37k+ trails, 30k+ campgrounds, parks, weather + wildfire safety. Read-only.

Sollte ich dies verwenden

Qualität und Sicherheit

B
Qualität der Beschreibung
82%
Vollständigkeit des Schemas
76%
Qualität der Benennung
56%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (21)

  • LOWTool 'weather.current' description lacks action verbin weather.current
  • LOWTool 'aqi.current' description lacks action verbin aqi.current
  • LOWTool 'fires.nearby' description lacks action verbin fires.nearby
  • LOWTool 'adventure.candidates' doesn't follow camelCase/snake_casein adventure.candidates
  • LOWTool 'adventure.outline' doesn't follow camelCase/snake_casein adventure.outline
  • LOWTool 'outdoors.ping' doesn't follow camelCase/snake_casein outdoors.ping
  • LOWTool 'search.global' doesn't follow camelCase/snake_casein search.global
  • LOWTool 'nearMe.search' doesn't follow camelCase/snake_casein nearMe.search
  • LOWTool 'trails.search' doesn't follow camelCase/snake_casein trails.search
  • LOWTool 'trails.get' doesn't follow camelCase/snake_casein trails.get

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~2,345Tokens (Tool-Definitionen)
~859 BTypische Antwortgröße
Mittlere Auswirkung auf die Aufmerksamkeit (1.83% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "outdoors": {
      "url": "https://theoutdoorsapp.com/mcp"
    }
  }
}

Remote-Endpunkte

https://theoutdoorsapp.com/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (20)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢adventure.candidates(lat, lng, radius_miles, types, trail_difficulty, ...)

Suggest candidate adventures near a location by scoring nearby trails/parks/campgrounds deterministically.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number"
    },
    "lng": {
      "type": "number"
    },
    "radius_miles": {
      "type": "integer",
      "default": 100
    },
    "types": {
      "type": "array",
      "default": [
        "trail",
        "park",
        "campground"
      ]
    },
    "trail_difficulty": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "max_results": {
      "type": "integer",
      "default": 20
    }
  },
  "required": [
    "lat",
    "lng"
  ]
}
🟢adventure.outline(start_date, end_date, trail, park, campground)

Create a structured, day-by-day itinerary outline from selected trail/park/campground IDs or slugs.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "start_date": {
      "type": "string"
    },
    "end_date": {
      "type": "string"
    },
    "trail": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "park": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "campground": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    }
  },
  "required": [
    "start_date",
    "end_date"
  ]
}
🟢search(query)

Search Outdoors (theoutdoorsapp.com) for U.S. hiking trails, parks, campgrounds, and lakes/rivers/reservoirs. Returns a list of results whose ids can be passed to the fetch tool for the full record.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    }
  },
  "required": [
    "query"
  ]
}
🟢fetch(id)

Fetch the full Outdoors record for a search result id (e.g. "trail:bear-lake-loop", "park:rocky-mountain-national-park"). Returns the complete text of the record plus the canonical theoutdoorsapp.com URL for citation.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    }
  },
  "required": [
    "id"
  ]
}
🟢outdoors.ping

Health check for the Outdoors MCP server.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "timestamp": {
      "type": "string"
    },
    "app_version": {
      "type": "string"
    },
    "environment": {
      "type": "string"
    }
  },
  "required": [
    "ok",
    "timestamp",
    "app_version",
    "environment"
  ],
  "additionalProperties": false
}
🟢search.global(q, limit)

Global search across trails, parks, campgrounds, and water bodies (uses Meilisearch when available).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "default": 5
    }
  },
  "required": [
    "q"
  ]
}
🟢nearMe.search(lat, lng, bounds, radius_miles, search, ...)

Aggregate nearby Trails, Parks, and Campgrounds for a map-first exploration experience.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "lng": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "bounds": {
      "type": [
        "array",
        "null"
      ],
      "default": null
    },
    "radius_miles": {
      "type": "integer",
      "default": 100
    },
    "search": {
      "type": "string",
      "default": ""
    },
    "sort": {
      "type": "string",
      "default": "distance"
    },
    "types": {
      "type": "array",
      "default": [
        "trails",
        "parks",
        "campgrounds"
      ]
    },
    "per_type_limit": {
      "type": "integer",
      "default": 50
    },
    "combined_limit": {
      "type": "integer",
      "default": 150
    }
  }
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "retrieved_at": {
      "type": "string"
    },
    "source": {
      "type": "object"
    },
    "payload": {
      "type": "object"
    }
  },
  "required": [
    "retrieved_at",
    "source",
    "payload"
  ]
}
🟢trails.search(q, region, difficulty, min_length_miles, max_length_miles, ...)

Search public, verified trails with filters (supports map bounds and near-me style geo filtering).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "default": ""
    },
    "region": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "difficulty": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "min_length_miles": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "max_length_miles": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "lat": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "lng": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "radius_meters": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "bounds": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "sort": {
      "type": "string",
      "default": "name"
    },
    "dir": {
      "type": "string",
      "default": "asc"
    },
    "page": {
      "type": "integer",
      "default": 1
    },
    "per_page": {
      "type": "integer",
      "default": 24
    }
  }
}
🟢trails.get(trail)

Get a single public, verified trail by id or slug, including nearby trails and breadcrumbs.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "trail": {
      "type": "string"
    }
  },
  "required": [
    "trail"
  ]
}
🟢safety.overview(lat, lon)

Combined safety overview (weather alerts, AQI, wildfire context) for a location.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number"
    },
    "lon": {
      "type": "number"
    }
  },
  "required": [
    "lat",
    "lon"
  ]
}
🟢weather.current(lat, lon)

Current weather conditions for a location.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number"
    },
    "lon": {
      "type": "number"
    }
  },
  "required": [
    "lat",
    "lon"
  ]
}
🟢weather.alerts(lat, lon)

Weather alerts for a location.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number"
    },
    "lon": {
      "type": "number"
    }
  },
  "required": [
    "lat",
    "lon"
  ]
}
🟢aqi.current(lat, lon, distance_miles)

Current air quality (AQI) for a location.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number"
    },
    "lon": {
      "type": "number"
    },
    "distance_miles": {
      "type": "integer",
      "default": 25
    }
  },
  "required": [
    "lat",
    "lon"
  ]
}
🟢fires.nearby(lat, lon, radius_miles)

Nearby wildfire incidents for a location.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number"
    },
    "lon": {
      "type": "number"
    },
    "radius_miles": {
      "type": "integer",
      "default": 50
    }
  },
  "required": [
    "lat",
    "lon"
  ]
}
🟢parks.search(q, region_id, park_type, lat, lng, ...)

Search published, verified parks with optional geo and region filters.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "default": ""
    },
    "region_id": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "park_type": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "lat": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "lng": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "radius_meters": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "bounds": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "page": {
      "type": "integer",
      "default": 1
    },
    "per_page": {
      "type": "integer",
      "default": 20
    }
  }
}
🟢parks.get(park)

Get a single published, verified park by id or slug.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "park": {
      "type": "string"
    }
  },
  "required": [
    "park"
  ]
}
🟢campsites.list(campground, campsite_type, hookup_type, status, loop, ...)

List campsites for a campground with filters (type, hookups, accessibility, availability, loop).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "campground": {
      "type": "string"
    },
    "campsite_type": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "hookup_type": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "status": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "loop": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "available_only": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "is_accessible": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "is_waterfront": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "is_pull_through": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "pets_allowed": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "is_reservable": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "min_occupancy": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "vehicle_length": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "min_amps": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "sort": {
      "type": "string",
      "default": "name"
    },
    "direction": {
      "type": "string",
      "default": "asc"
    },
    "page": {
      "type": "integer",
      "default": 1
    },
    "per_page": {
      "type": "integer",
      "default": 50
    }
  },
  "required": [
    "campground"
  ]
}
🟢campsites.get(campground, campsite_id)

Get a single campsite (and its campground/park/region relations) by campground + campsite id.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "campground": {
      "type": "string"
    },
    "campsite_id": {
      "type": "integer"
    }
  },
  "required": [
    "campground",
    "campsite_id"
  ]
}
🟢campgrounds.search(q, region_id, state, park_id, campground_type, ...)

Search published, verified campgrounds with common filters (type, reservation, region/state, geo).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "default": ""
    },
    "region_id": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "state": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "park_id": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "campground_type": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "reservation_type": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "has_tent_sites": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "has_rv_sites": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "has_cabins": {
      "type": [
        "null",
        "boolean"
      ],
      "default": null
    },
    "lat": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "lng": {
      "type": [
        "null",
        "number"
      ],
      "default": null
    },
    "radius_meters": {
      "type": [
        "null",
        "integer"
      ],
      "default": null
    },
    "bounds": {
      "type": [
        "null",
        "string"
      ],
      "default": null
    },
    "page": {
      "type": "integer",
      "default": 1
    },
    "per_page": {
      "type": "integer",
      "default": 20
    }
  }
}
🟢campgrounds.get(campground)

Get a single published, verified campground by id or slug.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "campground": {
      "type": "string"
    }
  },
  "required": [
    "campground"
  ]
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet20 Tools
verifiziertVersion nicht aufgezeichnet20 Tools
verifiziertVersion nicht aufgezeichnet20 Tools