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

@j222/mcp-proxy-deploy

v0.0.6

Published

Tool for make MCP proxy package

Readme

mcp-npm-proxy

An NPX tool for deploying STDIO-based MCP (Model Context Protocol) servers to a hosted environment while publishing proxy packages to npm.

Overview

When you create a STDIO-based MCP server as an npm package, your source code becomes publicly visible. This tool solves that problem by:

  • Hosting your MCP server privately on a secure server infrastructure
  • Publishing a proxy package to npm that calls your hosted server
  • Keeping your source code private while maintaining npm package compatibility

How It Works

  1. Upload: Your MCP server source code is uploaded to a private hosting service
  2. Build & Deploy: The server builds and deploys your MCP server in a secure environment
  3. Proxy Generation: A proxy npm package is automatically generated and published
  4. Client Connection: Users install your npm package, which proxies requests to your hosted server

Features

  • 🔒 Private Source Code: Keep your MCP server implementation private
  • 📦 NPM Compatibility: Publish as a standard npm package
  • 🚀 Automatic Deployment: Seamless build and deployment process
  • NPM Validation: Validates package permissions and version compatibility
  • 📋 Smart File Detection: Automatically detects necessary files for deployment
  • 🧹 Clean Process: Handles temporary files and cleanup automatically

Installation

npm install -g mcp-npm-tool

Setup

1. Create Environment Configuration

Create a .tool-env file in your project root with the required tokens:

AUTH_TOKEN=your_deployment_auth_token
NPM_TOKEN=your_npm_auth_token

2. Configure NPM Authentication

Create a .npmrc file in your project root:

//registry.npmjs.org/:_authToken=YOUR_NPM_TOKEN_HERE

3. Project Requirements

Your project must have:

  • A valid package.json with a bin field (required for MCP servers)
  • A tsconfig.json or tsconfig.build.json file
  • Source code in directories specified by your TypeScript configuration

Usage

Navigate to your MCP server project directory and run:

npx mcp-npm-tool

Process Flow

  1. 🔍 Environment Validation: Reads authentication tokens from .tool-env
  2. 📦 Package Analysis: Parses package.json and TypeScript configuration
  3. ✅ NPM Validation:
    • Checks if package exists on npm registry
    • Validates version is higher than existing versions
    • Verifies publish permissions
  4. 📋 File Collection: Automatically detects files needed for deployment
  5. 📦 Compression: Creates a zip archive of necessary files
  6. 📤 Upload: Securely uploads to the hosting service
  7. 🧹 Cleanup: Removes temporary files

File Inclusion

The tool automatically includes:

Always Included

  • package.json
  • tsconfig.json or tsconfig.build.json

Source Code (from TypeScript config)

  • Files matching include patterns (default: src/**/*)
  • Excludes files matching exclude patterns

Additional Files (if present)

  • README.md, LICENSE, CHANGELOG.md
  • .npmignore, .gitignore
  • Build configuration files:
    • jest.config.js/ts, webpack.config.js, rollup.config.js
    • vite.config.js/ts, babel.config.js/json, .babelrc
    • eslint.config.js, .eslintrc.js/json
    • prettier.config.js, .prettierrc

Excluded Files

  • dist/**/* (build artifacts)
  • node_modules/**/* (dependencies)
  • .git/**/* (git history)
  • Other temporary files and build outputs

API Endpoint

The tool uploads to: https://package.wildcoder.me/api/upload

Example MCP Server Package Structure

my-mcp-server/
├── package.json          # Must include "bin" field
├── tsconfig.json
├── .tool-env             # AUTH_TOKEN and NPM_TOKEN
├── .npmrc                # NPM authentication
├── src/
│   ├── index.ts          # Your MCP server entry point
│   └── lib/
│       └── handlers.ts   # Your MCP server logic
└── README.md

package.json Requirements

Your package.json must include a bin field for MCP servers:

{
  "name": "my-mcp-server",
  "version": "1.0.0",
  "bin": {
    "my-mcp-server": "./dist/index.js"
  },
  "main": "./dist/index.js",
  "files": ["dist/**/*"],
  "scripts": {
    "build": "tsc",
    "prepublishOnly": "npm run build"
  }
}

Development

# Install dependencies
pnpm install

# Build the tool
pnpm run build

# Test locally
node dist/index.js

Error Handling

The tool provides comprehensive error messages for common issues:

  • Missing authentication tokens
  • Invalid package.json or TypeScript configuration
  • NPM permission issues
  • Version conflicts
  • Network connectivity problems

Security

  • Authentication tokens are never logged or exposed
  • Source code is transmitted securely to the hosting service
  • NPM tokens are validated before any operations

License

ISC