xcape
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VIATOR_ENV | No | Viator API environment: 'sandbox' or 'production'. Default is 'sandbox'. | sandbox |
| AGENCY_NAME | No | Optional. Agency name for letterhead branding in proposals. | |
| AGENCY_CONTACT | No | Optional. Contact line for agency letterhead. | |
| AGENCY_TAGLINE | No | Optional. Tagline for agency letterhead. | |
| VIATOR_API_KEY | Yes | Required. Viator Partner API v2 key (Basic Access). | |
| AGENCY_CURRENCY | No | Currency code for pricing, e.g., USD. Default is 'USD'. | USD |
| AGENCY_LOGO_URL | No | Optional. URL to agency logo for letterhead. | |
| BRIGHTDATA_API_KEY | No | Optional. Bright Data API key for scraping Booking.com stays. If not set, search_stays returns a setup error; other legs work without it. | |
| GOOGLE_MAPS_API_KEY | Yes | Required. Google Cloud API key with the Places API (New) enabled. | |
| VIATOR_CAMPAIGN_VALUE | No | Optional. Affiliate campaign value appended to activity links for commission tracking. | |
| BRIGHTDATA_BOOKING_DATASET_ID | No | Optional. Dataset ID for the Booking.com listings search scraper on Bright Data. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_staysA | Search vacation stays (hotels/apartments) for a destination and date range via Bright Data's Booking.com listings scraper. Prices are indicative, scraped at quote time. Can take up to 120s; on timeout returns an empty list with a note. |
| search_activitiesA | Search tours and activities for a destination via the Viator Partner API. The party profile maps to Viator tags; results include rating, per-person from-price (converted to the agency currency) and a verbatim Viator productUrl with the affiliate campaign-value appended. |
| get_activity_availabilityA | Check operating schedule and per-person/total pricing for shortlisted Viator product codes on a specific date, using the product's weekly recurring schedule (days of week + blackout dates). Prices are converted to the agency currency. This is schedule-level availability — always re-confirm at booking time. |
| search_diningA | Search restaurants/POIs via Google Places API (New) using pinned, billing-safe field masks. The party profile steers cuisine type and price levels. Attributions are passed through per Google ToS. |
| enrich_placeA | Fetch Google Place Details (website, phone, hours, editorial summary) for one shortlisted place. Billed at a higher tier than search — call only for shortlist entries. |
| build_proposalA | One-shot composite: runs stays + activities + dining searches in parallel, ranks options by profile fit and budget, and returns both structured JSON and a rendered Markdown proposal with a cost breakdown and an indicative-rates disclaimer. A failed provider leg is flagged, not fatal. |
| build_options_pageA | Builds a self-contained interactive HTML options page for a trip: lodging (single-select), airport/hotel transfers, profile-matched experiences, requested day trips, and dining. The agent selects options with the client and clicks 'Generate quote' in the page to produce the final priced, branded quote (print-to-PDF friendly). Lodging comes from Google Places (rate on request); priced options come from Viator. Writes the file to disk and returns its path. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ari-systemics/xcape'
If you have feedback or need assistance with the MCP directory API, please join our Discord server