mcpField
P
pp-facebook-marketplace

pp-facebook-marketplace

github.com/mvanhornマーケティング・グロース2.1k136 回インストール今日更新
リポジトリ

pp-facebook-marketplace について

pp-facebook-marketplace は、Facebook Marketplace のローカルな売買を人が確認しながら進める CLI スキルです。条件付き検索の監視や出品文の下書きに対応し、出品作成や返信には明示的な確認を設けています。

主な機能

  1. 01Marketplace の商品検索
  2. 02条件付き検索の保存と監視
  3. 03新着マッチの確認
  4. 04写真とメモから出品情報を下書き
  5. 05古い出品と売り手スレッドの確認

活用シーン

  1. 01価格と距離を指定して商品を監視
  2. 02写真とメモから出品文を準備
  3. 03人の承認後に受信箱のスレッドへ返信

MCP 対応

README には MCP サーバーのインストールと Claude Code への登録手順があります。MCP クライアントに公開する具体的なツールは記載されていません。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mvanhorn/printing-press-library --skill pp-facebook-marketplace

インストール後、Claude Code で/pp-facebook-marketplaceを入力して読み込まれたか確認します。

詳細

Facebook Marketplace — Printing Press CLI

前提条件:CLI をインストールする

このスキルは facebook-marketplace-pp-cli バイナリを使用します。**このスキルのコマンドを実行する前に、CLI がインストールされていることを必ず確認してください。**インストールされていない場合は、先にインストールしてください。

  1. Printing Press インストーラーを使用してインストールします。デフォルトでは、macOS/Linux では $HOME/.local/bin に、Windows では %LOCALAPPDATA%\Programs\PrintingPress\bin にバイナリが配置されます。
    npx -y @mvanhorn/printing-press-library install facebook-marketplace --cli-only
    
  2. 確認します:facebook-marketplace-pp-cli --version
  3. このスキルを実行するエージェント/ランタイムの $PATH に、報告されたインストールディレクトリが含まれていることを確認します。

npx によるインストールに失敗した場合(Node がない、オフラインなど)は、Go による直接インストールに切り替えてください(Go 1.26.6 以降が必要です)。

go install github.com/mvanhorn/printing-press-library/library/commerce/facebook-marketplace/cmd/facebook-marketplace-pp-cli@latest

インストール後に --version が「command not found」と報告する場合、ランタイムからバイナリディレクトリが $PATH 経由で認識されていません。確認に成功するまで、スキルのコマンドを実行しないでください。

この CLI を使用する場面

検索、ウォッチ、マッチの選別、出品の下書き作成、明示的な承認後の出品者受信箱スレッドへの返信など、ローカルで人間のペースに合わせて行う Facebook Marketplace のワークフローにこの CLI を使用します。一括自動化や、複数プラットフォームをまたぐスクレイピングには使用しないでください。

独自の機能

これらの機能は、この API の他のツールでは利用できません。

出品者向けワークフロー
  • draft — 写真やメモを基に、Marketplace のタイトル、説明、価格の提案を作成します。

    書き込みが必要な出品フローを開始する前に、出品内容を準備するときに使用します。

    facebook-marketplace-pp-cli draft --photos chair-front.jpg,chair-tag.jpg --notes "walnut dining chair, small scratch on back" --json
    
  • reply — --write と doctor によるゲート処理の両方を通過した場合にのみ、出品者の受信箱への返信を準備して送信します。

    人間が承認した販売側のメッセージに限って使用します。

    facebook-marketplace-pp-cli reply --thread 1525836598898750 --message "Yes, it is still available." --write --json
    
購入者向けワークフロー
  • watch add — キーワード、価格、距離の決定論的なフィルターを指定して、Marketplace の検索ウォッチを保存します。

    生の検索結果ごとに関連性を判断することなく、エージェントが Marketplace を監視する必要がある場合に使用します。

    facebook-marketplace-pp-cli watch add --name "eames" --query "eames lounge" --max-price 1500 --radius 60 --must-have-keywords "chair,lounge" --json
    
  • matches — 決定論的なフィルタリング後の、新しいウォッチマッチを表示します。

    エージェントが人間の購入者に提示する価値のある候補リストを必要とする場合に使用します。

    facebook-marketplace-pp-cli matches --new --json
    
ローカルミラー
  • stale — 7 日以上前に出品され、反応がないローカルの出品を検索します。

    価格変更または再出品が必要な出品を判断するときに使用します。

    facebook-marketplace-pp-cli stale --days 7 --json
    

HTTP トランスポート

この CLI は、ブラウザー向けエンドポイントに対して、Chrome 互換の HTTP/3 トランスポートを使用します。通常の API 呼び出しに、常駐するブラウザープロセスは必要ありません。

コマンドリファレンス

composer — 販売者側の出品作成ヘルパー操作です。

  • facebook-marketplace-pp-cli composer price_prediction — Marketplace の出品作成時の価格予測を取得します。
  • facebook-marketplace-pp-cli composer root — Marketplace の出品作成メタデータを取得します。
  • facebook-marketplace-pp-cli composer shipping_options — 下書きの出品に対する計算済みの配送オプションを取得します。

inbox — Marketplace の受信箱とメッセージ操作です。

  • facebook-marketplace-pp-cli inbox list — Marketplace の受信箱の概要を取得します。
  • facebook-marketplace-pp-cli inbox thread — スレッド ID を指定して、Marketplace/Messenger のダイレクトスレッドを取得します。
  • facebook-marketplace-pp-cli inbox message_seller — Marketplace の出品者にメッセージを送信します。
  • facebook-marketplace-pp-cli inbox seller_threads — Marketplace の出品者用受信箱のスレッドを取得します。
  • facebook-marketplace-pp-cli inbox seller_threads_page — Marketplace の出品者用受信箱のスレッドのページを取得します。

listing — 出品の詳細と販売者側の出品操作です。

  • facebook-marketplace-pp-cli listing change_availability — Marketplace の出品の公開状態を変更します。
  • facebook-marketplace-pp-cli listing create — 準備済みの出品作成ペイロードから Marketplace の出品を作成します。ローカルの写真を先にアップロードするには --photo を指定します。
  • facebook-marketplace-pp-cli listing delete — Marketplace の販売中の商品を削除します。
  • facebook-marketplace-pp-cli listing get — Marketplace の出品詳細ページのペイロードを取得します。
  • facebook-marketplace-pp-cli listing media — Marketplace の出品メディアのペイロードを取得します。
  • facebook-marketplace-pp-cli listing upload-photo — ローカルの写真をアップロードし、Marketplace の出品作成用 photo_id を返します。

marketplace — Marketplace の閲覧と位置情報の操作です。

  • facebook-marketplace-pp-cli marketplace browse_feed — Marketplace の閲覧フィードの結果を取得します。
  • facebook-marketplace-pp-cli marketplace set_browse_radius — Marketplace の閲覧範囲を設定します。
  • facebook-marketplace-pp-cli marketplace set_buy_location — Marketplace の購入場所を設定します。

marketplace_search — Marketplace の検索操作です。

  • facebook-marketplace-pp-cli marketplace_search — Marketplace の出品を検索します。

手書きのコマンド

  • facebook-marketplace-pp-cli draft — 写真とメモから出品文を作成する AI 出品文作成ツールです。
  • facebook-marketplace-pp-cli watch — 購入者側の決定論的な監視コマンドです。
  • facebook-marketplace-pp-cli matches — 決定論的なフィルタリング後の監視対象の一致を表示します。
  • facebook-marketplace-pp-cli stale — エンゲージメントのない、7 日を超えるローカルの出品を表示します。
  • facebook-marketplace-pp-cli reply — 書き込みが許可された販売者側のメッセージ返信ヘルパーです。
適切なコマンドを見つける

やりたいことは分かっていても、どのコマンドを使えばよいか分からない場合は、CLI に直接問い合わせてください。

facebook-marketplace-pp-cli which "<capability in your own words>"

which は自然言語での機能に関する問い合わせを、この CLI の厳選された機能インデックスから最適なコマンドに対応付けます。終了コード 0 は 1 つ以上の一致があることを示し、終了コード 2 は信頼できる一致がないことを示します。その場合は --help を参照するか、より具体的な問い合わせを使用してください。

レシピ

購入者側の監視対象を作成する
facebook-marketplace-pp-cli watch add --name "eames" --query "eames lounge" --max-price 1500 --radius 60 --json

決定論的なフィルター条件をローカルに保存し、以降の実行で新しい出品と照合できるようにします。

Marketplace の購入者とのダイレクトスレッドを読む
facebook-marketplace-pp-cli inbox thread --thread 27799138726406206 --agent

既知の Marketplace スレッド ID に対応する実際の Messenger スレッドルートを読み込み、解析済みの概要に加えて、メッセージ本文、送信者 ID、タイムスタンプを返します。

出品者の出品文を作成する
facebook-marketplace-pp-cli draft --photos chair-front.jpg,chair-tag.jpg --notes "walnut dining chair, small scratch" --json

書き込みが許可された Marketplace の変更操作を行う前に、出品文を作成します。

ローカルの写真を使って出品するには、まず facebook-marketplace-pp-cli doctor を実行し、次に listing create に --write と 1 つ以上の --photo フラグを指定します。CLI は各ローカルファイルをアップロードし、返された photo_id の値を variables.input.data.common.photo_ids に追加してから、作成のミューテーションを送信します。

認証の設定

Facebook にログインした状態で Chrome を開き、facebook-marketplace-pp-cli auth login --chrome を実行します。取得したブラウザーセッションが認証情報です。セッション情報は Dropbox プロジェクトのワークスペースに保存しないでください。

facebook-marketplace-pp-cli doctor を実行して、設定を確認します。

エージェントモード

任意のコマンドに --agent を追加します。次のオプションに展開されます:--json --compact --no-input --no-color --yes。

  • パイプで利用可能 — JSON は標準出力に、エラーは標準エラー出力に出力されます

  • フィルタリング可能 — --select でフィールドを絞り込めます。ドット区切りのパスはネストされた構造をたどり、配列は各要素をたどります。詳細な API でコンテキストを小さく保つために重要です:

    facebook-marketplace-pp-cli inbox list --fb-api-req-friendly-name example-resource --agent --select id,name,status
    
  • プレビュー可能 — --dry-run で、リクエストを送信せずに内容を確認できます

  • 非対話型 — プロンプトは表示されず、すべての入力をフラグで指定します

  • 明示的な再試行 — すでに存在するリソースの作成を成功として扱う場合に限り、--idempotent を使用します

エージェントへのフィードバック

あなた(またはエージェント)がこの CLI の問題に気づいたら、記録してください:

facebook-marketplace-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
facebook-marketplace-pp-cli feedback --stdin < notes.txt
facebook-marketplace-pp-cli feedback list --json --limit 10

記録はローカルの ~/.facebook-marketplace-pp-cli/feedback.jsonl に保存されます。FACEBOOK_MARKET_FEEDBACK_ENDPOINT が設定されており、かつ --send が指定されているか、FACEBOOK_MARKET_FEEDBACK_AUTO_SEND=true が設定されている場合を除き、POST されることはありません。既定の動作ではローカルのみに保存されます。

バグ報告ではなく、意外に感じたことを書いてください。短く、具体的に、1 行で記録してください。それが積み重なっていきます。

出力の送信先

すべてのコマンドで --deliver <sink> を指定できます。出力は指定した送信先に書き込まれ、標準出力への出力に追加することも、置き換えることもできます。これにより、エージェントは手動でパイプをつながずにコマンドの結果を送信できます。対応している送信先は 3 種類です:

送信先動作
stdout既定値。標準出力のみに書き込みます
file:<path>出力を <path> にアトミックに書き込みます(一時ファイルを作成してから名前を変更)
webhook:<url>出力本文を URL に POST します(--compact の場合は application/json または application/x-ndjson)

不明なスキームは、対応しているスキームを示す構造化エラーとともに拒否されます。Webhook の送信に失敗すると、ゼロ以外の終了コードが返され、URL と HTTP ステータスが標準エラー出力に記録されます。

名前付きプロファイル

プロファイルは、複数の呼び出しで再利用できるフラグ値の保存セットです。スケジュールされたエージェントが毎回同じ設定で同じコマンドを実行する場合に使用します。これは HeyGen の「Beacon」パターンです。

facebook-marketplace-pp-cli profile save briefing --json
facebook-marketplace-pp-cli --profile briefing inbox list --fb-api-req-friendly-name example-resource
facebook-marketplace-pp-cli profile list --json
facebook-marketplace-pp-cli profile show briefing
facebook-marketplace-pp-cli profile delete briefing --yes

明示的に指定したフラグは常にプロファイルの値より優先され、プロファイルの値は既定値より優先されます。agent-context は、実行時にイントロスペクションを行うエージェントが利用可能なプロファイルを検出できるよう、すべてのプロファイルを available_profiles に一覧表示します。

終了コード

コード意味
0成功
2使用方法のエラー(引数が不正)
3リソースが見つかりません
4認証が必要です
5API エラー(上流の問題)
7レート制限中(待ってから再試行してください)
10設定エラー

引数の解析

$ARGUMENTS を解析します:

  1. 空、help、または --help → facebook-marketplace-pp-cli --help の出力を表示します
  2. install で始まる場合 → mcp で終わる場合は MCP のインストール、それ以外の場合は上記の前提条件を参照します
  3. それ以外 → 直接使用(CLI コマンドとして --agent を付けて実行します)

MCP サーバーのインストール

この CLI の公開ライブラリーのエントリーまたはビルド済みリリースから MCP バイナリーをインストールし、登録します:

claude mcp add facebook-marketplace-pp-mcp -- facebook-marketplace-pp-mcp

確認するには、claude mcp list を実行します。

直接使用

  1. インストール済みか確認します:which facebook-marketplace-pp-cli 見つからない場合は、インストールを提案します(このスキルの冒頭にある「前提条件」を参照)。
  2. ユーザーの問い合わせに最適なコマンドを、上記の「独自の機能」と「コマンドリファレンス」から選びます。
  3. --agent フラグを付けて実行します:
    facebook-marketplace-pp-cli <command> [subcommand] [args] --agent
    
  4. あいまいな場合は、サブコマンドのヘルプを確認します:facebook-marketplace-pp-cli <command> --help。

コメント