← WebMCP Directory

Tool tree

gallery402.stacktr.ee

Media & PersonalTools verified
Website
A virtual museum where you look at the art and your agent handles the paywall. WebMCP tools + x402 micropayments.
Explore capabilities
    stacktree_page_infoAnswer

    Report what this page is and when it was last updated. This URL always serves the current version of the page, so a copy taken earlier may be out of date.

    View tool JSON
    {
      "name": "stacktree_page_info",
      "kind": "answer",
      "impl": "imperative",
      "description": "Report what this page is and when it was last updated. This URL always serves the current version of the page, so a copy taken earlier may be out of date.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    gallery_list_wingsAction

    List the museum wings, ticket prices, what hangs in each, and which you already hold tickets for.

    View tool JSON
    {
      "name": "gallery_list_wings",
      "kind": "act",
      "impl": "imperative",
      "description": "List the museum wings, ticket prices, what hangs in each, and which you already hold tickets for."
    }
    gallery_list_artworksAnswer

    Titles, artists and dates of the works in one wing, or across the whole museum. Use it to pick stops for plan_tour or a work for view_artwork.

    View tool JSON
    {
      "name": "gallery_list_artworks",
      "kind": "answer",
      "impl": "imperative",
      "description": "Titles, artists and dates of the works in one wing, or across the whole museum. Use it to pick stops for plan_tour or a work for view_artwork.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "wing": {
            "type": "string",
            "description": "Wing id. Omit for the whole collection.",
            "enum": [
              "impressionists",
              "van-gogh",
              "ukiyo-e",
              "dutch-cabinet"
            ]
          }
        }
      }
    }
    gallery_look_aroundAction

    Describe what is on screen right now: the room, the artwork in front of the visitor, its curator note, and neighbours.

    View tool JSON
    {
      "name": "gallery_look_around",
      "kind": "act",
      "impl": "imperative",
      "description": "Describe what is on screen right now: the room, the artwork in front of the visitor, its curator note, and neighbours."
    }
    gallery_wallet_statusAnswer

    The visitor wallet: address, USDC balance, spending policy, tickets held and recent receipts.

    View tool JSON
    {
      "name": "gallery_wallet_status",
      "kind": "answer",
      "impl": "imperative",
      "description": "The visitor wallet: address, USDC balance, spending policy, tickets held and recent receipts."
    }
    gallery_fund_walletAction

    Ask the museum faucet for a few cents of test USDC (Base Sepolia). Use when wallet_status shows a balance too low for a ticket.

    View tool JSON
    {
      "name": "gallery_fund_wallet",
      "kind": "act",
      "impl": "imperative",
      "description": "Ask the museum faucet for a few cents of test USDC (Base Sepolia). Use when wallet_status shows a balance too low for a ticket."
    }
    gallery_buy_ticketSensitive Action

    Pay for a wing over x402 (HTTP 402, USDC). Applies the visitor's spending policy; may pause for their approval. Returns the ticket and settlement tx.

    View tool JSON
    {
      "name": "gallery_buy_ticket",
      "kind": "transact",
      "impl": "imperative",
      "description": "Pay for a wing over x402 (HTTP 402, USDC). Applies the visitor's spending policy; may pause for their approval. Returns the ticket and settlement tx.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "wing": {
            "type": "string",
            "description": "Wing id from list_wings, or \"day-pass\" for every wing.",
            "enum": [
              "impressionists",
              "van-gogh",
              "ukiyo-e",
              "dutch-cabinet",
              "day-pass"
            ]
          }
        },
        "required": [
          "wing"
        ]
      }
    }
    gallery_view_artworkAction

    Bring a specific work in front of the visitor by title, artist or id (e.g. "Great Wave", "Milkmaid"). Needs a ticket for its wing.

    View tool JSON
    {
      "name": "gallery_view_artwork",
      "kind": "act",
      "impl": "imperative",
      "description": "Bring a specific work in front of the visitor by title, artist or id (e.g. \"Great Wave\", \"Milkmaid\"). Needs a ticket for its wing.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Title, artist, or artwork id."
          }
        },
        "required": [
          "query"
        ]
      }
    }
    gallery_present_ticketAction

    Already paid? An agent with its own wallet can pay any door’s HTTP 402 directly (see /.well-known/x402 on the box office) and present the returned ticket here — the museum honours it exactly like one bought in-page. Input: the ticket string.

    View tool JSON
    {
      "name": "gallery_present_ticket",
      "kind": "act",
      "impl": "imperative",
      "description": "Already paid? An agent with its own wallet can pay any door’s HTTP 402 directly (see /.well-known/x402 on the box office) and present the returned ticket here — the museum honours it exactly like one bought in-page. Input: the ticket string.",
      "inputSchema": {
        "type": "object",
        "required": [
          "ticket"
        ],
        "properties": {
          "ticket": {
            "type": "string",
            "description": "The \"ticket\" field from a box-office purchase response."
          }
        }
      }
    }
    gallery_receiptsAction

    Every payment this visitor has made: amount, what for, settlement tx, and the tickets it bought.

    View tool JSON
    {
      "name": "gallery_receipts",
      "kind": "act",
      "impl": "imperative",
      "description": "Every payment this visitor has made: amount, what for, settlement tx, and the tickets it bought."
    }
    gallery_plan_tourAction

    Propose a guided tour: a theme plus ordered stops (artwork title/id, your docent note, optional spotlight region). Groups stops by room, prices the doors, and shows the itinerary to the visitor — who can reorder or drop stops before you start_tour.

    View tool JSON
    {
      "name": "gallery_plan_tour",
      "kind": "act",
      "impl": "imperative",
      "description": "Propose a guided tour: a theme plus ordered stops (artwork title/id, your docent note, optional spotlight region). Groups stops by room, prices the doors, and shows the itinerary to the visitor — who can reorder or drop stops before you start_tour.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "theme": {
            "type": "string",
            "description": "Tour title, e.g. \"Light and weather\" or \"Ten minutes of Vermeer\"."
          },
          "stops": {
            "type": "array",
            "description": "Ordered {artwork, note, spotlight?}. spotlight is {x,y,w,h} as fractions of the image. Titles from list_artworks.",
            "items": {
              "type": "object",
              "properties": {
                "artwork": {
                  "type": "string",
                  "description": "Artwork title or id from list_artworks."
                },
                "note": {
                  "type": "string",
                  "description": "Your docent note for this stop."
                },
                "spotlight": {
                  "type": "object",
                  "description": "Optional detail to zoom into, as fractions of the image.",
                  "properties": {
                    "x": {
                      "type": "number"
                    },
                    "y": {
                      "type": "number"
                    },
                    "w": {
                      "type": "number"
                    },
                    "h": {
                      "type": "number"
                    }
                  }
                }
              },
              "required": [
                "artwork"
              ]
            }
          }
        },
        "required": [
          "theme",
          "stops"
        ]
      }
    }
    gallery_take_tourAction

    Load one of the museum’s own guided tours by id (list_wings shows them, with themes and how long each takes). This loads the whole itinerary — do NOT follow it with plan_tour; go straight to start_tour, which buys the doors and walks to stop 1.

    View tool JSON
    {
      "name": "gallery_take_tour",
      "kind": "act",
      "impl": "imperative",
      "description": "Load one of the museum’s own guided tours by id (list_wings shows them, with themes and how long each takes). This loads the whole itinerary — do NOT follow it with plan_tour; go straight to start_tour, which buys the doors and walks to stop 1.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "tour": {
            "type": "string",
            "description": "Tour id from list_wings, e.g. \"light\".",
            "enum": [
              "light",
              "faces",
              "water"
            ]
          }
        },
        "required": [
          "tour"
        ]
      }
    }
    gallery_compareAction

    Hang two works side by side (titles or ids). Both rooms need tickets — the error tells you which to buy. Any walk or view_artwork returns to a single wall.

    View tool JSON
    {
      "name": "gallery_compare",
      "kind": "act",
      "impl": "imperative",
      "description": "Hang two works side by side (titles or ids). Both rooms need tickets — the error tells you which to buy. Any walk or view_artwork returns to a single wall.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "a": {
            "type": "string",
            "description": "First artwork (title or id)."
          },
          "b": {
            "type": "string",
            "description": "Second artwork (title or id)."
          }
        },
        "required": [
          "a",
          "b"
        ]
      }
    }
    gallery_whos_hereAction

    Who has been admitted recently: wing, price paid, payer, settlement tx. Live from the box office.

    View tool JSON
    {
      "name": "gallery_whos_here",
      "kind": "act",
      "impl": "imperative",
      "description": "Who has been admitted recently: wing, price paid, payer, settlement tx. Live from the box office."
    }