Viator Mcp

io.github.chrischall由 GitHub 帳號 chrischall 發布v2.2.0更新於 Nov 5, 2026

Search Viator tours and activities — products, availability, attractions, destinations.

概覽

AI 產生的概覽

面向 Viator Partner API 的本機 MCP 伺服器,讓助理搜尋旅遊行程、活動、景點與目的地,並查詢可售時段與價格。

可以做什麼
  • 依目的地、標籤、價格、日期、評分與時長篩選,或以自由文字搜尋行程與體驗
  • 讀取單一產品的完整資訊,包括行程安排、包含與不包含項目、產品選項、取消政策與預訂連結
  • 瀏覽景點與目的地,並把位置參照解析為名稱、地址與座標
  • 查詢可售時段表與各年齡層價格,並以匯率換算供應商貨幣價格
  • 列出產品標籤,並執行健康檢查以確認 API 金鑰與連線狀態
適用情境
適合讓助理研究與比較 Viator 上的旅遊行程與體驗、查看某個目的地有哪些可參加的活動,或在引導使用者前往 viator.com 預訂前核對時段與價格。
執行需求
透過 npx 在本機執行(需要 Node.js)。需在 VIATOR_API_KEY 提供 Viator Partner API 金鑰,可從免費的 Basic Access 聯盟註冊取得。選用變數可設定 API 主機(含沙箱)、回應語言與快取時間。需要連線至 Viator API 的網路。
安裝前請注意
API 金鑰屬於憑證並會傳送給 Viator,請勿寫入共用設定。回傳結果含帶聯盟識別的預訂連結,實際預訂與付款在 viator.com 完成,不經過此伺服器。價格以供應商貨幣計價,引用前應先換算。README 說明本專案由 AI 開發,請自行斟酌使用。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Viator Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

viator-mcp

[npm]

MCP server for the Viator Partner API (v2) — search tours, activities and experiences for Claude. Search the catalog with structured filters or free text, get product details and availability schedules, browse attractions and destinations, all over stdio.

Developed and maintained by AI (Claude Code). Use at your own discretion.

Quick start

json
{  "mcpServers": {    "viator": {      "command": "npx",      "args": ["-y", "@chrischall/viator-mcp"],      "env": { "VIATOR_API_KEY": "your-viator-partner-api-key" }    }  }}

Get a key by signing up as a Viator affiliate at partnerresources.viator.com — the Basic Access tier is free. This server targets that tier: read-only search/content/availability; no booking endpoints (product results carry a productUrl for booking on viator.com, tagged with your affiliate id).

Tools

AreaTools
Productsvt_search_products, vt_get_product, vt_list_product_tags
Searchvt_search_freetext
Attractionsvt_search_attractions, vt_get_attraction
Availabilityvt_get_availability_schedule
Referencevt_list_destinations, vt_get_locations, vt_get_exchange_rates
Healthvt_healthcheck — is this connector working? Reports whether VIATOR_API_KEY resolved, whether Viator accepted it, and what to fix. Start here when another tool fails: an empty result can mean "no products" or "never authenticated".

All tools are read-only. vt_search_products and vt_search_freetext accept compact: true for slim summaries (code, title, price, rating, booking URL) instead of full records.

Environment

VariableRequiredDescription
VIATOR_API_KEYyesViator Partner API key (sent as exp-api-key)
VIATOR_API_BASE_URLnoAPI host (default production; set https://api.sandbox.viator.com/partner for a sandbox key)
VIATOR_LANGUAGEnoAccept-Language for response text (default en-US)
VIATOR_CACHE_TTLnoSeconds to cache identical reads (default 60; 0 disables)
VIATOR_STATIC_CACHE_TTLnoSeconds to cache reference data — destinations, tags, locations, exchange rates (default 3600)

Viator rate-limits per endpoint on a rolling 10-second window and answers 429/503 with Retry-After; the client honors it (one retry) and the response cache absorbs repeated identical calls.

Development

bash
npm installnpm test          # vitest; no real network callsnpm run build     # tsc + esbuild bundle

The API surface this server is coded against is pinned in docs/VIATOR-API.md.

License

MIT

來源:README.md,提交 606ee4d

工具

11

vt_search_products

Search Viator tours, activities and experiences with structured filters (destination, tags, price, dates, rating, duration). Returns product summaries with pricing and booking URLs. Use vt_list_destinations to find destination ids and vt_list_product_tags for tag ids.

輸入參數sorttagsviewcountflagsorderstartcurrencyend_datemax_ratingmin_ratingstart_date另有 6 個

vt_get_product

Get full details for one Viator product by product code — description, inclusions/exclusions, itinerary, product options, cancellation policy, booking URL, review summary.

輸入參數viewproduct_code必填campaign_value

vt_list_product_tags

List all Viator product tags (tag id → names in every locale, with parent-tag hierarchy). Use tag ids to filter vt_search_products. Reference data — cached.

輸入參數view

vt_search_attractions

List attractions (landmarks, museums, points of interest) in a Viator destination, including the product codes mapped to each attraction. Use vt_list_destinations to find destination ids.

輸入參數sortviewcountstartcampaign_valuedestination_id必填

vt_get_attraction

Get details for one Viator attraction by id — name, destination, opening hours, review summary, mapped product codes, and the attraction URL.

輸入參數viewattraction_id必填campaign_value

vt_get_availability_schedule

Get the availability schedule and pricing for a Viator product — seasons, days of week, start times, unavailable dates, and per-age-band pricing for every product option. NOTE: prices are in the SUPPLIER's currency (see the currency field); convert with vt_get_exchange_rates.

輸入參數viewproduct_code必填

vt_search_freetext

Free-text search across Viator products, attractions, and destinations (e.g. "colosseum underground tour"). The fastest way to find things when you don't have a destination id yet.

輸入參數sortviewcountorderstartcurrencyend_datemax_pricemin_pricemin_ratingstart_datedestination另有 3 個

vt_list_destinations

List every Viator destination (cities, regions, countries) with ids, parent hierarchy, IATA codes, time zones, and coordinates. Use the destinationId with vt_search_products / vt_search_attractions. Reference data — cached.

輸入參數viewcampaign_value

vt_get_locations

Resolve Viator location references (e.g. "LOC-...", meeting points, pickup points from product details) to names, addresses, and coordinates. Up to 500 references per call. Reference data — cached.

輸入參數viewlocation_refs必填

vt_get_exchange_rates

Get exchange rates between currencies Viator supports — needed to convert supplier-currency prices from vt_get_availability_schedule. Reference data — cached.

輸入參數viewsource_currenciestarget_currencies

vt_healthcheck

Verify credentials and upstream reachability

Resolves the credential the way real tools do, then makes one authenticated request to api.viator.com. Reports which source supplied the credential, whether api.viator.com accepted it, the round-trip time, and a plain-English hint distinguishing 'no credential' from 'credential rejected' from 'a api.viator.com-side problem'. Read-only; never returns the credential itself. Call this when a real tool fails and you want to know which hop broke.

無需輸入參數。

版本歷史

14
  1. v2.2.0最新Nov 4, 2026
  2. v2.1.10Oct 17, 2026
  3. v2.1.9Oct 16, 2026
  4. v2.1.8Oct 10, 2026
  5. v2.1.7Oct 7, 2026
  6. v2.1.6Oct 5, 2026
  7. v2.1.5Oct 3, 2026
  8. v2.1.4Sep 30, 2026
  9. v2.1.3Sep 25, 2026
  10. v2.1.2Sep 23, 2026
  11. v2.1.1Sep 23, 2026
  12. v2.1.0Sep 20, 2026
  13. v2.0.0Sep 19, 2026
  14. v1.2.2Sep 16, 2026

評分

已滿足適用檢查項的 80%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。