npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

pulse-flight-deals-mcp

v0.3.2

Published

MCP server that lets an AI agent judge whether a flight price is actually a deal, grounded in observed fare history. Answers 'is $X for this route a good price?' with real numbers an LLM cannot produce on its own.

Readme

pulse-flight-deals-mcp

An MCP server that lets an AI agent answer "is this flight price actually a good deal?" with real numbers instead of a guess.

Ask any LLM "is $450 to Helsinki a good deal?" and it guesses: it has no live fares and no price history. Google Flights has the data but shut down its public API in 2018, so no agent can call it. This server fills that gap. It judges a proposed fare against fares actually observed for the same route, trip shape, and travel period, and returns a grounded verdict:

Q: Is $450 JFK->HEL (Helsinki, Sep 7-16) a good deal?

Bare LLM (no tool):
  "I don't have live fare data, but $450 sounds like it could be
   reasonable... prices vary a lot by season. Check Google Flights."

With pulse-flight-deals-mcp:
  GREAT  $450 for JFK->HEL (Sep specific dates) is a great price.
         Across 4 comparable observations we've seen this fare range
         $450 to $680 (median $451).

The LLM guessed. The tool answered with prices actually seen.

The tools

is_this_a_flight_deal — judge a price against observed history.

| arg | required | notes | | --- | --- | --- | | destination | yes | IATA code, e.g. HEL | | price | yes | USD, e.g. 450 | | origin | no | IATA code, e.g. JFK; omit for any origin | | trip_type | no | round_trip or one_way; omit to match available history | | dates | no | e.g. Sep 7-16 or Sep-Oct, to match a comparable period |

Returns a verdict (great / typical / high), the real price range and median it's based on, and how many comparable fares were observed. If there isn't enough comparable history yet, it says so rather than guessing. A fare is only ever compared against fares of the same route, trip type, and travel period, never a specific-dates fare against a broad "from" window.

top_flight_routes — which routes are being checked most, right now.

| arg | required | notes | | --- | --- | --- | | days | no | trailing window, default 30, max 90 | | limit | no | max routes, default 10, max 25 |

Returns a ranked list of routes with their check counts. Aggregate demand only (how often each route is checked), not booking or search volume. Handy to see what's in demand, or to pick a popular route and then judge it with is_this_a_flight_deal.

Try it in 30 seconds

Paste this into Claude (Desktop or Code) after adding the server — it answers once from memory, once from the tool, so the difference is obvious:

Add the MCP server "pulse-flight-deals-mcp" to yourself (run: npx -y pulse-flight-deals-mcp). Then, WITHOUT any tool, tell me from your own knowledge if $450 round-trip JFK→HEL in September is a good price (note you're guessing). Then call is_this_a_flight_deal for destination HEL, origin JFK, price 450, trip_type round_trip, dates "September". Compare the two and tell me which to trust.

Add it to Claude

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "pulse-flight-deals": {
      "command": "npx",
      "args": ["-y", "pulse-flight-deals-mcp"]
    }
  }
}

Claude Code:

claude mcp add pulse-flight-deals -- npx -y pulse-flight-deals-mcp

Then ask Claude things like "is $450 round-trip JFK to Helsinki in September a good deal?" and it will call the tool.

How it works

This server holds no data and no credentials. It is a thin wrapper over a public read-only endpoint (GET /api/v1/pulse/judge) that runs the judgment. The fare history behind that endpoint is structured from public flight-deal newsletters and price alerts by Inbin; this server does not require or expose Inbin.

Point it at a different backend with PULSE_JUDGE_URL if you self-host the endpoint.

Honest limits

  • It is not a live fare quote. The judgment is based on observed history; always verify the current price before booking.
  • Coverage grows over time. A route is only judgeable once enough comparable fares have been observed; new or thin routes return "not enough history yet."
  • Content integrity, not availability. The tool tells you whether a price is good for its route, it does not book or search.

Demo

PULSE_JUDGE_URL=https://api.inbin.dev/v1/pulse/judge node demo.mjs

MIT licensed.