← WebMCP Directory

Tool tree

nav-webmcp.vercel.app

Travel & EventsTools verified
Website
AgentBridge Booking Demo
Explore capabilities
    exploreAction

    Navigate the platform's module tree. No path → platform overview and top-level modules. Dot-path (e.g. 'reservation.booking') → sub-modules and functions. 'x.*' → all descendants of x. '*' → entire tree. Array of paths → fetch multiple nodes in one call.

    View tool JSON
    {
      "name": "explore",
      "kind": "act",
      "impl": "imperative",
      "description": "Navigate the platform's module tree. No path → platform overview and top-level modules. Dot-path (e.g. 'reservation.booking') → sub-modules and functions. 'x.*' → all descendants of x. '*' → entire tree. Array of paths → fetch multiple nodes in one call.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "path": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ],
            "description": "Module path(s). Omit for platform overview. Supports dot-paths, wildcards, or arrays."
          }
        },
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    searchAnswer

    Find functions and modules by Linux-style path glob. Patterns match against synthesized 'module/path/functionName' strings. '**' crosses segment boundaries; '*' matches within one segment; '?' matches one char. A bare keyword (no metachar, no slash) is treated as '**/*keyword*'. Use search() when you know *what* you need but not *where* in the tree it lives. Use explore() when you want to navigate a known module path.

    View tool JSON
    {
      "name": "search",
      "kind": "answer",
      "impl": "imperative",
      "description": "Find functions and modules by Linux-style path glob. Patterns match against synthesized 'module/path/functionName' strings. '**' crosses segment boundaries; '*' matches within one segment; '?' matches one char. A bare keyword (no metachar, no slash) is treated as '**/*keyword*'. Use search() when you know *what* you need but not *where* in the tree it lives. Use explore() when you want to navigate a known module path.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "pattern": {
            "type": "string",
            "minLength": 1,
            "description": "Linux-style glob matched against module/function paths. Examples: \"**/*reservation*\", \"finance/**\", \"*refund*\", or a bare keyword like \"reservation\"."
          }
        },
        "required": [
          "pattern"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    describe_toolAnswer

    Return the full input schema and metadata for one or more functions by name. Use after explore() to get exact parameters before invoking.

    View tool JSON
    {
      "name": "describe_tool",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return the full input schema and metadata for one or more functions by name. Use after explore() to get exact parameters before invoking.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ],
            "description": "Function name or array of names to describe."
          }
        },
        "required": [
          "name"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    invokeAction

    Call a function without loading it (stateless, Path B). Single call: { name, args }. Batch: { calls: [{name, args}] } — reads run in parallel, writes run in order.

    View tool JSON
    {
      "name": "invoke",
      "kind": "act",
      "impl": "imperative",
      "description": "Call a function without loading it (stateless, Path B). Single call: { name, args }. Batch: { calls: [{name, args}] } — reads run in parallel, writes run in order.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Function name (single-call form)"
          },
          "args": {
            "type": "object",
            "additionalProperties": {},
            "description": "Arguments (single-call form)"
          },
          "calls": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Operation name"
                },
                "args": {
                  "type": "object",
                  "additionalProperties": {},
                  "default": {},
                  "description": "Arguments for the operation"
                },
                "parallelSafe": {
                  "type": "boolean",
                  "description": "Override parallel-safety for this call"
                }
              },
              "required": [
                "name"
              ],
              "additionalProperties": false
            },
            "description": "Batch calls (use this or name+args, not both)"
          }
        },
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    load_toolsAction

    Promote functions to native MCP tools so they appear in tools/list with full schemas (Path A). Use when you'll call the same functions repeatedly. After calling, re-fetch tools/list.

    View tool JSON
    {
      "name": "load_tools",
      "kind": "act",
      "impl": "imperative",
      "description": "Promote functions to native MCP tools so they appear in tools/list with full schemas (Path A). Use when you'll call the same functions repeatedly. After calling, re-fetch tools/list.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "names": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "minItems": 1,
            "description": "Function names to promote to native tools"
          }
        },
        "required": [
          "names"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    unload_toolsAction

    Remove previously promoted functions from the native tool list. After calling, re-fetch tools/list to confirm removal.

    View tool JSON
    {
      "name": "unload_tools",
      "kind": "act",
      "impl": "imperative",
      "description": "Remove previously promoted functions from the native tool list. After calling, re-fetch tools/list to confirm removal.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "names": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "minItems": 1,
            "description": "Function names to remove from native tools"
          }
        },
        "required": [
          "names"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    getContextAnswer

    Return current application context: page name, auth status, locale.

    View tool JSON
    {
      "name": "getContext",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return current application context: page name, auth status, locale.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    getCapabilitiesAnswer

    Return the list of tools available to the caller's role, along with protocolVersion (semver of the protocol contract, same for every role) and capabilityHash (8-hex content hash of THIS role's tool set). Cache the manifest keyed on both; re-fetch when either changes.

    View tool JSON
    {
      "name": "getCapabilities",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return the list of tools available to the caller's role, along with protocolVersion (semver of the protocol contract, same for every role) and capabilityHash (8-hex content hash of THIS role's tool set). Cache the manifest keyed on both; re-fetch when either changes.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    searchAvailabilityAnswer

    Search available booking slots for a given date and party size. Returns a list of open time slots.

    View tool JSON
    {
      "name": "searchAvailability",
      "kind": "answer",
      "impl": "imperative",
      "description": "Search available booking slots for a given date and party size. Returns a list of open time slots.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "description": "Date to search in YYYY-MM-DD format"
          },
          "partySize": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "description": "Number of people in the party"
          }
        },
        "required": [
          "date",
          "partySize"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    createReservationSensitive Action

    Book a specific available slot. Requires a slotId from searchAvailability, the guest name, and party size.

    View tool JSON
    {
      "name": "createReservation",
      "kind": "transact",
      "impl": "imperative",
      "description": "Book a specific available slot. Requires a slotId from searchAvailability, the guest name, and party size.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "slotId": {
            "type": "string",
            "description": "ID of the slot to book, from searchAvailability"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "description": "Guest name for the reservation"
          },
          "partySize": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "description": "Number of people in the party"
          }
        },
        "required": [
          "slotId",
          "name",
          "partySize"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    cancelReservationSensitive Action

    Cancel an existing reservation by ID. This is a destructive action — confirmation is required. When calling via MCP, you MUST pass confirm: true to acknowledge the cancellation.

    View tool JSON
    {
      "name": "cancelReservation",
      "kind": "transact",
      "impl": "imperative",
      "description": "Cancel an existing reservation by ID. This is a destructive action — confirmation is required. When calling via MCP, you MUST pass confirm: true to acknowledge the cancellation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "reservationId": {
            "type": "string",
            "description": "ID of the reservation to cancel"
          },
          "confirm": {
            "type": "boolean",
            "description": "Must be true to confirm cancellation. Pass confirm: true to proceed."
          }
        },
        "required": [
          "reservationId",
          "confirm"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    listReservationsAnswer

    Return all current reservations.

    View tool JSON
    {
      "name": "listReservations",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return all current reservations.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    getReservationAnswer

    Look up a specific reservation by ID.

    View tool JSON
    {
      "name": "getReservation",
      "kind": "answer",
      "impl": "imperative",
      "description": "Look up a specific reservation by ID.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "reservationId": {
            "type": "string",
            "description": "ID of the reservation to retrieve"
          }
        },
        "required": [
          "reservationId"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    bookSensitive Action

    Book a table in ONE step: finds the matching open slot for the date and time, reserves it, and validates the booking. Prefer this over calling searchAvailability + createReservation separately.

    View tool JSON
    {
      "name": "book",
      "kind": "transact",
      "impl": "imperative",
      "description": "Book a table in ONE step: finds the matching open slot for the date and time, reserves it, and validates the booking. Prefer this over calling searchAvailability + createReservation separately.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "description": "Date in YYYY-MM-DD format"
          },
          "time": {
            "type": "string",
            "description": "Desired time slot, e.g. '18:00'"
          },
          "partySize": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "description": "Number of guests (1–20)"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "description": "Guest name for the reservation"
          }
        },
        "required": [
          "date",
          "time",
          "partySize",
          "name"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    getGuestPreferencesAnswer

    Retrieve dining preferences and dietary restrictions for a guest.

    View tool JSON
    {
      "name": "getGuestPreferences",
      "kind": "answer",
      "impl": "imperative",
      "description": "Retrieve dining preferences and dietary restrictions for a guest.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "guestId": {
            "type": "string",
            "description": "The unique guest identifier"
          }
        },
        "required": [
          "guestId"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    updateGuestPreferencesAction

    Update dietary restrictions, seating preferences, and special notes for a guest.

    View tool JSON
    {
      "name": "updateGuestPreferences",
      "kind": "act",
      "impl": "imperative",
      "description": "Update dietary restrictions, seating preferences, and special notes for a guest.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "guestId": {
            "type": "string",
            "description": "The unique guest identifier"
          },
          "dietaryRestrictions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of dietary restrictions or allergies"
          },
          "seatingPreference": {
            "type": "string",
            "description": "Preferred seating area (e.g. window, booth, outdoor)"
          },
          "specialNotes": {
            "type": "string",
            "description": "Free-text special notes or requests"
          }
        },
        "required": [
          "guestId"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    getLoyaltyStatusAnswer

    Get loyalty tier, point balance, and redemption history for a guest.

    View tool JSON
    {
      "name": "getLoyaltyStatus",
      "kind": "answer",
      "impl": "imperative",
      "description": "Get loyalty tier, point balance, and redemption history for a guest.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "guestId": {
            "type": "string",
            "description": "The unique guest identifier"
          }
        },
        "required": [
          "guestId"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    getBillSummaryAnswer

    Get the bill summary for a seated reservation.

    View tool JSON
    {
      "name": "getBillSummary",
      "kind": "answer",
      "impl": "imperative",
      "description": "Get the bill summary for a seated reservation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "reservationId": {
            "type": "string",
            "description": "Reservation ID to retrieve bill for"
          }
        },
        "required": [
          "reservationId"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    getWaitTimeAnswer

    Get the current estimated wait time for walk-in guests.

    View tool JSON
    {
      "name": "getWaitTime",
      "kind": "answer",
      "impl": "imperative",
      "description": "Get the current estimated wait time for walk-in guests.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "partySize": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "description": "Number of guests in the walk-in party"
          }
        },
        "required": [
          "partySize"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    getMyTasksAnswer

    List all tasks assigned to the current user.

    View tool JSON
    {
      "name": "getMyTasks",
      "kind": "answer",
      "impl": "imperative",
      "description": "List all tasks assigned to the current user.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }
    completeTaskAction

    Mark a task assigned to the current user as completed.

    View tool JSON
    {
      "name": "completeTask",
      "kind": "act",
      "impl": "imperative",
      "description": "Mark a task assigned to the current user as completed.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "taskId": {
            "type": "string",
            "description": "ID of the task to mark as completed"
          }
        },
        "required": [
          "taskId"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "page": "/"
    }