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 🙏

© 2025 – Pkg Stats / Ryan Hefner

navifare-mcp

v0.1.5

Published

**Version**: 0.1.5

Readme

Navifare MCP Server

Version: 0.1.5

Navifare finds a better price for a specific flight the user already found. Users should provide flight details conversationally, which will be structured into the required format.

Overview

This MCP server wraps the Navifare REST API as MCP tools for flight price comparison. It enables AI assistants like Claude to help users find better prices for flights they've already discovered.

MCP Endpoint

  • Production: https://mcp.navifare.com/mcp
  • Documentation: https://www.navifare.com/mcp (Auto-updates from the MCP endpoint)
  • Learn more about MCP: Model Context Protocol

Tools

format_flight_pricecheck_request

Title: Format Flight Request

Parse and format flight details from natural language text or transcribed image content. Extracts flight information (airlines, flight numbers, dates, airports, prices) and structures it for price comparison. Returns formatted flight data ready for flight_pricecheck, or requests missing information if incomplete.

Annotations:

  • readOnlyHint: true - Tool only formats/parses data, no external calls
  • destructiveHint: false - Tool does not modify or delete data

Input Schema:

  • user_request (required): Flight details in natural language text. Include all available information: flight numbers, airlines, departure/arrival airports and times, dates, prices, passenger counts, and travel class.

Example Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "format_flight_pricecheck_request",
    "arguments": {
      "user_request": "I found an Aeroitalia flight XZ2020 from FCO to MXP leaving tomorrow at 19.31 and returning with XZ2021 MXP to FCO next Friday at 10.11. 1 adult, economy, the best fare was 221 EUR"
    }
  }
}

flight_pricecheck

Title: Flight Price Check

Search multiple booking sources to find better prices for a specific flight the user has already found. Compares prices across different booking platforms to find cheaper alternatives for the exact same flight details.

Annotations:

  • readOnlyHint: false - Tool performs searches and may trigger external API calls
  • destructiveHint: false - Tool does not modify or delete data

Input Schema:

  • trip (required): Flight trip details including segments, passengers, and travel class
    • legs (required): Array of flight legs (one for outbound, one for return in round trips)
    • travelClass (required): ECONOMY, PREMIUM_ECONOMY, BUSINESS, or FIRST
    • adults (required): Number of adult passengers (minimum: 1)
    • children (required): Number of child passengers (minimum: 0)
    • infantsInSeat (required): Number of infants requiring a seat (minimum: 0)
    • infantsOnLap (required): Number of infants on lap (minimum: 0)
  • source (required): Source identifier for the query (e.g., "Claude", "MCP", "ChatGPT")
  • price (required): Reference price found by the user (e.g., "84.00", "200.50")
  • currency (required): Three-letter ISO currency code (e.g., "EUR", "USD", "GBP")
  • location (required): Two-letter ISO country code for user location (e.g., "ES", "IT", "US"). If unsure, default to "ZZ"

Example Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "flight_pricecheck",
    "arguments": {
      "trip": {
        "legs": [
          {
            "segments": [
              {
                "airline": "XZ",
                "flightNumber": "2020",
                "departureAirport": "MXP",
                "arrivalAirport": "FCO",
                "departureDate": "2025-12-16",
                "departureTime": "07:10",
                "arrivalTime": "08:25",
                "plusDays": 0
              }
            ]
          }
        ],
        "travelClass": "ECONOMY",
        "adults": 1,
        "children": 0,
        "infantsInSeat": 0,
        "infantsOnLap": 0
      },
      "source": "MCP",
      "price": "84",
      "currency": "EUR",
      "location": "IT"
    }
  }
}

Revenue Share

Revenue share available for qualified partners!

Earn commission on flight bookings made through your integration. Revenue share available for qualified partners.

Compliance

This server complies with Anthropic's MCP Directory Policy. See docs/COMPLIANCE.md for details.

Privacy Policy and Terms of Service: https://navifare.com/terms
Contact: [email protected]
Privacy Inquiries: [email protected]

Environment Variables

The only environment variable you typically need to document for this MCP server is:

  • GEMINI_API_KEY (required): Google Gemini API key for natural language parsing (used when your integration relies on Gemini for text/image understanding).

Examples

See docs/USAGE_EXAMPLES.md for complete usage examples with detailed workflows.

Documentation

Most documentation is in the docs/ directory (and a few files like this README.md and REPOSITORY_STRUCTURE.md live at the repo root):

Getting Started

Reference

Additional Guides

Testing

Test files are located in the test/ directory. See test/README.md for details about available tests.

Running Tests

# Test with MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.js

# Run specific test
node test/test-mcp.js

Scripts

Helper scripts are in the scripts/ directory:

  • scripts/start-local.sh - Start local development server
  • scripts/deploy-to-render.sh - Prepare for Render deployment
  • scripts/start-servers.sh - Start multiple servers
  • scripts/stop-servers.sh - Stop running servers

Repository Structure

navifare-mcp/
├── src/              # TypeScript source code
├── dist/             # Compiled JavaScript (generated)
├── docs/             # Documentation
├── test/             # Test files
├── scripts/          # Helper scripts
└── [config files]    # package.json, Dockerfile, etc.

See REPOSITORY_STRUCTURE.md for detailed structure.

Support

Reference