mcpField
R
runwaystock

runwaystock

ローカル
github.com/GillMacedoビジネス・マーケティング02 週間前に更新

runwaystock について

runwaystockは、小売業者や小規模事業者向けに販売・在庫CSVを分析し、補充計画を支援するMCPサーバー兼ローカルCLIです。標準的な計算式で発注点、数量、在庫日数を算出します。

主な機能

  1. 01発注点と発注数量の計算
  2. 02在庫切れ日の推定
  3. 03過剰在庫と最近売れていない商品の検出
  4. 04販売・在庫CSVの読み込みと検査

活用シーン

  1. 01商品の補充時期と数量の計画
  2. 02売れていない商品に滞留する資金の把握

MCP 対応

SKUの在庫状況の確認とCSVの列・行数の検査を行う読み取り専用ツールを提供します。発注は行いません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"gillmacedo-runwaystock": {
"command": "npx",
"args": [
"-y",
"runwaystock"
]
}
}
}
起動コマンドnpx -y runwaystock

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmrunwaystock0.2.0

ツール

2

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
limitnull|integerいいえ返す SKU 数の上限。緊急度の高い順で、デフォルトは 100 です。0 の場合は合計のみを返します
lead_daysnull|numberいいえ発注から入荷までの日数。デフォルトは 14 日です。在庫ファイルにリードタイムがある場合は、その値が優先されます
cover_daysnull|numberいいえ各注文でカバーする販売日数。デフォルトは 30 日です
sales_pathstringはい販売または注文 CSV のパス
stock_pathstringはい在庫数 CSV のパス
date_formatstringいいえdmy または mdy。ツールが日付を曖昧と報告した場合にのみ必要です。
window_daysnull|integerいいえ直近の販売データを使用する日数。デフォルトは 90 日です
sales_columnsobjectいいえ検出に失敗した場合に、フィールドごとに列名を指定します(date、sku、qty)
service_levelnull|integerいいえリードタイム中に在庫切れにならない確率:90、95、99。デフォルトは 95 です
stock_columnsobjectいいえ検出に失敗した場合に、フィールドごとに列名を指定します(sku、qty、lead、cost、moq)

詳細

runwaystock:販売データと在庫ファイルから再発注点を計算

npm CI MIT license MCP Registry

何をいつ再発注すべきか、どれだけ仕入れるべきか、各商品の在庫がいつ切れるか、売れ残り在庫にどれだけ資金が滞留しているかを把握できます。スプレッドシートで在庫を管理するECストア、小売業者、小規模事業者向けです。

在庫計画ソフトウェアは高額で、スプレッドシートの数式は壊れがちです。runwaystock は販売データのエクスポートと在庫数をCSVファイルとして読み込み、すべてのSKUに標準的な再発注点と安全在庫の計算式を適用します。MCP サーバーであり、単一のGoバイナリとして動作します。アカウントもAPIキーもネットワーク接続も必要ありません。

エージェントに依頼できること

  • 「今週、何をどれだけ再発注する必要がありますか?」
  • 「どの商品から先に在庫切れになりますか?」
  • 「売れ残り在庫にどれだけ資金が滞留していますか?」
  • 「どの商品を過剰に在庫していますか?」

インストール

Claude Codeプラグインとしてインストールすると、MCP サーバーと、いつ使うべきかをClaudeに伝えるスキルが追加されます。npx でサーバーを実行するため、Nodeが必要です。

claude plugin marketplace add GillMacedo/runwaystock
claude plugin install runwaystock@runwaystock-marketplace

その他のMCPクライアントの場合:

{
  "mcpServers": {
    "runwaystock": {
      "command": "npx",
      "args": ["-y", "runwaystock", "serve"]
    }
  }
}

または、Go 1.27以降でバイナリをビルドします。

go install github.com/GillMacedo/runwaystock@latest

使用方法

何もインストールせずに、npx runwaystock check sales.csv stock.csv を実行します。この例では、examples/ にある架空のファイルを使用しています。

$ go run . check examples/sales.csv examples/stock.csv
2026-09-30時点、過去90日間の販売データを使用
今すぐ発注      WIDGET-RED:93個を購入  費用418.50  (在庫40個、1日あたり2.83個、2026-10-14に在庫切れ、再発注点48個)
OK               MUG-LARGE  (在庫70個、残り35日分)
OK               CAP-DEMO  (在庫300個、残り51日分)
過剰在庫         WIDGET-BLUE  (在庫120個、残り277日分)
過剰在庫         BAG-CANVAS  (在庫500個、残り3462日分)
最近の販売なし   POSTER-OLD  (在庫60個、評価額120.00)
最近の販売なし   TSHIRT-UNSOLD  (在庫35個、評価額420.00)
在庫ファイルになし  STICKER-NEW は最近販売あり
スキップした販売データの行 328
今すぐ発注する商品は1点、費用は418.50です。最近販売のない在庫に540.00が滞留しています。

--lead 21、--cover 45、--window 60、--service 99 で独自の前提条件を設定できます。在庫ファイルにリードタイムが指定されている場合、そのSKUでは --lead より優先されます。機械可読形式の出力には --json を追加します。

計算方法

安全在庫   = z × 日次販売数の標準偏差 × リード日数の平方根
再発注点   = 日次販売数 × リード日数 + 安全在庫
発注数量   = 日次販売数 ×(リード日数 + 補充日数)+ 安全在庫 − 手持ち在庫

日次販売数は、販売のない日も含む暦日で平均します。返品は需要を減らします。発注数量は、在庫ファイルにある最小発注数量(MOQ)単位で切り上げます。サービスレベル90、95、99には、それぞれz値1.28、1.65、2.33を使用します。

ステータス意味
今すぐ発注手持ち在庫が再発注点以下です
まもなく発注7日以内に再発注点に達します
OK現時点では十分な在庫があります
過剰在庫180日分を超える在庫があります
最近の販売なし対象期間に純売上がありません

MCP ツール

ツール機能
inventory_check各 SKU のステータスと発注数を、緊急度の高い順に返します
inventory_inspect_csv行の内容を表示せずに、検出された列と行数を表示します

どちらも読み取り専用で、発注はできません。inventory_check は SKU と数量を MCP クライアントに返すため、使用する AI モデルにその情報が渡ります。CLI ではすべての処理が手元のマシン上で行われます。

よくある質問

再発注点はどのように計算しますか? 上記の式を使うか、npx runwaystock check sales.csv stock.csv を実行すると、すべての SKU について計算できます。

Shopify、Amazon、WooCommerce に対応していますか? CSV を読み込み、Lineitem sku や Lineitem quantity などの一般的な列名を認識します。また、--sales-columns を使ってほかの列名を指定できます。これらのプラットフォームには接続せず、それぞれの実際のエクスポートデータでのテストもまだ行っていません。

どれくらいの販売履歴が必要ですか? 最低28日分必要です。それより短い場合は、数値が概算であることを警告します。デフォルトでは直近90日分を使用します。

制限事項

  • 直近の販売状況が近い将来の需要を予測すると仮定しているため、季節性、プロモーション、成長は考慮されません。
  • 在庫切れの間に失われた販売は需要が低かったように見えるため、必要な数量が実際より少なく見積もられます。
  • 安全在庫の計算式は、需要が比較的安定しており、リードタイムが一定であることを前提としています。そのため、結果は出発点として扱い、購入前に確認してください。
  • CSV のみを読み込み、サイズの上限は50 MBです。セット商品や単位換算には対応していません。
  • これまでのところ、実際のエクスポートデータではなく、架空のデータでテストしています。動作しない場合は、データではなく列ヘッダーを添えて issue を作成してください。

貢献

個人の方も、AI エージェントと協働する方も、貢献を歓迎します。CONTRIBUTING.md をご覧ください。初めての貢献におすすめの issue:

  • ほかの E コマースプラットフォームや言語の列名を追加する
  • CSV に購入リストを書き出す --out を追加する
  • 発注リストを仕入先ごとにグループ化する
  • 前年の同じ期間と比較する季節性オプションを追加する
  • プラグインアイコンを追加する
プルリクエストの流れ
  1. PR を作成します。 リポジトリをフォークし、ブランチで作業して、変更は1つに絞ってください。変更内容がユーザーにどう影響するかを示すタイトルを付けてください。タイトルは変更履歴の項目になるため、feat: は Added に、fix: は Fixed に分類されます。
  2. 自動チェック。 コード変更にはテストが必要で、make test が成功しなければなりません。30行を超える変更には、関連する未クローズの issue(Closes #<number>)が必要です。また、PR の変更行数は最大800行です。不足がある場合は、修正箇所を示すコメントが付きます。
  3. レビュー。 Claude が各 PR を自動でレビューします。コードの PR にはセキュリティレビューも行われ、サンドボックスでテストされます。その後、レビュー担当者が PR をマージするか、修正を依頼します。CI、エージェントの設定、npm または Python の依存関係、ベンダーコード、ビルドファイルを変更する PR は、この方法ではマージできません。その旨を伝えるコメントが付きます。セキュリティレビューで承認されなかったものも同様です。
  4. リリース。 ユーザーがインストールするものに変更を加えるマージは、約2時間以内に新しいバージョンとしてリリースされ、GitHub Release が作成されます。プロジェクトに npm パッケージがある場合は、それもリリースされます。ドキュメントと CI の変更は次のリリースまで保留されます。

AI に関する開示

このプロジェクトは主に Claude Code で生成され、メンテナーがレビューしました。

自己紹介

私は Giulliano Macedo です。GoTech Solutions で開発者向けツールを開発しています。最新情報を確認したり、お気軽にご連絡ください。

runwaystock によって在庫切れを防げたら、スターを付けていただくと、ほかの人にも見つけてもらいやすくなります。


MIT ライセンスです。

Giulliano Macedo、GoTech Solutions が開発 · LinkedIn · X

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。