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

midco-mcp

v0.1.2

Published

Midco — MCP context broker lokal (README §15.2). Wrapper npx: unduh binary prebuilt kalau ada, fallback build dari source.

Readme

midco-mcp (npx wrapper)

Paket npm tipis buat jalanin Midco MCP server lewat npx, tanpa perlu clone repo Rust-nya atau pasang toolchain cargo secara manual dulu. Cocok buat orang yang cuma mau pakai server-nya (lihat juga jalur non-npx di README utama §15.1).

Tidak ada dependency npm sama sekali — bin.js cuma pakai Node built-ins (https, fs, child_process, dst), biar wrapper-nya tetap tipis dan gampang diaudit.

Kenapa butuh wrapper ini

Midco MCP server sendiri adalah binary Rust (midco-mcp, lihat README utama). Wrapper ini:

  1. Deteksi OS/arch, coba unduh binary prebuilt yang cocok dari GitHub Releases ke cache lokal (~/.cache/midco-mcp/bin/).
  2. Kalau belum ada release buat platform ini (kondisi hari ini — lihat roadmap §19 di README utama), fallback build dari source: pakai clone repo lokal kalau wrapper ini dijalankan dari dalamnya, atau cargo install --git kalau tidak.
  3. Exec binary yang sudah siap dengan argumen yang kamu kirim.

Jadi kamu tidak perlu tahu apakah binary-nya sudah pernah di-build atau belum — wrapper ini yang urus.

Pemakaian

npx midco-mcp@latest setup   # sekali jalan: config.toml + .mcp.json + ingest awal
npx midco-mcp@latest serve   # start server (README utama §16)

setup dan serve (juga ingest/stats/tokens) adalah subcommand wrapper ini sendiri, bukan diteruskan mentah ke binary Rust — binary midco-mcp sendiri tidak punya subcommand, cuma flag langsung (--db, --config, --no-auth). Kalau kata-kata itu diteruskan apa adanya ke clap, hasilnya error "unexpected argument", jadi wrapper ini yang menerjemahkannya.

| Command | Yang terjadi | |---|---| | npx midco-mcp@latest setup | Di direktori kerja saat ini: bikin config.toml (default, README §15) dan .mcp.json (arah ke http://127.0.0.1:8766/mcp) kalau belum ada, lalu jalankan ingest --source data/skills --db data/index.sqlite sekali. Aman dipanggil berkali-kali — tidak menimpa file yang sudah ada. | | npx midco-mcp@latest serve [flags] | Resolve binary midco-mcp, lalu jalankan dengan flags diteruskan apa adanya (mis. serve --no-auth, serve --db ... --config ...). | | npx midco-mcp@latest ingest [flags] | Resolve + jalankan binary ingest (README §7). | | npx midco-mcp@latest stats [flags] | Resolve + jalankan binary stats (README §12). | | npx midco-mcp@latest tokens <cmd> [flags] | Resolve + jalankan binary tokens — kelola auth token per-project (README §14.1), mis. tokens create --project default. | | Argumen lain | Diperlakukan sebagai flag buat binary server langsung — kompatibel dengan pemakaian lama sebelum ada subcommand setup/serve. |

Contoh alur lengkap dari nol:

npx midco-mcp@latest setup
npx midco-mcp@latest tokens create --project default   # opsional, skip kalau mau --no-auth
npx midco-mcp@latest serve --no-auth

Coba lokal (sebelum di-publish ke registry)

Dari dalam clone repo ini:

node npm/bin.js setup
node npm/bin.js serve --no-auth

atau pakai npm link supaya perintah midco-mcp (tanpa npx) tersedia di $PATH:

cd npm && npm link
midco-mcp setup
midco-mcp serve --no-auth

Karena wrapper ini mendeteksi ada Cargo.toml satu level di atas npm/, build-from-source otomatis pakai source lokal repo ini (cargo build --release --bins), bukan cargo install --git.

Arsitektur

Lihat README utama §1 dan diagram di ../docs/architecture.svg untuk gambaran lengkap index-time vs query-time. Wrapper ini cuma jalur instalasi/start — begitu binary midco-mcp jalan, dia jadi HTTP MCP server lokal biasa (§16).

Referensi

  • README utama — arsitektur, tools MCP, setup lengkap, keamanan.
  • README §15 — perbandingan jalur instalasi (install.sh vs npx vs midco-mcp.sh).
  • README §19 — roadmap (CI build+publish binary per platform, publish paket ini ke registry npm).