İçeriğe geç

Rehberler

Tarif: ücretli MCP sunucusu

MCP sunucunun araçları için çağrı başına krediyle ücret al. Kişi bir kez paket alır; her çağrı önce düşer, sonra çalışır.

Markdown olarak aç

Ajanların kendileri ödemesi gerekmez. Kişi tarayıcıda bir kredi paketi alır; sonra her araç çağrısı bakiyeyi kontrol eder, idempotency anahtarıyla kredi düşer ve çalışır. Kredi bitince araç, ajanın kişiye gösterdiği bir yükleme bağlantısıyla yanıt verir. x402 yok, ajanda cüzdan yok, otomatik tahsilat yok.

Asistanla: bu tarifi projende Perly Pay eklentisinin paid-mcp-tools skill'i uygular. Çalıştırılabilir örnek, eklenti deposundaki examples/paid-mcp-server (MIT).

Nasıl çalışır

  1. 1

    Kredi paketi

    API kredileri'ndeki gibi. Her araca bir fiyat ver ve açıklamasına yaz.

  2. 2

    Kim çağırıyor

    Barındırılan sunucu, her abonenin API anahtarını bir müşterinin external_id'siyle eşler. PERLY_PAY_SECRET_KEY yalnızca senin sunucunda.

  3. 3

    Önce düş, sonra çalış

    action olarak araç adıyla ve sunucunun her çağrı için ürettiği yeni bir anahtarla credits.consume, sonra iş.

  4. 4

    Yetmiyor mu?

    Protokol hatası değil, isError: true ve yükleme bağlantısıyla bir araç sonucu döndür: istemciler onu gösterir.

  5. 5

    Ücretsiz yardımcılar

    balance ve top_up araçları; ajan neler olduğunu açıklayabilsin diye.

A paid tool
server.registerTool("summarize", { description: "Costs 3 credits.", inputSchema: { text: z.string() } }, async ({ text }, extra) => {
  const refused = await charge(userId, 3, "summarize", extra.requestId); // credits.consume, or a top-up message
  if (refused) return { isError: true, content: [{ type: "text", text: refused }] };
  return { content: [{ type: "text", text: summarize(text) }] };
});

Örneği çalıştır

  1. 1

    Kur

    examples/paid-mcp-server içinde npm install (Node 20.12+).

  2. 2

    Anahtar

    .env.example dosyasını .env olarak kopyala ve test anahtarını (sk_test_…) PERLY_PAY_SECRET_KEY içine yaz.

  3. 3

    Hazırla

    npm run setup senin anahtarınla bir ürün ve fiyat oluşturur ve .env için kimliklerini yazdırır.

  4. 4

    Çalıştır

    README'sinde dediği gibi npm start (ya da npm run dev).

  5. 5

    Cüzdansız öde

    Onu Claude Code'a ekle (claude mcp add paid-tools -- npx tsx "$PWD/src/server.ts"), word_stats çalıştır: yanıt bir yükleme sayfası. Bir paket seç, Simulate payment'a bas ve tekrar çalıştır.

Tuzaklar

  • Başkalarının kopyaladığı MCP yapılandırmasında PERLY_PAY_SECRET_KEY. Sunucuyu kendinde barındır ya da kendi backend'ine bağlansın.
  • İşten sonra düşmek: başarısız bir düşüm o zaman bedava iş demektir.
  • Düşüm anahtarını JSON-RPC kimliğinden almak: onu istemci seçer ve aynı kimlik ilk düşümü döndürür, böylece araç yine bedava çalışır.