io.github.chrischall/viator-mcp
Search Viator tours and activities — products, availability, attractions, destinations.
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
@chrischall/viator-mcpclaude mcp add viator-mcp -e 'VIATOR_API_KEY=<your viator_api_key>' -e 'VIATOR_API_BASE_URL=<VIATOR_API_BASE_URL>' -e 'VIATOR_LANGUAGE=<VIATOR_LANGUAGE>' -e 'VIATOR_CACHE_TTL=<VIATOR_CACHE_TTL>' -e 'VIATOR_STATIC_CACHE_TTL=<VIATOR_STATIC_CACHE_TTL>' -- npx -y @chrischall/viator-mcp@2.1.10
{
"mcpServers": {
"viator-mcp": {
"command": "npx",
"args": [
"-y",
"@chrischall/viator-mcp@2.1.10"
],
"env": {
"VIATOR_API_KEY": "<your viator_api_key>",
"VIATOR_API_BASE_URL": "<VIATOR_API_BASE_URL>",
"VIATOR_LANGUAGE": "<VIATOR_LANGUAGE>",
"VIATOR_CACHE_TTL": "<VIATOR_CACHE_TTL>",
"VIATOR_STATIC_CACHE_TTL": "<VIATOR_STATIC_CACHE_TTL>"
}
}
}
}
متغيرات البيئة
VIATOR_API_KEYإلزامي سري Viator Partner API key (exp-api-key) — free Basic Access affiliate signup at partnerresources.viator.comVIATOR_API_BASE_URLAPI host (default production; set https://api.sandbox.viator.com/partner for a sandbox key)VIATOR_LANGUAGEAccept-Language for response text, e.g. en-US, es, fr, de, ja (default en-US)VIATOR_CACHE_TTLSeconds to cache identical read responses (default 60; 0 disables)VIATOR_STATIC_CACHE_TTLSeconds to cache reference data — destinations, tags, locations, rates (default 3600; 0 disables)
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
viator-mcp
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
{
"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
| Area | Tools |
|---|---|
| Products | vt_search_products, vt_get_product, vt_list_product_tags |
| Search | vt_search_freetext |
| Attractions | vt_search_attractions, vt_get_attraction |
| Availability | vt_get_availability_schedule |
| Reference | vt_list_destinations, vt_get_locations, vt_get_exchange_rates |
| Health | vt_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
| Variable | Required | Description |
|---|---|---|
VIATOR_API_KEY | yes | Viator Partner API key (sent as exp-api-key) |
VIATOR_API_BASE_URL | no | API host (default production; set https://api.sandbox.viator.com/partner for a sandbox key) |
VIATOR_LANGUAGE | no | Accept-Language for response text (default en-US) |
VIATOR_CACHE_TTL | no | Seconds to cache identical reads (default 60; 0 disables) |
VIATOR_STATIC_CACHE_TTL | no | Seconds 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
npm install
npm test # vitest; no real network calls
npm run build # tsc + esbuild bundle
The API surface this server is coded against is pinned in docs/VIATOR-API.md.
License
MIT
الأسئلة الشائعة
ما هو io.github.chrischall/viator-mcp؟
Search Viator tours and activities — products, availability, attractions, destinations.
كيف أثبّت io.github.chrischall/viator-mcp؟
يعمل على جهازك. في Claude Code: claude mcp add viator-mcp -e 'VIATOR_API_KEY=<your viator_api_key>' -e 'VIATOR_API_BASE_URL=<VIATOR_API_BASE_URL>' -e 'VIATOR_LANGUAGE=<VIATOR_LANGUAGE>' -e 'VIATOR_CACHE_TTL=<VIATOR_CACHE_TTL>' -e 'VIATOR_STATIC_CACHE_TTL=<VIATOR_STATIC_CACHE_TTL>' -- npx -y @chrischall/viator-mcp@2.1.10. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج io.github.chrischall/viator-mcp إلى مفتاح API؟
نعم. يتطلب VIATOR_API_KEY، وتضبطها في إعداداته.
هل io.github.chrischall/viator-mcp مفتوح المصدر؟
شيفرته علنية على GitHub، لكن المستودع لا يعلن ترخيصًا قياسيًا.
من يصون io.github.chrischall/viator-mcp؟
ينشره chrischall. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.