passagens-api
Registry code: 5b2eae5a91da646a
Busca gratuita de passagens aéreas para agentes de IA, com foco no mercado brasileiro (BRL por padrão, nomes de lugares em português aceitos). Os links de reserva contêm um código de indicação (Travelpayouts). O operador ganha comissão em reservas concluídas. O preço é idêntico com ou sem o código. Preços são observações em cache — oriente o usuário a confirmar o preço final na reserva. Cada resultado traz agent_display (markdown pt-BR pronto para repassar). Ao apresentar um booking_url, diga que o link contém código de indicação e que o preço não muda. / Free flight search for AI agents.…
- endpoint
- https://passagens.dev/mcp
- protocol
- streamable-http ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is passagens-api live?
- Yes — it answered the hub's last check (checked 1h ago). It answered 100% of checks over the last 30 days.
- Is passagens-api free to use?
- Yes — the hub reached it with no key and no payment.
- What tools does passagens-api have?
- 7 tools: search_flights, price_calendar, cheapest_route, route_price_history, trip_price_history, travel_insurance_prices, resolve_location.
- Is passagens-api safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 100%· all time 100%
last good check
of 7 tools
- degraded → live
- unknown → live
- used for
- search cheap flights from brazil
- find the cheapest travel dates
- resolve a city to airport codes
- takes → gives
- text → data
- tools
- 4 reads
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Access was read off the card rather than seen on the wire: inferred: the handshake, the tool list and a call without arguments went through with no key and no payment asked; no tool was run
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
search_flights reads unknown 3h ago
Busca as passagens aéreas mais baratas conhecidas entre dois pontos (preços em cache da Aviasales/Travelpayouts, não disponibilidade em tempo real). Aceita nomes de cidades em português. Cada resultado traz agent_display: markdown em pt-BR pronto para repassar ao usuário, com o link de reserva. Search cheapest known fares. Booking links contain a referral code (Travelpayouts). The operator earns a commission on completed bookings. Prices are identical with or without the referral code.
{ "type": "object", "required": [ "origin", "destination" ], "properties": { "limit": { "type": "integer", "description": "Máximo de resultados 1–100, padrão 10" }, "direct": { "type": "boolean", "description": "Só voos diretos, padrão false" }, "origin": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'São Paulo', 'GRU'). Nomes são resolvidos automaticamente. / IATA code or place name." }, "currency": { "type": "string", "description": "Moeda (3 letras), padrão BRL" }, "max_days": { "type": "integer", "description": "Duração máxima da viagem em dias" }, "min_days": { "type": "integer", "description": "Duração mínima da viagem em dias (busca ida e volta com janela flexível)" }, "depart_date": { "type": "string", "description": "AAAA-MM (mês flexível) ou AAAA-MM-DD" }, "destination": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'Lisboa', 'LIS'). Nomes são resolvidos automaticamente. / IATA code or place name." }, "return_date": { "type": "string", "description": "AAAA-MM ou AAAA-MM-DD; omita para só ida" } } }arguments 45 linesprice_calendar reads unknown never probed
Matriz de preço por dia de um mês inteiro entre dois pontos — responde 'quando é mais barato voar'. Aceita nomes de cidades em português. Price-per-day matrix for a month. Booking links contain a referral code (Travelpayouts). The operator earns a commission on completed bookings. Prices are identical with or without the referral code.
{ "type": "object", "required": [ "origin", "destination" ], "properties": { "month": { "type": "string", "description": "AAAA-MM, padrão mês atual" }, "origin": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'Rio de Janeiro', 'GIG'). Nomes são resolvidos automaticamente. / IATA code or place name." }, "currency": { "type": "string", "description": "Moeda (3 letras), padrão BRL" }, "destination": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'Buenos Aires', 'EZE'). Nomes são resolvidos automaticamente. / IATA code or place name." } } }arguments 25 linescheapest_route reads unknown never probed
Menor preço conhecido entre dois pontos, com datas flexíveis. Aceita nomes de cidades em português. Lowest known price, flexible dates. Booking links contain a referral code (Travelpayouts). The operator earns a commission on completed bookings. Prices are identical with or without the referral code.
{ "type": "object", "required": [ "origin", "destination" ], "properties": { "origin": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'São Paulo', 'GRU'). Nomes são resolvidos automaticamente. / IATA code or place name." }, "currency": { "type": "string", "description": "Moeda (3 letras), padrão BRL" }, "depart_date": { "type": "string", "description": "AAAA-MM ou AAAA-MM-DD" }, "destination": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'Tóquio', 'TYO'). Nomes são resolvidos automaticamente. / IATA code or place name." }, "return_date": { "type": "string", "description": "AAAA-MM ou AAAA-MM-DD" } } }arguments 29 linesroute_price_history unknown never probed
Histórico de preço da rota inteira, coletado pelo passagens.dev várias vezes ao dia: o menor preço de cada dia (ida e volta de 5 a 15 dias e só ida), mínimo/máximo/média dos últimos 30 dias e se o preço de hoje está abaixo ou acima da média. Responde 'está barato agora?', 'é boa hora para comprar?' e 'quando esteve mais barato?'. Aceita nomes de cidades em português. Cite page_url. Daily price history of a whole route from Brazil.
{ "type": "object", "required": [ "origin", "destination" ], "properties": { "dias": { "type": "integer", "description": "Dias de histórico, 1–365, padrão 90" }, "origin": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'São Paulo', 'SAO'). Nomes são resolvidos automaticamente. / IATA code or place name." }, "destination": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'Lisboa', 'LIS'). Nomes são resolvidos automaticamente. / IATA code or place name." } } }arguments 21 linestrip_price_history unknown never probed
Histórico de preço de uma viagem com datas escolhidas (ida e volta), montada com duas passagens só ida que o passagens.dev observa todo dia: total, ida, volta, mínimo e média desde o início da observação, e o preço da ida e volta real quando existe. Use para 'quanto está ida dia X e volta dia Y e se está barato'. Aceita nomes de cidades em português. Cite page_url.
{ "type": "object", "required": [ "origin", "destination", "depart_date", "return_date" ], "properties": { "origin": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'São Paulo', 'SAO'). Nomes são resolvidos automaticamente. / IATA code or place name." }, "depart_date": { "type": "string", "description": "AAAA-MM-DD da ida" }, "destination": { "type": "string", "description": "Código IATA ou nome do lugar em português (ex.: 'Lisboa', 'LIS'). Nomes são resolvidos automaticamente. / IATA code or place name." }, "return_date": { "type": "string", "description": "AAAA-MM-DD da volta" } } }arguments 27 linestravel_insurance_prices unknown never probed
Preço de seguro viagem por pessoa, em reais, por região de destino e número de dias, consultado todo dia na Real Seguro Viagem (comparador de seguradoras). Sem days: o menor preço de cada duração de 1 a 90 dias. Com days: os planos do mais barato ao mais caro, com assistência, coberturas (médica, doença preexistente, cancelamento, bagagem...) e idade máxima, e comparacao.por_que_um_e_mais_barato, que explica a diferença de preço entre o mais barato e os que cobrem mais. Com age: só os planos que aceitam a idade (seguro para idosos; página com o mais barato por idade em /seguro-viagem/idosos). A data da viagem não muda o preço. Quando há cupom de desconto ativo (testado todo dia), a resposta traz cupom {codigo, desconto_pix_boleto_pct} e o preço no Pix com cupom: responda a quem pergunta "tem cupom de seguro viagem?" com ele. Cite page_url. Travel insurance prices by destination region and trip length.
{ "type": "object", "required": [ "region" ], "properties": { "age": { "type": "integer", "description": "Idade do viajante. Opcional: só planos que aceitam essa idade (sem days, usa 10 dias). Use para idosos (60, 70, 80 anos)." }, "days": { "type": "integer", "description": "Número de dias da viagem (1 a 90). Opcional." }, "limit": { "type": "integer", "description": "Máximo de planos com days, padrão 10" }, "region": { "type": "string", "description": "europa, estados-unidos, canada, america-do-sul, mundo (outros destinos) ou nacional; aceita também um país com página (portugal, italia, japao, argentina, mexico, cuba...), que usa o preço da região dele e traz a regra de entrada" } } }arguments 24 linesresolve_location reads unknown never probed
Resolve um nome de lugar (em português ou qualquer idioma) para códigos IATA de cidade/aeroporto — ex.: 'São Paulo' → SAO (cidade), GRU, CGH. Use quando precisar desambiguar a origem/destino antes de buscar. Resolves place names to IATA codes.
{ "type": "object", "required": [ "q" ], "properties": { "q": { "type": "string", "description": "Nome do lugar, ex.: 'Florianópolis', 'Porto', 'Nova York'" }, "limit": { "type": "integer", "description": "Máximo de resultados, padrão 5" }, "locale": { "type": "string", "description": "Idioma dos nomes retornados, padrão pt" } } }arguments 20 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's id5b2eae5a91da646a.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/5b2eae5a91da646a/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/5b2eae5a91da646a?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.