Koskamo

Outdoorithm MCP

The Outdoorithm MCP server provides read-only access to structured data for over 10,000 US campgrounds, including live availability, weather forecasts, safety scores, and gear recommendations. It enables AI agents to assist with camping and trip planning without needing authentication for basic access, though an API key increases daily availability check limits.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Outdoorithm MCP logo, by OutdoorithmCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-07Published by Outdoorithm
You need:All 13 tools are read-only and need no authentication, API key, or account.Live availability checks (check_availability) have a daily allowance of 20 per day without a key
MCP endpoint (Streamable HTTP)
https://mcp.outdoorithm.com/mcp
Vendor documentation

What its tools do

13 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

13 of 13 have a description · 13 of 13 declare behavior hints · 12 of 12 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Search for campgrounds by location or activity
  • Check live availability across reservation providers
  • Retrieve weather forecasts with camping suitability ratings
  • Get curated gear recommendations for outdoor trips

Source and maintenance

Community listingRegistry 0.1.1
Maintenance checked

Protocol and capabilities

Server
outdoorithm 0.1.0
MCP protocol negotiated in check
2025-11-25
Tools
13 advertised
Resources
0 advertised
Resource templates
0 advertised
Prompts
0 advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  },
  "logging": {},
  "prompts": {
    "listChanged": true
  },
  "resources": {
    "subscribe": false,
    "listChanged": true
  },
  "extensions": {
    "io.modelcontextprotocol/ui": {}
  },
  "experimental": {}
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Outdoorithm MCP Server - Campground discovery and trip planning tools. This server provides 13 tools for discovering campgrounds, checking availability, preparing reservation handoffs, weather, safety, gear, and planning camping trips across the US. Data comes from Outdoorithm's database of 10,000+ campgrounds with enriched reviews, sentiment analysis, community safety scores, and gear recommendations. Every tool here is read-only and needs no credentials. Nothing on this server changes state or asks the user for a key. CAMPGROUND TOOLS: - search_campgrounds: Search with 40+ filters (location, amenities, activities, safety, terrain) - get_campground_details: Full campground profile with ~80 curated fields - find_similar_campgrounds: Vector-similarity search for campgrounds like a given one - check_availability: Live campsite availability from 13+ reservation providers - get_weather: 7-day forecast with camping suitability ratings - check_safety: Greenbook community safety scores and active alerts TRIP PLANNING TOOLS: - calculate_drive_times: Drive times from origin to multiple campgrounds (Mapbox) - build_packing_list: Context-aware packing list based on campground and trip type - prepare_reservation: Pre-fill a deep link to the operator's reservation page for the chosen campground/dates plus booking-window context. Outdoorithm does NOT book on behalf — operator ToS prohibit third-party booking — so this is a one-tap handoff for the user to confirm on Recreation.gov / ReserveCalifornia / etc. GEAR TOOLS: - get_gear_for_campground: Pre-computed gear recommendations per campground - search_gear: Catalog-wide gear search with text, category, price filters - compare_gear: Side-by-side comparison of 2-3 gear items OPERATIONS TOOL: - health_check: Basic server health metadata for connectivity diagnostics AVAILABILITY ALERTS: not available through this server. Outdoorithm can watch a campground and notify the user when a site opens up, but that writes to a specific account, so it needs a signed-in user rather than an anonymous connection. Point the user to outdoorithm.com/alerts to set one up. Do not ask them for an API key. RATE LIMITS: standard identified IP/session traffic receives 500 requests per hour, Claude.ai and ChatGPT connector traffic receives higher pooled allowances, and unattributable traffic receives a stricter shared allowance. check_availability also has a daily allowance of live checks (it queries the operator's system each time); when it is spent the error says when it resets, and every other tool keeps working. If that happens, point the user to the campground's Outdoorithm page or the operator's site rather than retrying. Developers running their own agents or scripts may send an Outdoorithm API key as an "Authorization: Bearer <key>" header for a higher daily allowance. It is optional, never required, and never something to ask a user for in conversation.

Tools

13 advertised

build_packing_list — Build Packing List
Advertised by the server during the last successful anonymous check.
Advertised read-only

Generate a context-aware packing checklist for a camping trip. Returns categorized items from the gear catalog, adjusted for campground amenities, activities, weather, and group size.

build_packing_list input schema
{
  "type": "object",
  "properties": {
    "adults": {
      "type": "integer",
      "default": 2,
      "description": "Number of adults (default 2)"
    },
    "nights": {
      "type": "integer",
      "default": 2,
      "description": "Number of nights (default 2)"
    },
    "season": {
      "anyOf": [
        {
          "enum": [
            "spring",
            "summer",
            "fall",
            "winter"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "spring, summer, fall, or winter (optional)"
    },
    "children": {
      "type": "integer",
      "default": 0,
      "description": "Number of children (default 0)"
    },
    "has_pets": {
      "type": "boolean",
      "default": false,
      "description": "Whether bringing pets (default false)"
    },
    "trip_type": {
      "enum": [
        "car_camping",
        "backpacking",
        "rv",
        "glamping"
      ],
      "type": "string",
      "default": "car_camping",
      "description": "car_camping, backpacking, rv, or glamping (default car_camping)"
    },
    "activities": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Planned activities (hiking, fishing, swimming, kayaking, biking, beach)"
    },
    "campground_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional CUID to personalize based on campground amenities"
    }
  },
  "additionalProperties": false
}
build_packing_list output schema
{
  "type": "object",
  "additionalProperties": true
}
build_packing_list annotations
{
  "title": "Build Packing List",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
calculate_drive_times — Calculate Drive Times
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Calculate realistic drive times from an origin to multiple campgrounds using Mapbox routing with live traffic. Uses the Mapbox Matrix API for traffic-aware routing. Maximum 9 destinations per request.

calculate_drive_times input schema
{
  "type": "object",
  "required": [
    "origin_latitude",
    "origin_longitude",
    "destinations"
  ],
  "properties": {
    "destinations": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      },
      "description": "List of {campground_id: str, latitude: float, longitude: float} (max 9)"
    },
    "origin_latitude": {
      "type": "number",
      "description": "Latitude of starting location"
    },
    "origin_longitude": {
      "type": "number",
      "description": "Longitude of starting location"
    }
  },
  "additionalProperties": false
}
calculate_drive_times output schema
{
  "type": "object",
  "additionalProperties": true
}
calculate_drive_times annotations
{
  "title": "Calculate Drive Times",
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
check_availability — Check Availability
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Check real-time campground availability for specific dates. Queries the camply-service to check live campsite availability against reservation systems. Supports 30+ providers including RecreationDotGov, ReserveCalifornia, state parks, and county parks.

check_availability input schema
{
  "type": "object",
  "required": [
    "campground_id",
    "start_date",
    "end_date"
  ],
  "properties": {
    "end_date": {
      "type": "string",
      "description": "Check-out date in YYYY-MM-DD format"
    },
    "min_nights": {
      "type": "integer",
      "default": 1,
      "description": "Minimum consecutive nights required (1-7, default 1)"
    },
    "start_date": {
      "type": "string",
      "description": "Check-in date in YYYY-MM-DD format"
    },
    "campground_id": {
      "type": "string",
      "description": "Campground CUID (e.g., \"ReserveCalifornia:uuid:725\")"
    }
  },
  "additionalProperties": false
}
check_availability output schema
{
  "type": "object",
  "additionalProperties": true
}
check_availability annotations
{
  "title": "Check Availability",
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
check_safety — Check Safety
Advertised by the server during the last successful anonymous check.
Advertised read-only

Check campgrounds for safety issues, community atmosphere, and active alerts. Checks: - Greenbook community safety (vibe scores, discrimination reports, flag status) - Active campground alerts (closures, restrictions) from enriched data - Red flag detection (prevents recommending unsafe campgrounds)

check_safety input schema
{
  "type": "object",
  "required": [
    "campground_ids"
  ],
  "properties": {
    "campground_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of campground CUIDs to check"
    }
  },
  "additionalProperties": false
}
check_safety output schema
{
  "type": "object",
  "additionalProperties": true
}
check_safety annotations
{
  "title": "Check Safety",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
compare_gear — Compare Gear
Advertised by the server during the last successful anonymous check.
Advertised read-only

Compare 2-3 gear items side-by-side with specs, pros/cons, verdicts, and comparison summary. Supports lookup by unique_id with slug fallback.

compare_gear input schema
{
  "type": "object",
  "required": [
    "gear_ids"
  ],
  "properties": {
    "gear_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of 2-3 gear item identifiers (unique_id or slug)"
    }
  },
  "additionalProperties": false
}
compare_gear output schema
{
  "type": "object",
  "additionalProperties": true
}
compare_gear annotations
{
  "title": "Compare Gear",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_weather — Get Weather
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get camping-specific 7-day weather forecast with suitability ratings and gear recommendations. Uses Open-Meteo's commercial API to provide: - Daily high/low temps, conditions, precipitation, wind - Camping suitability rating per day (excellent/good/fair/poor/not_recommended) - Gear recommendations based on conditions - Safety warnings for extreme weather - Best camping days in the forecast period Forecast data is from Open-Meteo, licensed under CC BY 4.0. Every successful forecast includes an `attribution` field carrying the required credit.

get_weather input schema
{
  "type": "object",
  "required": [
    "latitude",
    "longitude"
  ],
  "properties": {
    "latitude": {
      "type": "number",
      "description": "Campground latitude"
    },
    "longitude": {
      "type": "number",
      "description": "Campground longitude"
    },
    "check_in_date": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Planned check-in date ISO format (optional)"
    },
    "check_out_date": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Planned check-out date ISO format (optional)"
    },
    "campground_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Campground name for context (optional)"
    }
  },
  "additionalProperties": false
}
get_weather output schema
{
  "type": "object",
  "additionalProperties": true
}
get_weather annotations
{
  "title": "Get Weather",
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
find_similar_campgrounds — Find Similar Campgrounds
Advertised by the server during the last successful anonymous check.
Advertised read-only

Find campgrounds similar to a given campground using vector embedding similarity. Uses pre-computed embeddings combining review text (semantic) and structured attributes (amenities, terrain, activities) for nuanced similarity matching.

find_similar_campgrounds input schema
{
  "type": "object",
  "required": [
    "campground_id"
  ],
  "properties": {
    "result_limit": {
      "type": "integer",
      "default": 20,
      "description": "Number of results (1-50, default 20)"
    },
    "campground_id": {
      "type": "string",
      "description": "CUID of the target campground to find similar ones for"
    },
    "max_distance_km": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional max distance in km (omit for nationwide search)"
    },
    "semantic_weight": {
      "type": "number",
      "default": 0.6,
      "description": "Weight for text/review similarity (0-1, default 0.6)"
    },
    "structured_weight": {
      "type": "number",
      "default": 0.4,
      "description": "Weight for attribute similarity (0-1, default 0.4)"
    }
  },
  "additionalProperties": false
}
find_similar_campgrounds output schema
{
  "type": "object",
  "additionalProperties": true
}
find_similar_campgrounds annotations
{
  "title": "Find Similar Campgrounds",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_campground_details — Get Campground Details
Advertised by the server during the last successful anonymous check.
Advertised read-only

Get comprehensive details for a specific campground including amenities, reviews, safety, and seasonal ratings. Returns ~80 curated fields (not the raw 214-column dump) including: - Identity, location, fees, site info - All amenity and activity booleans + descriptions - Review summaries, best campsites, common complaints, tips - Greenbook community safety (vibe score, flag status) - Seasonal LLM ratings (spring/summer/fall/winter) - Sentiment trend direction - Hero image with credits Data coverage: a missing or empty field means the attribute isn't in our records, not that the feature is absent at the campground. Coverage varies by provider; the campground operator is the authoritative source.

get_campground_details input schema
{
  "type": "object",
  "required": [
    "campground_id"
  ],
  "properties": {
    "campground_id": {
      "type": "string",
      "description": "Unique campground identifier (CUID format, e.g., \"RecreationDotGov:232447:1074\")"
    }
  },
  "additionalProperties": false
}
get_campground_details output schema
{
  "type": "object",
  "additionalProperties": true
}
get_campground_details annotations
{
  "title": "Get Campground Details",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_gear_for_campground — Get Gear for Campground
Advertised by the server during the last successful anonymous check.
Advertised read-only

Get personalized gear recommendations for a specific campground. Returns pre-computed recommendations across slot types: essential (must-have), activity (activity-matched), comfort (nice-to-have), amenity_gap (compensates for missing amenities). Each includes product details and purchase links.

get_gear_for_campground input schema
{
  "type": "object",
  "required": [
    "campground_id"
  ],
  "properties": {
    "slot_type": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional filter — one of essential/activity/comfort/amenity_gap"
    },
    "campground_id": {
      "type": "string",
      "description": "Campground CUID"
    }
  },
  "additionalProperties": false
}
get_gear_for_campground output schema
{
  "type": "object",
  "additionalProperties": true
}
get_gear_for_campground annotations
{
  "title": "Get Gear for Campground",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
prepare_reservation — Prepare Reservation
Advertised by the server during the last successful anonymous check.
Advertised read-only

Prepare a one-tap booking handoff for the user's chosen campground/dates. Returns a pre-filled deep link to the operator's reservation page plus the booking-window context (release date/time, operator rules, alert suggestion). Does NOT book on behalf: third-party booking is prohibited by Recreation.gov, ReserveCalifornia, ReserveAmerica, and every other supported public-land operator.

prepare_reservation input schema
{
  "type": "object",
  "required": [
    "campground_id",
    "start_date",
    "end_date"
  ],
  "properties": {
    "end_date": {
      "type": "string",
      "description": "Check-out date (YYYY-MM-DD)."
    },
    "party_size": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional group size. Surfaced in the user-facing summary;\nmost operators don't accept this in URL params, so it isn't\nembedded in the deep link."
    },
    "start_date": {
      "type": "string",
      "description": "Check-in date (YYYY-MM-DD)."
    },
    "campground_id": {
      "type": "string",
      "description": "Outdoorithm CUID (e.g. ``RecreationDotGov:232447``)."
    }
  },
  "additionalProperties": false
}
prepare_reservation output schema
{
  "type": "object",
  "additionalProperties": true
}
prepare_reservation annotations
{
  "title": "Prepare Reservation",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
search_campgrounds — Search Campgrounds
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Search for campgrounds with 40+ filters including location, amenities, activities, and community safety. Requires at least one location constraint: near_location, campground_name, latitude+longitude, or states.

search_campgrounds input schema
{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "default": 20,
      "description": "Maximum results (1-50, default 20)"
    },
    "states": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "US state codes to filter by (e.g., [\"CA\", \"OR\"])"
    },
    "latitude": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Latitude coordinate"
    },
    "longitude": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Longitude coordinate"
    },
    "allows_pets": {
      "type": "boolean",
      "default": false,
      "description": "Only show pet-friendly campgrounds"
    },
    "camping_type": {
      "anyOf": [
        {
          "enum": [
            "tent",
            "rv",
            "primitive",
            "group",
            "cabin",
            "glamping"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Camping type (tent/rv/primitive/group/cabin/glamping)"
    },
    "near_location": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "City, park, address, or landmark (e.g., \"Oakland, CA\", \"Yosemite\")"
    },
    "prefers_beach": {
      "type": "boolean",
      "default": false,
      "description": "Prefer beach settings"
    },
    "prefers_quiet": {
      "type": "boolean",
      "default": false,
      "description": "Prefer quiet campgrounds"
    },
    "prefers_desert": {
      "type": "boolean",
      "default": false,
      "description": "Prefer desert settings"
    },
    "prefers_forest": {
      "type": "boolean",
      "default": false,
      "description": "Prefer forested settings"
    },
    "prefers_hiking": {
      "type": "boolean",
      "default": false,
      "description": "Prefer hiking trails"
    },
    "campground_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Name, or the start of the name, of a specific campground\n(e.g., \"Jumbo Rocks\", \"Upper Pines\"). Matching campgrounds are returned\nfirst; with no other location given, the search centers on the best match."
    },
    "prefers_boating": {
      "type": "boolean",
      "default": false,
      "description": "Prefer boating access"
    },
    "prefers_fishing": {
      "type": "boolean",
      "default": false,
      "description": "Prefer fishing access"
    },
    "prefers_privacy": {
      "type": "boolean",
      "default": false,
      "description": "Prefer private campsites"
    },
    "min_review_count": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Minimum number of reviews"
    },
    "preferred_season": {
      "anyOf": [
        {
          "enum": [
            "spring",
            "summer",
            "fall",
            "winter"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Preferred season (summer/fall/winter/spring)"
    },
    "prefers_kayaking": {
      "type": "boolean",
      "default": false,
      "description": "Prefer kayaking access"
    },
    "prefers_mountain": {
      "type": "boolean",
      "default": false,
      "description": "Prefer mountain settings"
    },
    "prefers_secluded": {
      "type": "boolean",
      "default": false,
      "description": "Prefer secluded/private campgrounds"
    },
    "prefers_swimming": {
      "type": "boolean",
      "default": false,
      "description": "Prefer swimming areas"
    },
    "requires_showers": {
      "type": "boolean",
      "default": false,
      "description": "Require shower facilities"
    },
    "min_avg_sentiment": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Minimum average sentiment (0-5)"
    },
    "preferred_carrier": {
      "anyOf": [
        {
          "enum": [
            "verizon",
            "att",
            "tmobile"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Preferred carrier (verizon/att/tmobile)"
    },
    "prefers_adventure": {
      "type": "boolean",
      "default": false,
      "description": "Prefer adventure-oriented campgrounds"
    },
    "prefers_lakefront": {
      "type": "boolean",
      "default": false,
      "description": "Prefer lakefront locations"
    },
    "max_distance_miles": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Maximum distance from location in miles"
    },
    "min_seasonal_score": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Minimum seasonal score (1-5)"
    },
    "prefers_oceanfront": {
      "type": "boolean",
      "default": false,
      "description": "Prefer ocean/beach locations"
    },
    "prefers_relaxation": {
      "type": "boolean",
      "default": false,
      "description": "Prefer relaxation-focused campgrounds"
    },
    "prefers_riverfront": {
      "type": "boolean",
      "default": false,
      "description": "Prefer riverside locations"
    },
    "prefers_stargazing": {
      "type": "boolean",
      "default": false,
      "description": "Prefer dark sky areas"
    },
    "sentiment_trending": {
      "anyOf": [
        {
          "enum": [
            "improving",
            "stable",
            "declining"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by trend (improving/stable/declining)"
    },
    "max_price_per_night": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Maximum price filter"
    },
    "min_price_per_night": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Minimum price filter"
    },
    "requires_dump_station": {
      "type": "boolean",
      "default": false,
      "description": "Require RV dump station"
    },
    "require_greenbook_safe": {
      "type": "boolean",
      "default": false,
      "description": "Only show campgrounds with OK safety status"
    },
    "requires_accessibility": {
      "type": "boolean",
      "default": false,
      "description": "Require wheelchair/ADA accessible features"
    },
    "requires_cell_coverage": {
      "type": "boolean",
      "default": false,
      "description": "Require cell phone coverage"
    },
    "requires_flush_toilets": {
      "type": "boolean",
      "default": false,
      "description": "Require flush toilets"
    },
    "requires_potable_water": {
      "type": "boolean",
      "default": false,
      "description": "Require potable water"
    },
    "requires_water_hookups": {
      "type": "boolean",
      "default": false,
      "description": "Require water hookups"
    },
    "min_cell_coverage_score": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Minimum cell coverage score (1-5)"
    },
    "prefers_family_friendly": {
      "type": "boolean",
      "default": false,
      "description": "Prefer family-friendly campgrounds"
    },
    "min_greenbook_vibe_score": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Minimum community vibe score (0-100)"
    },
    "only_improving_sentiment": {
      "type": "boolean",
      "default": false,
      "description": "Only show campgrounds with improving reviews"
    },
    "no_discrimination_reports": {
      "type": "boolean",
      "default": false,
      "description": "Exclude campgrounds with discrimination reports"
    },
    "requires_electric_hookups": {
      "type": "boolean",
      "default": false,
      "description": "Require electric hookups"
    }
  },
  "additionalProperties": false
}
search_campgrounds output schema
{
  "type": "object",
  "additionalProperties": true
}
search_campgrounds annotations
{
  "title": "Search Campgrounds",
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
search_gear — Search Gear
Advertised by the server during the last successful anonymous check.
Advertised read-only

Search the Outdoorithm gear catalog by keyword, category, price range, kit, necessity, or recommendation tier. Returns matching products with prices, verdicts, and purchase links.

search_gear input schema
{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "default": 10,
      "description": "Max results (1-20, default 10)"
    },
    "query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Text search across product name, manufacturer, keywords, and description"
    },
    "kit_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by kit (e.g., Basics, Camp Kitchen, Hiking, Cold Weather)"
    },
    "max_price": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Maximum price in USD"
    },
    "min_price": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Minimum price in USD"
    },
    "necessity": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by level — Essential, Helpful, or Optional"
    },
    "category_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by category (e.g., Shelter, Sleeping Gear, Furniture, Electronics)"
    },
    "recommendation_tier": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by tier — Our Pick, Value Pick, or Comfort Pick"
    }
  },
  "additionalProperties": false
}
search_gear output schema
{
  "type": "object",
  "additionalProperties": true
}
search_gear annotations
{
  "title": "Search Gear",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
health_check — Health Check
Advertised by the server during the last successful anonymous check.
Advertised read-only

Check server health and connectivity. Returns: Dictionary with health status including: - status: "healthy" or "unhealthy" - version: Server version - environment: Current environment (dev/staging/prod)

health_check input schema
{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
health_check output schema
{
  "type": "object",
  "additionalProperties": true
}
health_check annotations
{
  "title": "Health Check",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}

Prompts

0 advertised

No prompt definitions available.

Resources

0 advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
775 ms
95th percentile latency
775 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 775 ms · metadata changed · 13 tool(s), 0 resource(s), 0 resource template(s), 0 prompt(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http outdoorithm-mcp https://mcp.outdoorithm.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add outdoorithm-mcp --url https://mcp.outdoorithm.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable outdoorithm-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "outdoorithm-mcp": {
      "url": "https://mcp.outdoorithm.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "outdoorithm-mcp": {
      "type": "streamableHttp",
      "url": "https://mcp.outdoorithm.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start outdoorithm-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "outdoorithm-mcp": {
      "type": "http",
      "url": "https://mcp.outdoorithm.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http outdoorithm-mcp https://mcp.outdoorithm.com/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://mcp.outdoorithm.com/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "outdoorithm-mcp": {
      "serverUrl": "https://mcp.outdoorithm.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Outdoorithm MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.