mcpField
B
Bacon Services

Bacon Services

ローカル
baconservices.comメディア・デザイン02 日前に更新

Bacon Services について

Bacon Services の画像処理やウェブページからのブランド情報抽出を、Base 上の USDC で一回ごとに購入する MCP クライアントです。ウォレットキーを端末内に保ち、呼び出し・セッション・日次の上限で支出を管理します。

主な機能

  1. 01画像サービスを呼び出しごとに購入
  2. 02背景除去と WebP 形式への最適化
  3. 03画像の色パレットとウェブのブランド情報を抽出
  4. 04USDC 決済を端末内で署名
  5. 05呼び出し・セッション・日次の上限を設定
  6. 06サービス価格、ウォレット、残り予算を確認

活用シーン

  1. 01写真の背景を除去して透過 PNG を保存
  2. 02画像を縮小して WebP に変換
  3. 03デザイン作業向けに主要色を抽出
  4. 04ウェブページからブランド名・色・ロゴを収集

MCP 対応

stdio で MCP ホストに接続するオープンソースの MCP クライアントです。x402 を通じて Base 上の USDC で画像・ウェブツールを呼び出しごとに購入し、支払い前に価格・残高・上限を確認します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"afmontoya-baconservices": {
"command": "npx",
"args": [
"-y",
"baconservices-mcp"
],
"env": {
"BACON_WALLET_KEY_FILE": "<BACON_WALLET_KEY_FILE>",
"BACON_WALLET_PRIVATE_KEY": "<BACON_WALLET_PRIVATE_KEY>",
"BACON_MAX_PER_CALL": "<BACON_MAX_PER_CALL>",
"BACON_MAX_PER_SESSION": "<BACON_MAX_PER_SESSION>",
"BACON_MAX_PER_DAY": "<BACON_MAX_PER_DAY>",
"BACON_CONFIRM": "<BACON_CONFIRM>"
}
}
}
}
起動コマンドnpx -y baconservices-mcp
設定が必要な環境変数
BACON_WALLET_KEY_FILEシークレットPath to a file holding the buyer wallet's private key (USDC on Base). Or set BACON_WALLET_PRIVATE_KEY.
BACON_WALLET_PRIVATE_KEYシークレットThe buyer wallet's private key, if not using a key file. Use a dedicated wallet.
BACON_MAX_PER_CALLLargest single payment in USDC.
BACON_MAX_PER_SESSIONMost this process may spend, in USDC.
BACON_MAX_PER_DAYMost spent in any rolling 24 hours, persisted across restarts, in USDC.
BACON_CONFIRMauto, always or never: ask before each payment when the host can.

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

パッケージ
npmbaconservices-mcp0.2.0

ツール

3

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

このツールにパラメーターはありません。

詳細

baconservices-mcp

AI エージェントが Bacon Services から画像関連の作業を 1 回の呼び出しごとに購入できる MCP サーバーです。支払いは x402 を通じて Base 上の USDC でご自身のウォレットから行われ、設定した利用上限が適用されます。アカウントも API キーも不要です。エージェントがツールを呼び出すと、サーバーが価格と利用上限を照合し、その価格ちょうどの USDC 支払いに署名して、結果を返します。

MCP Registry にも io.github.afmontoya/baconservices-mcp として登録されています。

ウォレットの安全性

ウォレットの秘密鍵はお使いのマシンから外に出ません。Bacon Services が秘密鍵を受け取ったり、保存したりすることはありません。支払いはローカルで署名され、呼び出しごと、セッションごと、日ごとに設定可能な利用上限が適用されます。

提供サービス

ツール内容価格(2026-10-17)
remove_background写真 1 枚の背景を削除します。写真と同じサイズの透過 PNG を返します0.20 USDC
optimize_image最長辺が max_width(64~4096、デフォルト 1600)以下になるようにサイズを変更し、quality(40~95、デフォルト 80)で WebP にエンコードします0.01 USDC
image_palette画像 1 枚を主に構成する色を JSON で返します。色は最大 count 個(1~12、デフォルト 6)で、それぞれの割合を含みます。include_neutrals(デフォルト true)も指定できます0.01 USDC
brand_from_url公開されている Web ページ(url)を 1 つ読み込み、ブランド情報を JSON で返します。名前、説明、ロゴ URL、色、フォント、ソーシャルプロフィールが含まれます。JavaScript は実行されず、robots.txt の設定に従います0.03 USDC

画像ツールで使用できる画像形式は PNG、JPEG、WebP で、サイズは最大 8 MB です。image_url(公開 https)または image_path(ローカルファイル)で指定します。remove_background と optimize_image は署名付きダウンロードリンク(有効期間 24 時間)を返し、image_palette と brand_from_url はツールの結果に JSON を返します。どちらの種類の結果も、save_to を追加するとディスクに保存できます。価格は Bacon の最新カタログから取得され、有料ツールの説明には現在の価格が記載されています。

image_palette と brand_from_url は、Bacon のカタログにコントラクトバージョン付きで公開されると表示されます。インストール済みパッケージが認識しないサービスは list_services に表示されますが、パッケージを更新するまで呼び出せません。

無料ツール:

  • list_services:Bacon が現在提供するすべてのサービスと価格、利用上限、およびこのバージョンのパッケージで実行できるかどうかを表示します。
  • quote:サービス 1 件の Bacon の現在の価格と、利用上限およびウォレットの残高で利用できるかどうかを確認します。署名は行われません。
  • wallet_status:ネットワーク、ウォレットが設定されているかどうか、利用上限と残りの上限、各サービスを利用できるかどうか(はい/いいえ)を表示します。

始める前に

  1. Node.js 20 以降。
  2. 使用する金額だけを入れた専用ウォレット。 Base 上の USDC を入金してください。ETH は不要です。x402 の支払いは署名付きの承認(EIP-3009)であり、ガス代はファシリテーターが支払います。
  3. 秘密鍵を、自分だけが読み取れるファイルに保存します。 たとえば ~/.bacon/buyer.key です。BACON_WALLET_KEY_FILE にこのファイルを指定すると、MCP ホストの設定ファイルから鍵を除外できます。MCP ホストの設定ファイルは同期または共有されることがよくあります。BACON_WALLET_PRIVATE_KEY も使用できます。

鍵がマシンから外に出ることはありません。送信されるのは署名のみで、送信先は Bacon に限られます。鍵がログに記録されたり、支出台帳に書き込まれたり、ツールの引数として受け付けられたりすることはありません。

インストール

Claude Code
claude mcp add bacon -e BACON_WALLET_KEY_FILE=/home/you/.bacon/buyer.key -- npx -y baconservices-mcp

以下の利用上限を設定するには、-e NAME=value の組み合わせを追加してください。claude mcp list で確認できます。

Claude Desktop

「Settings」→「Developer」→「Edit Config」(claude_desktop_config.json):

{
  "mcpServers": {
    "bacon": {
      "command": "npx",
      "args": ["-y", "baconservices-mcp"],
      "env": {
        "BACON_WALLET_KEY_FILE": "/Users/you/.bacon/buyer.key",
        "BACON_MAX_PER_CALL": "0.50",
        "BACON_MAX_PER_SESSION": "1.00",
        "BACON_MAX_PER_DAY": "5.00"
      }
    }
  }
}

Windows で npx が見つからない場合は、"command": "cmd" と "args": ["/c", "npx", "-y", "baconservices-mcp"] を使用し、パスは "C:\\Users\\you\\.bacon\\buyer.key" のように記述してください。その後、Claude Desktop を再起動します。

Cursor、Windsurf、および mcpServers ファイルを使用するその他のクライアント

Claude Desktop と同じ command / args / env ブロックを使用します(Cursor の場合は ~/.cursor/mcp.json またはプロジェクト内の .cursor/mcp.json)。

VS Code(.vscode/mcp.json)

VS Code では、鍵の入力を 1 回だけ求め、その鍵を安全に保存できます。

{
  "inputs": [
    { "type": "promptString", "id": "bacon-key", "description": "Bacon buyer wallet private key", "password": true }
  ],
  "servers": {
    "bacon": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "baconservices-mcp"],
      "env": { "BACON_WALLET_PRIVATE_KEY": "${input:bacon-key}" }
    }
  }
}
その他の MCP クライアント

これは stdio サーバーです。以下の環境で npx -y baconservices-mcp を実行してください。

設定

変数デフォルト意味
BACON_WALLET_KEY_FILE—購入者のウォレットの秘密鍵を含むファイルへのパスです。
BACON_WALLET_PRIVATE_KEY—秘密鍵そのものです(どちらか一方のみ設定してください)。どちらも設定しなくても、無料のツールは引き続き利用できます。
BACON_MAX_PER_CALL0.501 回の支払いの上限額(USDC)です。
BACON_MAX_PER_SESSION1.00このサーバープロセスが支出できる上限額です。
BACON_MAX_PER_DAY5.00プロセスや再起動をまたいだ、任意の連続 24 時間における支出上限額です。
BACON_CONFIRMautoauto:ホストが対応している場合は支払いごとに確認します。always:確認できない場合は支払いを拒否します。never:確認しません(無人のエージェント向けです。上限は引き続き適用されます)。
BACON_NETWORKbasebase(実際の USDC、baconservices.com)または base-sepolia(テスト用 USDC、Bacon のテスト用コピー)です。
BACON_API_URL—base-sepolia の場合のみ設定します。テスト用コピーのアドレスです。
BACON_PAY_TO—base-sepolia の場合のみ設定します。テスト用コピーの受取アドレスです。
BACON_RPC_URLhttps://mainnet.base.org支払い前に USDC 残高を確認するために使用する RPC です。
BACON_LEDGER_DIR~/.baconservices-mcp支出台帳の保存場所です。
BACON_DISCLOSE_BALANCEfalsetrue にすると、wallet_status に正確な残高とウォレットアドレスが追加されます。

資金の保護方法

以下の確認はすべて、署名を行う前に実施されます。

  • 価格は Bacon 独自のものです。 Bacon は各リクエストに対し、価格を示す x402 402 を返します。 サーバーが支払うのは、その価格が、該当する正確なエンドポイントに対する Bacon の最新カタログ価格と一致し、 Base の USDC 建てで、(パッケージに固定されている)Bacon の受取アドレス宛てである場合のみです。いずれかを 検証できない場合、支払いは行いません。
  • 上限額です。 1 回あたりの上限、呼び出し時に指定された任意の max_price_usdc、セッションあたりの上限、 24 時間の上限を確認します。24 時間の合計額は、すべてのプロセスで共有されるローカルの台帳ファイルに保存されるため、 MCP サーバーを再起動したり、2 回実行したりしても、予算がリセットされることはありません。台帳を読み取れない場合、 支払いは行いません。二重の保護として、x402 ライブラリ独自の 1 回あたりの支払い上限も、1 回あたりの上限額に設定されます。
  • 資金です。 まず USDC 残高を読み取ります。残高が不足している場合、または残高を読み取れない場合は、 分かりやすいメッセージを表示し、署名は行いません。
  • 可能な場合は承認を求めます。 MCP ホストが対応している場合は、「remove_background を実行するために、Base 上で Bacon Services に 0.2 USDC を支払いますか?」 と確認します。確認に対応していないホストもあるため、実際の境界となるのは上限額です。
  • 二重払いはありません。 購入ごとに、1 回のリクエストに対する支払いを 1 件だけ署名します。接続が切れた場合、サーバーは同じ署名済み支払いを 1 回だけ再送します(Bacon は重複リクエストに同じ結果を返します)。新しい支払いに署名することはありません。allow_repeat: true を渡さない限り、10 分以内に同じものを再度要求すると、前回の結果が無料で返されます。
  • 既知のサービスのみ実行します。 Bacon のカタログに新しいサービスが追加されると、list_services に表示されます。契約(入力、出力、バージョン)に対応したこのパッケージのバージョンがインストールされて初めて、呼び出し可能なツールになります。

Bacon が支払いを受け取る前に拒否した場合、結果に 「課金されていません」 と表示され、金額は各種上限に計上されなくなります。結果が不明な場合(たとえば、接続が 2 回切れた場合)は、その旨と Bacon のリクエスト ID が表示されます。その金額は引き続き上限に計上されます。

テスト用資金

本番環境の Bacon では、実際の USDC のみを使って販売しています。実際の資金を使わずに試すには、Base Sepolia 上で販売する Bacon のローカルコピーまたはテスト用コピーに接続して実行してください。

BACON_NETWORK=base-sepolia BACON_API_URL=http://127.0.0.1:8000 BACON_PAY_TO=0xYourTestPayTo npx -y baconservices-mcp

以下のいずれの場合も、パッケージは設定の不一致を検出して支払いを行いません。テスト用資金を baconservices.com に向けた場合、実際の資金をそれ以外の場所に向けた場合、または Bacon のカタログが異なるネットワーク上にある場合です。

開発

npm install
npm test

テストは、すべての支払い署名を実際に検証する偽の Bacon に対して実行されます。ネットワークには一切接続しません。

ホステッドサービス

この MCP クライアントは MIT ライセンスの下でオープンソースとして公開されています。Bacon Services のホステッド API、Agent Commerce サービス、x402 課金機能、インフラストラクチャ、バックエンド実装は個別のサービスであり、MIT ライセンスの対象ではありません。Bacon Services のホステッド API および x402 サービスの利用には、Bacon Services の利用規約が適用されます。

商標に関する注意

MIT ライセンスは、このリポジトリ内のソースコードのみを対象としています。「Bacon Services」、Bacon Services の名称、ロゴ、および関連するブランド表記は、MIT ライセンスの対象ではありません。Bacon Services の商標、ロゴ、またはブランド表記を、推奨、スポンサーシップ、もしくは提携を示唆する方法で使用する許可はありません。TRADEMARKS.mdを参照してください。

ライセンス

MIT。LICENSEを参照してください。

コメント

MCP は初めてですか?

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

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