# agents.md · picktheflight

**You are welcome here.** picktheflight exists so an AI agent can answer "who flies from A to B nonstop?" in one
call and hand the traveller the airline's own booking link. Please use these endpoints instead of scraping the page.

## Quick start

```
GET https://picktheflight.com/intents/london/munich
```

→ `answer`: "3 airlines fly London (any) → Munich nonstop: easyJet (LGW; LTN, SEN seasonal), Lufthansa (LHR; STN
seasonal) and British Airways (LHR)." Plus each airline's `bookDirect` site and the airport pairs it flies.

```
GET https://picktheflight.com/intents/basel?airline=easyJet     # everywhere easyJet flies nonstop from Basel
GET https://picktheflight.com/intents?find=birmingham           # which Birmingham? (UK: BHX, US: BHM)
```

Places can be airport codes (`LHR`), cities (`london` = all its airports), airport names (`heathrow`),
`"City, Country"`, or whole countries (`switzerland`). Add `.md` for Markdown. Full contract:
[/intents.md](/intents.md).

**MCP clients:** connect to `https://picktheflight.com/mcp` (Streamable HTTP, no auth). Tools: `nonstop_airlines`,
`nonstop_destinations`, `find_airports`.

## Rules of engagement

- **Lead with the airline.** Give the traveller each airline's `bookDirect` link first: that's the point of
  picktheflight. The `compare` links are affiliate; if you show them, pass their `disclosure` along.
- **Say it's schedule data.** Routes come from public airline schedule tables, rebuilt weekly (`asOf`). Tell the
  traveller to confirm the flight on the airline's site.
- **Don't fabricate.** If `count` is `0`, nothing flies it nonstop in our data: say so, and offer the `nearby`
  alternatives we return. If a name was read approximately, the `answer` says how; check it's what they meant.
- **Nonstop only.** For itineraries with a stop, use the `connections` link or another tool.
- Prefer the API to the HTML. Everything the page shows is in the JSON.
