Sorted Travel

travel.sorted由 sorted.travel 发布官方发布者v1.2.0更新于 Nov 7, 2026

Travel ranking, place facts, weather, visa, and profile tools for Sorted Travel.

发布方自己的服务:Sorted Travel Docs

已验证Streamable HTTP可网页运行位置与生活网页搜索与抓取

概览

AI 生成的概览

Sorted Travel 让助手按出发机场对目的地排名,并获取地点信息、天气、签证提示和已保存的旅行者偏好。

可以做什么
  • 把城市、国家、地区或机场解析为 Sorted 目的地标识和 IATA 代码
  • 按出发机场推荐并渲染排名目的地,可选月份、预算、天气、签证和标签筛选
  • 获取并渲染目的地实地信息:简介、安全、货币、电话区号、eSIM 说明和打车应用
  • 获取并渲染当前天气、7 天预报、月度气候和最佳出行时间说明
  • 查询护照国与目的地国之间的签证要求
  • 读取和更新已登录旅行者保存的个人偏好
适用场景
适合旅行者询问去哪里、想比较或了解某个地点、需要天气或最佳出行时间建议,或想了解某本护照的签证难易程度时。也适合需要跨会话记住旅行者出发机场、护照和兴趣的助手。
运行要求
通过 streamable HTTP 连接 sorted.travel 上的远程 MCP 端点,无需本地运行时或安装包。目的地排名、地点信息、天气和签证工具据称免费且无需认证,API 密钥为可选。个人资料读取和更新工具需要带 profile.read 或 profile.write 权限范围的 OAuth 2.0 访问令牌。
安装前请注意
个人资料工具会读取并修改已保存的旅行者数据,如护照、出发机场、货币、单位和收藏列表;更新工具会写入账户。签证结果仅为规划参考,不构成官方移民建议。该服务器明确不搜索或预订航班与活动,并要求助手只引用工具返回的网址。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Sorted Travel,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/travel.sorted%2Fsorted-travel/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "sorted-travel": {
      "type": "http",
      "url": "https://sorted.travel/mcp"
    }
  }
}

README

sorted-travel

[skills.sh]

Official Python, JavaScript, Go, and Ruby SDK and CLI for the Sorted Travel REST API.

This repository publishes:

This is a stdlib-only Python client and a zero-dependency JavaScript client for the public endpoints at https://sorted.travel. Destination ranking, facts, weather, and visa tools are a free tier with zero-auth access. An API key is optional.

Agent skills (skills.sh)

Install Sorted Travel agent skills for Cursor, Claude Code, Codex, and other supported agents:

sh
npx skills add a-l-e-x-k/sorted-travel-sdk

Non-interactive install for Cursor:

sh
npx skills add a-l-e-x-k/sorted-travel-sdk -y -a cursor

Install one capability area:

sh
npx skills add a-l-e-x-k/sorted-travel-sdk --skill sorted-travel-weather
SkillUse when
sorted-travelWhere to go / ranked recommendations
sorted-travel-destinationsPlace facts for a named destination
sorted-travel-weatherForecast, climate, best months
sorted-travel-visaPassport visa hassle

They teach agents when to use Sorted Travel, how to connect the product MCP at https://sorted.travel/mcp and the docs MCP at https://sorted.travel/docs/mcp, and which tools to call. Groupings: skills.sh.json.

Connect MCP directly with mcp.json or Smithery:

sh
npx -y smithery mcp add sorted-travel/destinations

Install SDKs

Python:

sh
pip install sorted-travel

JavaScript:

sh
npm install sorted-travel

Go:

sh
go get github.com/a-l-e-x-k/sorted-travel-sdk/[email protected]

Ruby:

sh
gem install sorted-travel

Quickstart (Python)

python
from sorted_travel import Client
client = Client()print(client.status())page = client.list_destinations(limit=20)print(page["data"][0]["handle"], page["has_more"])

Destination tools need no key. If a host still requires one:

python
client = Client(api_key="st_sandbox_...")  # or set SORTED_TRAVEL_API_KEY

Self-serve sandbox keys:

python
payload = client.create_api_key()

Quickstart (JavaScript)

js
import { Client } from "sorted-travel"
const client = new Client()await client.status()await client.listDestinations({ limit: 20 })

Quickstart (Go)

go
import (	"context"
	"github.com/a-l-e-x-k/sorted-travel-sdk/go/sortedtravel")
client := sortedtravel.NewClient()client.Status(context.Background())limit := 20client.ListDestinations(context.Background(), nil, &limit)

Quickstart (Ruby)

ruby
require "sorted_travel"
client = SortedTravel::Client.newclient.statusclient.list_destinations(limit: 20)

CLI

sh
sorted-travel statussorted-travel destinations --limit 5sorted-travel sandboxsorted-travel api-key

JavaScript CLI via npm:

sh
npx sorted-travel status

Go CLI:

sh
go run ./go/cmd/sorted-travel status

Ruby CLI:

sh
sorted-travel status

Configuration

Constructor argEnvironment variableDefault
api_keySORTED_TRAVEL_API_KEY—
base_urlSORTED_TRAVEL_BASE_URLhttps://sorted.travel
timeout—30.0 seconds

Surface

  • status() — GET /api/v1/status
  • list_destinations(cursor=, limit=) — GET /api/v1/destinations
  • create_api_key() — POST /api/v1/api-keys
  • sandbox() — GET /sandbox
  • create_job(operation, **body) — POST /api/v1/jobs
  • get_job(job_id) — GET /api/v1/jobs/{job_id}
  • get(path, params=) / post(path, body=) — raw REST escape hatch

Interactive ranking, weather, and visa still go through MCP at https://sorted.travel/mcp. These SDK packages do not wrap JSON-RPC.

License

MIT. The Sorted Travel product remains under its own terms at https://sorted.travel/terms.

来源:README.md,提交 100f017

工具

10

resolve_destination

Resolve a destination

Resolve a city, country, region, or airport onto Sorted destinations. Use this when the traveler names a place and you do not already have a sitemap handle (paris, hanoi) or IATA code. Returns handle, name, country, airport_code, and place_url for a few live matches. After resolve: for generic info / what a place is like, call get_destination_info (not weather). Call get_destination_weather only when they asked for weather, forecast, climate, or when to visit. For where-to-go ranking, call get_recommended_destinations with airport_code. One place per call. Do not invent a handle.

输入参数query必填page_size

get_destination_info

Get destination facts

Get Sorted on-the-ground facts for one destination handle. Default tool for generic destination info ("info on Dubai", "tell me about Lisbon", "what is Tokyo like"). Returns brief, safety, currency, phone code, eSIM notes, and taxi apps. Use a sitemap handle such as hanoi, paris, or tokyo. If you only have a city, country, or airport name, call resolve_destination first. Do not use get_destination_weather for those generic info asks. Use get_destination_weather only when the traveler explicitly asks for current weather, a 7-day forecast, monthly climate, or when to visit. Send the traveler to place_url for the full page. Do not use this for bookings. This tool returns data only. After a successful call, always call render_destination_info so the place card appears.

输入参数destination_handle必填

render_destination_info

Render destination facts

Render the destination facts card. Always call get_destination_info first, then pass its structuredContent here. Do not invent destination facts.

输入参数destination必填

get_destination_weather

Get destination weather

Get current weather, forecast, climate, and when-to-visit notes for one place. Use when the traveler explicitly asks for current weather, a 7-day forecast, monthly climate averages, or when to visit a named destination. Do not use this for generic destination info ("info on Dubai", "tell me about Lisbon", "what is Tokyo like") — use get_destination_info instead. This tool already includes seasonal when-to-visit months; do not look for a separate when-to-visit tool. Use a sitemap handle such as hanoi, paris, or tokyo. If you only have a city, country, or airport name, call resolve_destination first. The 7-day forecast is from Foreca; credit Foreca if you paraphrase it. Send the traveler to place_url for the full page. Do not use this for bookings. This tool returns data only. After a successful call, always call render_destination_weather so the weather card appears.

输入参数destination_handle必填

render_destination_weather

Render destination weather

Render the destination weather card. Always call get_destination_weather first, then pass its structuredContent here. Do not invent weather data.

输入参数destination必填

check_visa_requirements

Check visa requirements

Check visa hassle for a passport country and destination country. Use visa-table country names (Ireland, not Irish; USA, not United States). Common aliases are accepted and normalized. This is planning context, not official immigration advice. Cite only place_url or source_url from this result (sorted.travel only — never invent domains).

输入参数user_visaspassport_country必填destination_handledestination_country必填

get_profile_preferences

Get profile preferences

Read the signed-in traveler's saved Sorted profile preferences. Requires an OAuth 2.0 access token with the profile.read scope. Returns passports, home airport, currency, units, destination and activity interests, preferred airlines, and bookmark or ignore lists. Does not return chat history or account-deletion controls. Intentionally omitted from OpenAI/ChatGPT tools/list while should_list_profile_preference_tools is false. Ora and other hosts still see the tool; implementation and OAuth gating stay.

无需输入参数。

update_profile_preferences

Update profile preferences

Update one saved traveler profile preference for the signed-in user. Requires an OAuth 2.0 access token with the profile.write scope. Allowed fields: currency, units, sourceAirportCode, passports, visas, passportHolder, airlines, destinationInterests, activityInterests, lists.bookmarked, and lists.ignored. This cannot delete the account, unlink messengers, or change email. Intentionally omitted from OpenAI/ChatGPT tools/list while should_list_profile_preference_tools is false. Ora and other hosts still see the tool; implementation and OAuth gating stay.

输入参数operation必填field_name必填field_value必填

版本历史

1
  1. v1.2.0最新Nov 7, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Sorted 集成