← WebMCP Directory

Tool tree

switchback-mvp-igor.netlify.app

Travel & EventsTools verified
Website
Switchback
Explore capabilities
    list_circuit_optionsAnswer

    List every selectable Collserola circuit origin, its arrival mode, and graph-verified short, medium, or long distance profiles. These are not difficulty ratings.

    View tool JSON
    {
      "name": "list_circuit_options",
      "kind": "answer",
      "impl": "imperative",
      "description": "List every selectable Collserola circuit origin, its arrival mode, and graph-verified short, medium, or long distance profiles. These are not difficulty ratings.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {}
      }
    }
    validate_circuitAnswer

    Dry-run a listed start and verified target against the loaded directed TrailPack. It proves closure and distance without rendering or changing the customer’s active route.

    View tool JSON
    {
      "name": "validate_circuit",
      "kind": "answer",
      "impl": "imperative",
      "description": "Dry-run a listed start and verified target against the loaded directed TrailPack. It proves closure and distance without rendering or changing the customer’s active route.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "start",
          "target_km",
          "prefer_waymarked"
        ],
        "properties": {
          "start": {
            "type": "string",
            "enum": [
              "vista_rica_parking",
              "passeig_aigues_parking",
              "budellera_parking",
              "panta_vallvidrera",
              "santa_creu_olorda",
              "can_jane_sant_cugat",
              "can_coll_cerdanyola",
              "mirador_xiprers"
            ]
          },
          "target_km": {
            "type": "number",
            "description": "One of the verified_targets_km values returned by list_circuit_options."
          },
          "prefer_waymarked": {
            "type": "boolean"
          }
        }
      }
    }
    record_session_noteAction

    Record a short agent test result, product insight, or human handoff in the page’s visible session worklog. It is local to the current tab and makes agent work reviewable.

    View tool JSON
    {
      "name": "record_session_note",
      "kind": "act",
      "impl": "imperative",
      "description": "Record a short agent test result, product insight, or human handoff in the page’s visible session worklog. It is local to the current tab and makes agent work reviewable.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "kind",
          "note"
        ],
        "properties": {
          "kind": {
            "type": "string",
            "enum": [
              "test",
              "product_insight",
              "handoff"
            ]
          },
          "note": {
            "type": "string",
            "minLength": 1,
            "maxLength": 240
          }
        }
      }
    }
    plan_routeAction

    Plan and render a genuine Collserola circuit, then automatically check the next-three-day forecast and official Park alerts for a conversational, source-labelled recommendation. Either live source can be unavailable without invalidating the graph-verified route. Every listed start has a small set of graph-verified target distances; use only its published values, returned in errors when needed. The pack excludes urban footways and paved access roads. An ICGC LiDAR-based ascent estimate is added after rendering.

    View tool JSON
    {
      "name": "plan_route",
      "kind": "act",
      "impl": "imperative",
      "description": "Plan and render a genuine Collserola circuit, then automatically check the next-three-day forecast and official Park alerts for a conversational, source-labelled recommendation. Either live source can be unavailable without invalidating the graph-verified route. Every listed start has a small set of graph-verified target distances; use only its published values, returned in errors when needed. The pack excludes urban footways and paved access roads. An ICGC LiDAR-based ascent estimate is added after rendering.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "start",
          "target_km",
          "prefer_waymarked"
        ],
        "properties": {
          "start": {
            "type": "string",
            "enum": [
              "vista_rica_parking",
              "passeig_aigues_parking",
              "budellera_parking",
              "panta_vallvidrera",
              "santa_creu_olorda",
              "can_jane_sant_cugat",
              "can_coll_cerdanyola",
              "mirador_xiprers"
            ],
            "description": "Verified circuit origin. Use arrival_mode to choose car or public transport; the enum contains all currently selectable origins."
          },
          "arrival_mode": {
            "type": "string",
            "enum": [
              "car",
              "public_transport"
            ],
            "description": "Optional arrival context. When supplied, it must agree with the chosen origin."
          },
          "target_km": {
            "type": "number",
            "minimum": 1,
            "maximum": 30,
            "multipleOf": 0.5,
            "description": "Desired circuit distance in 0.5 km steps, from 1 through 30. A result is accepted only within ±0.5 km."
          },
          "prefer_waymarked": {
            "type": "boolean",
            "description": "Bias toward the Park’s published A–E marked-path network while retaining OSM trail connectors needed to close a loop. It does not confirm present-day conditions."
          },
          "max_ascent_m": {
            "type": "number",
            "description": "Unsupported at plan-selection time; ascent is estimated after the route has rendered."
          },
          "max_grade": {
            "type": "string",
            "description": "Unsupported: this TrailPack has incomplete grade tags."
          }
        }
      }
    }
    get_route_summaryAnswer

    Read the active data-backed route totals and at most five TrailPack segments.

    View tool JSON
    {
      "name": "get_route_summary",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the active data-backed route totals and at most five TrailPack segments.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {}
      }
    }
    explain_difficultyAction

    Classify the active route against Switchback's easy, moderate, and difficult walking rubric, with its measured ascent, evidence, and missing terrain data.

    View tool JSON
    {
      "name": "explain_difficulty",
      "kind": "act",
      "impl": "imperative",
      "description": "Classify the active route against Switchback's easy, moderate, and difficult walking rubric, with its measured ascent, evidence, and missing terrain data.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {}
      }
    }
    explain_segmentAction

    Read OSM terrain tags and official-match evidence for a segment of the active route.

    View tool JSON
    {
      "name": "explain_segment",
      "kind": "act",
      "impl": "imperative",
      "description": "Read OSM terrain tags and official-match evidence for a segment of the active route.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "segment_name"
        ],
        "properties": {
          "segment_name": {
            "type": "string",
            "maxLength": 120,
            "description": "physical_id from get_route_summary.notable_segments."
          }
        }
      }
    }
    avoid_segmentAction

    Replan the active directed TrailPack loop while blocking one active physical segment. The route changes only after a verified replacement loop is found and rendered; otherwise it fails closed.

    View tool JSON
    {
      "name": "avoid_segment",
      "kind": "act",
      "impl": "imperative",
      "description": "Replan the active directed TrailPack loop while blocking one active physical segment. The route changes only after a verified replacement loop is found and rendered; otherwise it fails closed.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "segment_name"
        ],
        "properties": {
          "segment_name": {
            "type": "string",
            "maxLength": 120,
            "description": "physical_id from get_route_summary.notable_segments."
          }
        }
      }
    }
    prepare_gpxAction

    Prepare a full-resolution GPX 1.1 trail trace with five named TrailPack transitions and reveal a user-gesture download control. It never starts a download or shares a file itself.

    View tool JSON
    {
      "name": "prepare_gpx",
      "kind": "act",
      "impl": "imperative",
      "description": "Prepare a full-resolution GPX 1.1 trail trace with five named TrailPack transitions and reveal a user-gesture download control. It never starts a download or shares a file itself.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {}
      }
    }
    get_trail_weatherAnswer

    Compare the next three local forecast days for the active route, including a 17:00–20:00 evening candidate and sunrise/sunset. Set time_of_day to evening when the person asks about an evening hike. This is planning context, not a trail-safety or weather-alert assessment.

    View tool JSON
    {
      "name": "get_trail_weather",
      "kind": "answer",
      "impl": "imperative",
      "description": "Compare the next three local forecast days for the active route, including a 17:00–20:00 evening candidate and sunrise/sunset. Set time_of_day to evening when the person asks about an evening hike. This is planning context, not a trail-safety or weather-alert assessment.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "time_of_day": {
            "type": "string",
            "enum": [
              "any",
              "morning",
              "afternoon",
              "evening"
            ],
            "description": "Optional preference for the recommended forecast window. Use evening for an after-work hike."
          }
        }
      }
    }
    get_hiking_conditionsAnswer

    Assemble the active route’s decision context for a hiking conversation: graph route facts, conservative difficulty evidence, requested-time forecast and daylight, plus the Park’s official active-alert count. It never certifies that hiking is safe; the agent must explain what remains to be checked locally.

    View tool JSON
    {
      "name": "get_hiking_conditions",
      "kind": "answer",
      "impl": "imperative",
      "description": "Assemble the active route’s decision context for a hiking conversation: graph route facts, conservative difficulty evidence, requested-time forecast and daylight, plus the Park’s official active-alert count. It never certifies that hiking is safe; the agent must explain what remains to be checked locally.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "time_of_day": {
            "type": "string",
            "enum": [
              "any",
              "morning",
              "afternoon",
              "evening"
            ],
            "description": "Use evening when the person asks whether an after-work hike is sensible."
          }
        }
      }
    }
    get_park_alertsAnswer

    Read the Park's official active-alert list through Switchback's same-origin adapter. It returns notices with their publication dates and source links; it does not decide whether a notice applies to this exact route or remains in force. Request up to eight notice summaries when analysing hiking conditions.

    View tool JSON
    {
      "name": "get_park_alerts",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the Park's official active-alert list through Switchback's same-origin adapter. It returns notices with their publication dates and source links; it does not decide whether a notice applies to this exact route or remains in force. Request up to eight notice summaries when analysing hiking conditions.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "notice_limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 8,
            "description": "Optional number of active notices to return. Use 8 for a fuller hiking-conditions review."
          }
        }
      }
    }
    prepare_route_briefingAction

    Prepare a concise, copyable route briefing for a family or friends chat and reveal the same text in the page for the person to review. It never sends a message or accesses a messaging account.

    View tool JSON
    {
      "name": "prepare_route_briefing",
      "kind": "act",
      "impl": "imperative",
      "description": "Prepare a concise, copyable route briefing for a family or friends chat and reveal the same text in the page for the person to review. It never sends a message or accesses a messaging account.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {}
      }
    }
    describe_last_editAnswer

    Read the most recent manual map edit and its measured route effect.

    View tool JSON
    {
      "name": "describe_last_edit",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the most recent manual map edit and its measured route effect.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {}
      }
    }