Streamable HTTP
MCP endpoint
https://mcp-demo.farehawk.io/mcpSend MCP protocol requests with a FareHawk API key in the Authorization bearer header.
Agent-native travel decisions
The agent endpoint and web app use the same bounded search, scoring, freshness, and disclosure model. Both are search-only: no booking, payment, or checkout.
Streamable HTTP
https://mcp-demo.farehawk.io/mcpSend MCP protocol requests with a FareHawk API key in the Authorization bearer header.
Custom GPT Actions
https://api-staging-ed85.up.railway.app/apiImport the generated OpenAPI document into a custom GPT Action.
OpenAPI JSONMCP tool reference
search_flightsorigin, destination, depart_date, return_date, adults, child_ages, cabin, max_stops, budget_usd, flexible_dayscompare_planssearch_id, plan_ids (2–3)create_watchsearch_id, trigger, consentlist_watchesNo parametersget_preferencesNo parametersWorks without an API key
curl --request POST 'https://api-staging-ed85.up.railway.app/api/search_flights' \
--header 'content-type: application/json' \
--data '{"origin":"LAX","destination":"LHE","depart_date":"2026-11-05","return_date":"2026-11-26","adults":2,"child_ages":[],"cabin":"economy","max_stops":1,"flexible_days":0}'This public search endpoint is rate-limited and returns current configured Duffel data. Saved watches and preferences require a key.
Claude MCP client
{
"mcpServers": {
"farehawk": {
"type": "http",
"url": "https://mcp-demo.farehawk.io/mcp",
"headers": {
"Authorization": "Bearer YOUR_FAREHAWK_API_KEY"
}
}
}
}Example response shape
Example only: the numeric values below are illustrative documentation, not a fare or availability claim. Runtime prices always come from the configured Duffel response.
{
"search_id": "search_example",
"provider_mode": "live",
"state": "complete",
"plans": [
{
"plan_id": "plan_example",
"known_total": {
"amount_minor": 123400,
"currency": "USD"
},
"per_person_minor": 61700,
"score": 86,
"dimensions": {
"cash": 91,
"friction": 78,
"fit": 88,
"confidence": 90
},
"fresh_at": "2026-09-20T00:00:00.000Z",
"disclosure": "If you book through this link, FareHawk may earn a commission at no extra cost to you."
}
]
}Authentication and limits
Private-beta keys use bearer authentication and grant only the requested search, read, watch, or preference scopes. The public search endpoint and MCP service are limited to 120 requests per minute per client; provider calls are additionally capped per search.