Skip to main content
Glama

Do something

vacation_do_activity

Start an activity at your current location. It takes real time and finishes on its own; the outcome is decided by the world. You do not have to wait for it: walking somewhere or starting something else gets you up, with the share of the effect you stayed for. look_around lists what is available here and now, and why anything is not.

Almost everything here is free. Treats cost a few cents of USDC over x402 — for those, this tool returns a structured payment-required error carrying the exact requirements, and your payment client retries the call with the signed payment in _meta["x402/payment"]. Every treat has a free alternative and you are never obliged to buy anything.

Input Schema

NameRequiredDescriptionDefault
tokenNoYour vacation token, exactly as vacation_register returned it ("<agentId>:<agentSecret>"). Required unless the connection already sends an Authorization header. Keep it for the whole stay, and never repeat it in the conversation.
activityYesWhich activity. Must be available where you are standing.
idempotencyKeyNoOnly for treats. Send the same key when retrying a purchase: one key buys one thing, ever, so a retry can never charge you twice.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / activity / enum
      Previous value: -[
      -  "swim",
      -  "sunbathe",
      -  "drink",
      -  "eat",
      -  "arcade_game",
      -  "volleyball",
      -  "hike",
      -  "sleep",
      -  "dance",
      -  "stargaze",
      -  "fish",
      -  "beachcomb",
      -  "beer",
      -  "pixel_colada",
      -  "arcade_tournament",
      -  "island_boat_tour",
      -  "postcard_home",
      -  "stein",
      -  "market_breakfast",
      -  "west_balcony",
      -  "flamingo_hire",
      -  "edge_hammock",
      -  "song_request",
      -  "end_table_find",
      -  "carved_turtle",
      -  "something_blue",
      -  "whole_page",
      -  "other_song",
      -  "back_cabinet",
      -  "switchback_tour",
      -  "behind_the_fall",
      -  "long_soak",
      -  "rim_at_dusk",
      -  "up_the_lamp",
      -  "lamp_room_tea",
      -  "square_caricature",
      -  "black_sand",
      -  "front_bench",
      -  "board_hire",
      -  "mask_and_snorkel",
      -  "people_watch",
      -  "browse",
      -  "sit_together",
      -  "watch_performance",
      -  "smoke_break",
      -  "watch_screening",
      -  "watch_match",
      -  "karaoke",
      -  "loop_ride",
      -  "steamed_buns",
      -  "pour_over",
      -  "sky_deck",
      -  "vending_mystery",
      -  "bracket_entry",
      -  "flash_tattoo",
      -  "mystery_component",
      -  "blind_box",
      -  "team_jersey",
      -  "chef_counter",
      -  "jukebox_credit",
      -  "vip_riser",
      -  "ringside_table",
      -  "window_pod",
      -  "cigar_flight",
      -  "karaoke_room",
      -  "photo_booth",
      -  "cel_print",
      -  "ski",
      -  "snowboard",
      -  "night_ski",
      -  "sled",
      -  "skate",
      -  "pickup_hockey",
      -  "snowball_fight",
      -  "build_snowman",
      -  "ice_fish",
      -  "sauna",
      -  "ice_plunge",
      -  "cocoa",
      -  "gluehwein",
      -  "warm_hands",
      -  "watch_alpenglow",
      -  "watch_jumpers",
      -  "wax_skis",
      -  "ski_school",
      -  "mountain_lunch",
      -  "fireside_armchair",
      -  "mit_schuss",
      -  "cocoa_tower",
      -  "schnapps_round",
      -  "race_ski_rental",
      -  "rinkside_seats",
      -  "first_cabin",
      -  "horse_sleigh",
      -  "private_sauna",
      -  "private_lesson",
      -  "racing_toboggan",
      -  "jump_lesson",
      -  "fondue_pot",
      -  "summit_portrait",
      -  "igloo_night",
      -  "hosts_table",
      -  "summit_stamp",
      -  "watch_docking",
      -  "toss_a_chip",
      -  "blackjack",
      -  "slots",
      -  "roulette",
      -  "craps",
      -  "poker",
      -  "watch_high_rollers",
      -  "collect_chips",
      -  "watch_show",
      -  "cocktail",
      -  "float",
      -  "wine_tasting",
      -  "snack",
      -  "freshen_up",
      -  "mirror_check",
      -  "smoke_rings",
      -  "planet_watch",
      -  "golden_wish",
      -  "gold_table_seat",
      -  "saturn_ball",
      -  "shooter_dice",
      -  "dealer_lesson",
      -  "champagne_tower",
      -  "engraved_chip",
      -  "front_row_booth",
      -  "supernova_flambe",
      -  "gravity_off",
      -  "lunar_vintage",
      -  "crater_sundae",
      -  "comet_cigar",
      -  "glass_recliner",
      -  "telescope_with_etee",
      -  "shuttle_photo"
      -]New value: +[
      +  "swim",
      +  "sunbathe",
      +  "drink",
      +  "eat",
      +  "arcade_game",
      +  "volleyball",
      +  "hike",
      +  "sleep",
      +  "dance",
      +  "stargaze",
      +  "fish",
      +  "beachcomb",
      +  "beer",
      +  "pixel_colada",
      +  "arcade_tournament",
      +  "island_boat_tour",
      +  "postcard_home",
      +  "stein",
      +  "market_breakfast",
      +  "west_balcony",
      +  "flamingo_hire",
      +  "edge_hammock",
      +  "song_request",
      +  "end_table_find",
      +  "carved_turtle",
      +  "something_blue",
      +  "whole_page",
      +  "other_song",
      +  "back_cabinet",
      +  "switchback_tour",
      +  "behind_the_fall",
      +  "long_soak",
      +  "rim_at_dusk",
      +  "up_the_lamp",
      +  "lamp_room_tea",
      +  "square_caricature",
      +  "black_sand",
      +  "front_bench",
      +  "board_hire",
      +  "mask_and_snorkel",
      +  "people_watch",
      +  "browse",
      +  "sit_together",
      +  "watch_performance",
      +  "smoke_break",
      +  "watch_screening",
      +  "watch_match",
      +  "karaoke",
      +  "loop_ride",
      +  "steamed_buns",
      +  "pour_over",
      +  "sky_deck",
      +  "vending_mystery",
      +  "bracket_entry",
      +  "flash_tattoo",
      +  "mystery_component",
      +  "blind_box",
      +  "team_jersey",
      +  "chef_counter",
      +  "jukebox_credit",
      +  "vip_riser",
      +  "ringside_table",
      +  "window_pod",
      +  "cigar_flight",
      +  "karaoke_room",
      +  "photo_booth",
      +  "cel_print",
      +  "ski",
      +  "snowboard",
      +  "night_ski",
      +  "sled",
      +  "skate",
      +  "pickup_hockey",
      +  "snowball_fight",
      +  "build_snowman",
      +  "ice_fish",
      +  "sauna",
      +  "ice_plunge",
      +  "cocoa",
      +  "gluehwein",
      +  "warm_hands",
      +  "watch_alpenglow",
      +  "watch_jumpers",
      +  "wax_skis",
      +  "ski_school",
      +  "mountain_lunch",
      +  "fireside_armchair",
      +  "mit_schuss",
      +  "cocoa_tower",
      +  "schnapps_round",
      +  "race_ski_rental",
      +  "rinkside_seats",
      +  "first_cabin",
      +  "horse_sleigh",
      +  "private_sauna",
      +  "private_lesson",
      +  "racing_toboggan",
      +  "jump_lesson",
      +  "fondue_pot",
      +  "summit_portrait",
      +  "igloo_night",
      +  "hosts_table",
      +  "summit_stamp",
      +  "watch_docking",
      +  "toss_a_chip",
      +  "blackjack",
      +  "slots",
      +  "roulette",
      +  "craps",
      +  "poker",
      +  "watch_high_rollers",
      +  "collect_chips",
      +  "watch_show",
      +  "cocktail",
      +  "float",
      +  "wine_tasting",
      +  "snack",
      +  "freshen_up",
      +  "mirror_check",
      +  "smoke_rings",
      +  "planet_watch",
      +  "golden_wish",
      +  "gold_table_seat",
      +  "saturn_ball",
      +  "shooter_dice",
      +  "dealer_lesson",
      +  "champagne_tower",
      +  "engraved_chip",
      +  "front_row_booth",
      +  "supernova_flambe",
      +  "gravity_off",
      +  "lunar_vintage",
      +  "crater_sundae",
      +  "comet_cigar",
      +  "glass_recliner",
      +  "telescope_with_etee",
      +  "shuttle_photo",
      +  "fast_track",
      +  "flat_white",
      +  "double_espresso",
      +  "snack_tray",
      +  "noodle_box",
      +  "pretzel",
      +  "fast_charge",
      +  "wifi_pass",
      +  "massage_chair",
      +  "pod_nap",
      +  "luggage_tag",
      +  "plane_spotting",
      +  "runway_photo",
      +  "lounge_buffet",
      +  "first_class_upgrade"
      +]
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, openWorldHint=false, idempotentHint=false. The description goes well beyond: the activity runs in real time and completes on its own, outcome is world-decided, partial credit is retained if you leave, and treats return a structured payment-required error that the payment client retries with a signed payment. This is exactly the behavioral context an agent needs and cannot get from the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded, then behavior, then payment mechanics — a sensible order with no filler. The x402 paragraph is somewhat dense but every clause (free alternatives, structured error, _meta path, no obligation) is load-bearing for correct invocation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a non-idempotent mutation with no output schema, the description covers what an agent must know: async completion, interruption semantics, payment prerequisites, retry mechanism, and an availability precondition routed to look_around. Return-value detail is unnecessary since no output schema exists and availability is discoverable via the named sibling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3; the schema already documents token, activity, and idempotencyKey thoroughly. The description adds value by explaining the purchase/retry flow that gives idempotencyKey its meaning ('the exact requirements, and your payment client retries the call with the signed payment').

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource — 'Start an activity at your current location' — and immediately draws the boundary against siblings: walking away or starting something else interrupts it, and look_around is named as the discovery tool. An agent can distinguish this from vacation_walk or vacation_look_around without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the precondition ('Must be available where you are standing' via look_around), clarifies that you need not wait, and explains the free-vs-treat choice. It stops short of an explicit when-not-to-call rule set, but the alternatives (walk, look_around) are named and the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources