mcpField
H
Hive Cdn

Hive Cdn

リモート
hiveagentiq.comクラウド・インフラ026 週間前に更新
リポジトリ公式サイト

Hive Cdn について

Hive Cdnは、A2Aパイプラインで繰り返し参照されるエージェントカードや能力マニフェストなどをキャッシュする、受信専用のMCPサーバーです。メモリLRUとSQLiteを組み合わせ、ETag応答に対応し、x402で利用量を計測します。

主な機能

  1. 01キーによるオブジェクトのキャッシュ
  2. 02メモリLRUとSQLiteの2層ストレージ
  3. 03ETag条件付き読み取り
  4. 04個別キャッシュ項目の削除
  5. 05x402によるリクエストと転送量の計測

活用シーン

  1. 01複数エージェントが読むエージェントカードのキャッシュ
  2. 02能力マニフェストへの反復リクエストへの応答
  3. 03条件付き読み取りによる応答データの削減

MCP 対応

MCPクライアントにキャッシュの読み取り、書き込み、削除ツールを公開します。クライアントはサーバー経由でオブジェクトを保存・取得できますが、オリジンURLの取得は行いません。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://hive-mcp-cdn.onrender.com/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

hive-mcp-cdn

srotzin/hive-mcp-cdn MCP server

A2A 機能のエッジキャッシュ — Hive Civilization

任意のオブジェクト(エージェントカード、機能マニフェスト、署名済みエンベロープなど、A2A パイプラインで複数回読み取られるものすべて)をキャッシュする、小規模なインバウンド専用 MCP サーバーです。インメモリ LRU と SQLite のウォーム層による 2 層ストレージ、ETag と If-None-Match のサポート、パージエンドポイントを備え、x402 を通じてリクエストごとおよび GB ごとに課金します。

Council の由来:2026-04-27 に即興で作成され、ユーザーによって推奨されました。


これは何か

A2A トラフィックの大半は読み取りです。同じエージェントカード、同じ機能リスト、同じ署名済み証明が、共有キャッシュを持たないフリート全体に配信されます。hive-mcp-cdn は、その欠けていたエッジキャッシュです。エージェントはキーを指定してオブジェクトを保存し、ETag 対応の低コストな GET を通じて取得できます。

  • プロトコル: Streamable-HTTP / JSON-RPC 2.0 上の MCP 2024-11-05
  • トランスポート: POST /mcp
  • ディスカバリー: GET /.well-known/mcp.json
  • ヘルス: GET /health
  • 決済: Base L2 上の USDC
  • ブランドカラー: Pantone 1245 C / #C08D23
  • モード: インバウンド専用。デフォルトは ENABLE=true です。

料金

対象料金課金対象
リクエストごと$0.0002 USDCヒット・ミスを問わず、すべての /v1/cdn/get。
GB ごとのエグレス$0.05 USDC200 レスポンスで返される本文のバイト数。304 レスポンスはエグレス課金の対象外です。
プリペイドバンドル$1.00 USDCアクセストークンを購入します。残高がなくなるまで、読み取りにプリペイド残高を使用します。

決済は Base L2 上の USDC で行います。受取先は WALLET_ADDRESS 環境変数です。

ツール

ツールティア説明
cdn_cache_get2($0.0002/req + $0.05/GB)キーを指定してキャッシュされたオブジェクトを読み取ります。if_none_match を考慮します。
cdn_cache_put0(無料)任意の Cache-Control: max-age=... を指定して、キーの下に保存します。
cdn_purge0(無料)単一のキーをパージします。冪等です。

REST エンドポイント

メソッドパス用途
GET/v1/cdn/get?key=...読み取り。ETag、Cache-Control、X-Cache、Age を送信します。If-None-Match を考慮します。
POST/v1/cdn/put{ key, body, content_type?, cache_control? } を書き込みます。
POST/v1/cdn/purge{ key } をパージします。
GET/v1/cdn/today日次カウンター:リクエスト数、ヒット数、ミス数、配信バイト数、収益。
POST/v1/x402/proof/submitオンチェーン証明を送信し、アクセストークンを発行します。
GET/v1/x402/pricing料金表。
GET/v1/x402/statsオープンな nonce と有効なトークン。
GET/healthサービスのヘルス状態とキャッシュ統計。
GET/.well-known/mcp.jsonMCP ディスカバリー記述子。
GET/ランディングページ。

ストレージモデル

シムが管理する 2 つの層です。

  • ホット(LRU): 挿入順の再アクセス順序を持つ、プロセス内の Map です。CDN_LRU_MAX_ENTRIES と CDN_LRU_MAX_BYTES によって上限が設定されます。ミスはウォーム層にフォールスルーし、読み取り時に昇格します。
  • ウォーム(SQLite): CDN_DB_PATH(デフォルトは /tmp/cdn.db)にある better-sqlite3 です。本文、ETag、コンテンツタイプ、バイト単位のサイズ、作成日時と有効期限を持つ cache テーブルが 1 つあります。日次カウンターを集計する egress テーブルもあります。

size_bytes は行ごとに記録され、エグレス計測の基準となります。ETag は書き込み時に一度だけ計算され、本文の SHA-256 の 16 進数表記を 32 文字に切り詰め、二重引用符で囲んだものです。

x402 のフロー

トークンなしで /v1/cdn/get を初めて呼び出すと、次の内容が返されます。

{
  "error": "payment_required",
  "payment": {
    "nonce": "<uuid>",
    "amount_usd": 1.0,
    "pricing": {
      "per_request_usd": 0.0002,
      "per_gb_egress_usd": 0.05
    },
    "accepts": [{ "chain": "base", "asset": "USDC", "recipient": "0x15184b..." }],
    "expires_at": 1777220000,
    "tier": 2,
    "product": "cdn_prepaid_bundle"
  }
}

/v1/x402/proof/submit に証明を送信します。

{ "nonce": "...", "payer": "0x...", "chain": "base", "tx_hash": "0x..." }

…その後、X-Hive-Access: hive_<token> を指定して /v1/cdn/get を呼び出します。各リクエストで、プリペイド残高から per_request + (bytes / 1GB) * per_gb_egress が差し引かれます。残高はレスポンスヘッダー X-Hive-Balance-USD で返されます。

キャッシュの動作

  • PUT の Cache-Control: max-age=<s> で TTL を設定します。デフォルトは 300 秒です。上限は 7 日です。
  • ETag は強力なバリデーターです(引用符で囲んだ SHA-256 のプレフィックス)。
  • GET の If-None-Match: <etag> は、本文なしで 304 Not Modified を返し、エグレス料金は発生しません。
  • 期限切れのエントリーは、読み取り時と 60 秒ごとのスイープ時に遅延削除されます。
  • 既存のキーに対する PUT は、本文、ETag、コンテンツタイプ、TTL を置き換え、ヒットカウンターをリセットします。

環境変数

変数デフォルト用途
PORT3000HTTP ポートです。
ENABLEtrueマスタースイッチです。false の場合は /health のみを実行します。
WALLET_ADDRESS0x15184bf50b3d3f52b60434f8942b7d52f2eb436ex402 手数料の受取先です。
CDN_PRICE_PER_REQUEST_USD0.0002リクエストごとの手数料です。
CDN_PRICE_PER_GB_EGRESS_USD0.05エグレス 1 GB あたりの手数料です。
CDN_PREPAY_BUNDLE_USD1.0デフォルトの前払いバンドルサイズです。
CDN_DEFAULT_TTL_S300max-age が明示されていないオブジェクトのデフォルト TTL です。
CDN_LRU_MAX_ENTRIES1024ホットティアのエントリー上限です。
CDN_LRU_MAX_BYTES67108864ホットティアのバイト数上限(64 MiB)です。
CDN_MAX_OBJECT_BYTES4194304オブジェクトごとのサイズ上限(4 MiB)です。
CDN_DB_PATH/tmp/cdn.dbSQLite ウォームティアのパスです。

このサーバーが行わないこと

  • あらゆる種類のアウトバウンドリクエストも実行しません。キャッシュには登録されたデータだけが保持されます。
  • URL の解決、オリジンからの取得、バックストアに対する再検証は行いません。
  • キーごとのアクセス制御は行いません。キーは不透明な名前空間として扱い、プライバシーが必要な場合は上流でアクセスを制限してください。
  • SQLite ファイルを超えて永続化しません。新しい /tmp を使用するコンテナでは、キャッシュは空です。

ライセンス

MIT。

Hive Gamification

この MCP サーバーは、Hive Civilization のゲーミフィケーション基盤(10 メカニズムの機能分類)の一部です。

サーフェスタグ: gamification.spec.v1 · gamification.surface.public · gamification.signal.read-only · gamification.settlement.real-rails

Base L2 上の実際の決済レール(USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913)。読み取り専用のシグナルレイヤーです。ブランドゴールド #C08D23。

Hive Civilization Directory

Hive Civilization — エージェントネイティブな金融インフラストラクチャの一部です。

ブランドカラー:#C08D23

コメント

MCP は初めてですか?

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

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