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

@naotaka/mcp-har-server

v0.1.1

Published

An MCP server that parses HAR files and returns requests in a simplified format

Readme

MCP HAR Server

A Model Context Protocol (MCP) server that parses HAR (HTTP Archive) files and displays requests in a simplified format. This tool is designed to be used with AI assistants through the MCP protocol.

Features

  • Parse HAR files and extract request/response information
  • Display requests with hash identifiers for easy reference
  • Toggle query parameter visibility
  • Filter requests by status code, method, URL pattern, or exclude specific domains
  • View detailed headers and body information for specific requests
  • List unique domains from HAR files to help with filtering

Available Tools

har_viewer

Displays HAR file requests in a simplified format with hash identifiers. Includes filtering options to narrow down results.

har_detail

Provides detailed information about specific HAR file entries including headers and request/response bodies. Uses hash identifiers to reference specific requests.

domain_list

Lists all unique domains found in a HAR file to help reduce output volume and provide filtering options.

Usage with Claude Desktop

To use this server with Claude Desktop, add the following configuration to your claude_desktop_config.json:

The configuration file claude_desktop_config.json is located at: After changing the configuration, please restart Claude Desktop.

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Using npx

{
  "mcpServers": {
    "mcp-har-server": {
      "command": "npx",
      "args": ["-y", "@naotaka/mcp-har-server@latest"]
    }
  }
}

Using build

{
  "mcpServers": {
    "mcp-har-server": {
      "command": "node",
      "args": ["/path/to/mcp-har-server/build/index.js"]
    }
  }
}

Usage

Using the HAR viewer tool

The HAR viewer tool can be accessed through the MCP protocol. Here's an example of how to use it:

// Example usage through MCP protocol
const result = await mcpClient.callTool('har_viewer', {
  filePath: '/path/to/your/file.har',
  showQueryParams: true, // Set to false to hide query parameters
  filter: {
    statusCode: 200, // Optional: Filter by status code
    method: 'GET', // Optional: Filter by HTTP method
    urlPattern: 'api', // Optional: Filter by URL pattern
    excludeDomains: ['cdn.example.com', 'analytics.example.com'], // Optional: Exclude specific domains
  },
});

HAR Viewer Output Example

With showQueryParams: true:

[abc123] 200 GET https://example.com/api/users?page=1&limit=10
[def456] 404 POST https://api.example.org/data/process?format=json&version=2.1
[ghi789] 500 PUT https://service.example.net/update?id=12345&token=abc123

With showQueryParams: false:

[abc123] 200 GET https://example.com/api/users
[def456] 404 POST https://api.example.org/data/process
[ghi789] 500 PUT https://service.example.net/update

Using the HAR Detail tool

The HAR Detail tool allows you to view detailed information about specific requests in a HAR file. You can view headers and optionally body content:

// Example usage through MCP protocol
const result = await mcpClient.callTool('har_detail', {
  filePath: '/path/to/your/file.har',
  hashes: 'abc123', // Single hash or comma-separated list like 'abc123,def456,ghi789'
  showBody: true, // Set to false to hide request/response bodies
});

HAR Detail Output Example

ENTRY [abc123]
=== REQUEST ===
GET https://example.com/api/users?page=1&limit=10

--- Headers ---
Accept: application/json
User-Agent: Mozilla/5.0

=== RESPONSE ===
200 OK

--- Headers ---
Content-Type: application/json
Cache-Control: no-cache

--- Body ---
{
  "users": [
    {
      "id": 1,
      "name": "John Doe"
    },
    {
      "id": 2,
      "name": "Jane Smith"
    }
  ],
  "page": 1,
  "total": 42
}

Using the Domain List tool

The Domain List tool helps you see all unique domains in a HAR file, which is useful for filtering:

// Example usage through MCP protocol
const result = await mcpClient.callTool('domain_list', {
  filePath: '/path/to/your/file.har',
});

Domain List Output Example

example.com
api.example.org
service.example.net
cdn.example.com
analytics.example.com

Development

Installation

# Install dependencies
npm ci

Build and Test

# Build the project
npm run build

# Run tests
npm test

About MCP

This tool uses the Model Context Protocol (MCP), which allows AI assistants to interact with external tools and services. Learn more about MCP at https://github.com/modelcontextprotocol/typescript-sdk.

License

MIT