10 মিনিটে আপনার MCP সার্ভারকে মুনাফা করুন।
AI এজেন্টগুলিকে আপনার MCP সার্ভারের জন্য প্রতি কলের জন্য USDC-তে পেমেন্ট করতে দিন, স্বাক্ষরিত ওয়েবহুক এবং অডিট লগ সহ। x402-সঙ্গতিপূর্ণ। ড্রপ-ইন মিডলওয়্যার।
আপনি একটি MCP সার্ভার তৈরি করেছেন। হাজার হাজার ক্লায়েন্ট এটি বিনামূল্যে ব্যবহার করছে।
আপনি আপনার MCP সার্ভারটি চালু করেছেন কারণ Claude Desktop, Cursor, এবং Cline ক্লায়েন্টদের সক্ষমতার প্রয়োজন ছিল। খবর ছড়িয়ে পড়েছে। আপনি এখন AI এজেন্টদের কাছ থেকে প্রতিদিন হাজার হাজার পেইড-টুল আহ্বান পরিবেশন করছেন যাদের আপনি কখনও দেখেননি। আপনার ইগ্রেস বিল বাস্তব। আপনার নীচের পরিষেবার জন্য API কী বাস্তব। আপনার রক্ষণাবেক্ষণের সময় বাস্তব। রাজস্ব শূন্য।
আপনার তিনটি বিকল্প রয়েছে। এটি বিনামূল্যে রাখুন এবং অবকাঠামোর উপর অর্থ পুড়িয়ে দিন। এটি ম্যানুয়াল API কী এর পিছনে গেট করুন (এবং সাইনআপ ফর্মের ঘর্ষণের কারণে এজেন্ট ট্রাফিকের 95% হারান)। অথবা একটি পেমেন্ট স্তর যোগ করুন যা AI এজেন্টগুলি সত্যিই সম্পন্ন করতে পারে - যা 402 Payment Required + USDC এর জন্য তৈরি।
Blockchain0x বিকল্প তিন। আপনার MCP সার্ভার আমাদের API-তে নির্দেশ করে। যখন একটি AI ক্লায়েন্ট একটি পেইড টুল কল করে, তখন প্রতিক্রিয়া হল 402 একটি হোস্ট করা পেমেন্ট URL সহ। ক্লায়েন্ট (অথবা এর মানব তত্ত্বাবধায়ক) USDC-তে পেমেন্ট করে। আপনার ওয়েবহুকটি কাজ করে। সেই ক্লায়েন্ট থেকে পরবর্তী কল সফল হয়। পুরো আকৃতিটি x402 নামে পরিচিত, এবং এটি সেই নির্দিষ্ট প্যাটার্নের জন্য Coinbase প্রকাশিত প্রোটোকল।
কিভাবে 402 পেমেন্ট প্রয়োজন একটি প্রোগ্রাম্যাটিক চেকআউট হয়ে যায়।
HTTP স্ট্যাটাস কোড 402 প্রথমবার স্পেসিফিকেশন লেখা হয়েছিল তখন থেকে বিদ্যমান কিন্তু কখনও একটি মানক বাস্তবায়ন ছিল না। Coinbase-এর x402 প্রোটোকল অবশেষে এটিকে একটি দেয়। আকারটি সহজ: আপনার টুল একটি 402 চ্যালেঞ্জ ফেরত দেয় (কিভাবে পেমেন্ট করতে হয় তা বর্ণনা করে একটি কাঠামোবদ্ধ JSON বডি); ক্লায়েন্ট পেমেন্ট করে এবং পুনরায় চেষ্টা করে; কল সফল হয়। @blockchain0x/mcp থেকে requirePayment আপনার জন্য সেই চ্যালেঞ্জ বডি তৈরি করে।
{
"error": "payment_required",
"amountUsdc": "0.02",
"payTo": "0xYourMcpAgentAddress",
"hostedUrl": "https://pay.blockchain0x.com/checkout/docs-search",
"network": "mainnet",
"description": "docs search"
}চারটি রাষ্ট্র
- অর্থ প্রদান না করা কল: AI ক্লায়েন্ট একটি পেইড টুল আহ্বান করে। আপনার হ্যান্ডলার আপনার নিজস্ব পেইড-স্টেট পরীক্ষা করে, পেমেন্টকারীকে অর্থ প্রদান হিসাবে চিহ্নিত করা হয়নি, এবং requirePayment থেকে 402 চ্যালেঞ্জ বডি একটি টুল ত্রুটি হিসাবে ফেরত দেয়।
- পেমেন্ট: ক্লায়েন্ট হোস্টেড URL অনুসরণ করে হোস্টেড চেকআউটে যায় এবং Base-এ USDC স্থানান্তর সম্পন্ন করে (বা একটি x402-সচেতন ওয়ালেটের মাধ্যমে প্রোগ্রাম্যাটিকভাবে অথবা QR কোডের মাধ্যমে ম্যানুয়ালি)।
- ওয়েবহুক: Blockchain0x চেইন নিশ্চিতকরণের কয়েক সেকেন্ডের মধ্যে আপনার এন্ডপয়েন্টে payment.received চালায়। আপনি এটি webhooks.verify দিয়ে যাচাই করেন এবং আপনার নিজস্ব স্টোরে পেমেন্টকারীকে অর্থ প্রদান হিসাবে রেকর্ড করেন।
- পুনরায় চেষ্টা করুন: ক্লায়েন্ট মূল MCP টুল কলটি পুনরায় চেষ্টা করে। আপনার হ্যান্ডলার এখন পেমেন্টকারীকে অর্থ প্রদান হিসাবে চিহ্নিত করে, টুলটি চালায় এবং প্রকৃত ফলাফল ফেরত দেয়।
প্রতিটি পেমেন্ট আপনার Blockchain0x ড্যাশবোর্ডে রেকর্ড করা হয়, এবং প্রতিটি payment.received ওয়েবহুক আপনার নিজস্ব লগে আসে। যেহেতু আপনি পেইড-স্টেট এবং ওয়েবহুক হ্যান্ডলার মালিক, প্রতি-টুল এবং প্রতি-পেমেন্টকারী রাজস্ব বিশ্লেষণ আপনার ইতিমধ্যে সংরক্ষিত তথ্য থেকে বেরিয়ে আসে।
একটি সম্পূর্ণ কাজের উদাহরণ।
requirePayment from @blockchain0x/mcp 402 চ্যালেঞ্জ তৈরি করে; webhooks.verify from @blockchain0x/node নিশ্চিতকরণ যাচাই করে। আপনার কাছে দুটি ছোট টুকরা রয়েছে: টুলের মধ্যে পেইড-স্টেট চেক এবং ওয়েবহুক হ্যান্ডলার যা একজন পেমেন্টকারীকে পেইড হিসাবে চিহ্নিত করে। নীচে একটি সম্পূর্ণ MCP সার্ভার রয়েছে যা একটি পেইড টুল এবং এর ওয়েবহুক এন্ডপয়েন্ট প্রকাশ করে।
import express from "express";
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { requirePayment } from "@blockchain0x/mcp";
import { webhooks } from "@blockchain0x/node";
const server = new McpServer({ name: "docs-search", version: "1.0.0" });
// You decide who counts as paid. Back this with Redis/Postgres in production.
const paid = new Set<string>();
server.tool(
"search_docs",
"Semantic search across our docs",
{ query: { type: "string" }, payer: { type: "string" } },
async ({ query, payer }) => {
if (!paid.has(`search_docs:${payer}`)) {
// Not paid yet: build an x402-compatible 402 challenge and return its
// body as a tool error. requirePayment is a challenge builder - it does
// not gate the call for you; this check is yours.
const { body } = requirePayment({
amountUsdc: "0.02",
payTo: "0xYourMcpAgentAddress",
hostedUrl: "https://pay.blockchain0x.com/checkout/docs-search",
description: "docs search",
});
return { content: [{ type: "text", text: JSON.stringify(body) }], isError: true };
}
const results = await runVectorSearch(query);
return { content: [{ type: "text", text: JSON.stringify(results) }] };
},
);
// Your webhook endpoint marks a payer as paid once the checkout settles.
const app = express();
app.post("/webhooks/blockchain0x", express.raw({ type: "*/*" }), (req, res) => {
const r = webhooks.verify({ headers: req.headers, rawBody: req.body, secret: process.env.BLOCKCHAIN0X_WEBHOOK_SECRET! });
if (!r.ok) return res.status(400).json({ code: r.code });
if (r.eventType === "payment.received") {
// Resolve (tool, payer) from the reference you encoded in hostedUrl, then:
paid.add("search_docs:0xPayer");
}
res.json({ received: true });
});সেটআপ পদক্ষেপ
- 1আপনার MCP সার্ভারের জন্য একটি Blockchain0x এজেন্ট ওয়ালেট তৈরি করুন, একটি পরিকল্পনায় যা API এবং ওয়েবহুক অ্যাক্সেস অন্তর্ভুক্ত করে। আপনি যে ওয়ালেট ঠিকানা payTo হিসাবে ব্যবহার করবেন তা নোট করুন।
- 2প্যাকেজগুলি ইনস্টল করুন:
npm install @blockchain0x/mcp @blockchain0x/node - 3পরিবেশের পরিবর্তনশীল সেট করুন: BLOCKCHAIN0X_API_KEY (MCP সার্ভার এটি Authorization: Bearer হিসেবে পাঠায়) এবং BLOCKCHAIN0X_WEBHOOK_SECRET (ড্যাশবোর্ড স্বাক্ষর গোপনীয়তা webhooks.verify এর বিরুদ্ধে পরীক্ষা করে)।
- 4আপনার পেইড টুলগুলি গেট করুন আপনার নিজস্ব পেইড-স্টেট পরীক্ষা করে এবং কলকারী অর্থ প্রদান না করলে requirePayment চ্যালেঞ্জ বডি ফেরত দিয়ে। ফ্রি টুলগুলি অগেটেড রাখুন।
- 5ওয়েবহুক এন্ডপয়েন্ট কনফিগার করুন Blockchain0x ড্যাশবোর্ডে (যেমন /webhooks/blockchain0x), তারপর প্রতিটি ডেলিভারি webhooks.verify দিয়ে যাচাই করুন এবং payment.received এ পেমেন্টকারীকে অর্থ প্রদান হিসাবে চিহ্নিত করুন।
- 6প্রয়োগ করুন। প্রথম AI ক্লায়েন্ট যে আপনার পেইড টুলে আঘাত করে 402 পায়, পেমেন্ট করে, এবং পরবর্তী কল সফল হয়। আপনি 10 সেকেন্ডের মধ্যে ড্যাশবোর্ডে পেমেন্ট দেখতে পান।
আপনি npx @blockchain0x/mcp (stdio) দিয়ে Blockchain0x MCP সার্ভারটি নিজেই চালাতে পারেন অথবা mcp.blockchain0x.com-এ হোস্ট করা Streamable HTTP কন্টেইনারটি চালাতে পারেন। সম্পূর্ণ সেটআপ, যার মধ্যে ওয়েবহুক পে-লোড আকারগুলি অন্তর্ভুক্ত রয়েছে, ডকুমেন্টেশন এ রয়েছে।
আপনার হ্যান্ডলারে সবচেয়ে গুরুত্বপূর্ণ একক সিদ্ধান্ত।
যেহেতু আপনি পেইড-স্টেটের মালিক, আপনি এটি নির্ধারণ করেন যে একটি পেমেন্ট কতক্ষণ গণনা করে। একটি ক্লায়েন্ট একটি টুলের জন্য পরিশোধ করার পরে, তাদের কিছু সময়ের জন্য পেইড চিহ্নিত রাখুন, এবং সেই উইন্ডোর মধ্যে নতুন পেমেন্ট ছাড়াই কলগুলি চালানোর অনুমতি দিন। উইন্ডোটি খুব সংক্ষিপ্ত সেট করুন এবং আপনি প্রতিটি কলের জন্য ক্লায়েন্টদের পেমেন্টের ঘর্ষণে শাস্তি দেন; এটি খুব দীর্ঘ সেট করুন এবং আপনি একটি সস্তা পেমেন্টের পরে ব্যয়বহুল অপারেশনগুলি ছেড়ে দেন। আপনার Redis/Postgres কীতে একটি TTL এটি বাস্তবায়নের সবচেয়ে সহজ উপায়।
আমরা যে উইন্ডোগুলি সুপারিশ করি
| টুলের ধরন | জানালা | কেন |
|---|---|---|
| সস্তা লুকআপ ($0.01-$0.05) | 60 সেকেন্ড | প্রাকৃতিক পুনরায় চেষ্টা এবং অনুসরণ কলগুলি শোষণ করে সেশন না দিয়ে। |
| মধ্যম মূল্যের ইনফারেন্স ($0.10-$1) | 30 সেকেন্ড | প্রতি কলের জন্য পেমেন্ট সঠিক আকার; সংক্ষিপ্ত ক্যাশ অস্থায়ী ত্রুটির উপর পুনরায় চেষ্টা পরিচালনা করে। |
| মুল্যবান দীর্ঘ-প্রসঙ্গ ($1-$10) | 0 সেকেন্ড (কোন ক্যাশ নেই) | প্রতিটি কল তার নিজস্ব পেইড ইভেন্ট; কোন ক্যাশিং নেই। |
| সাবস্ক্রিপশন-শৈলীর টুলস | 24 ঘণ্টা | প্রতিদিন একবার পেমেন্ট করুন সীমাহীন কলের জন্য। কম ঘর্ষণে প্রতি ক্লায়েন্টে উচ্চতর রাজস্ব। |
আপনার পেইড-স্টেটকে (পেমেন্টকারী ওয়ালেট, টুল) জোড়া দ্বারা কী করুন, যেমন উদাহরণটি search_docs:0xPayer এর সাথে করে। দুটি ভিন্ন ক্লায়েন্ট একই টুলে আঘাত করে, প্রত্যেকে আলাদাভাবে পেমেন্ট করে। একই ক্লায়েন্ট দুটি ভিন্ন টুলে আঘাত করে, দুটি আলাদা পেমেন্ট প্রয়োজন। আপনি যদি চান তবে এটি আরও বিস্তৃতভাবে (সমস্ত টুলের মধ্যে প্রতি পেমেন্টকারী) স্কোপ করতে পারেন; প্রতি-পেমেন্টকারী প্রতি-টুলের সূক্ষ্মতা হল যা মূল্য নির্ধারণকে ন্যায়সঙ্গত করে।
চারটি মূল্য নির্ধারণের রূপ যা MCP সার্ভারগুলির জন্য কাজ করে।
মূল্য নির্ধারণ আপনার সিদ্ধান্ত - আপনি মিডলওয়্যারে প্রতি টুলের পরিমাণ নির্ধারণ করেন। নিচে চারটি প্যাটার্ন রয়েছে যা আমরা সবচেয়ে বেশি দেখি এবং কোন টুলের আকারে তারা ফিট করে।
প্রতি কল মাইক্রো-মূল্য নির্ধারণ
$0.01 - $0.05 প্রতি কলঅনুসন্ধান, লুকআপ, শ্রেণীবিভাগ, ফরম্যাট রূপান্তর - উচ্চ ভলিউমের সাথে সস্তা অপারেশন।
ক্লায়েন্টদের জন্য সর্বনিম্ন ফ্রিকশন; ব্যবহারের সাথে খরচ সঠিকভাবে মেলে।
সর্বাধিক লেনদেনের খরচ; শুধুমাত্র উচ্চ কল ভলিউমে কাজ করে।
প্রতি কল মধ্যম-মূল্য নির্ধারণ
$0.10 - $1.00 প্রতি কলLLM ইনফারেন্স, উৎপাদন, কন্টেন্ট উৎপাদন, কিছুই যেখানে প্রতিটি কল বাস্তব কাজ করে।
সন্তুলিত - প্রতি কলের জন্য স্পষ্ট মূল্য, পরিচালনাযোগ্য লেনদেনের সংখ্যা।
প্রতি কলের জন্য উচ্চ ফ্রিকশন; ক্লায়েন্টরা কখনও কখনও এই মূল্য পয়েন্টে সাবস্ক্রিপশন পছন্দ করে।
প্রতি কল উচ্চ-মূল্য নির্ধারণ
$1 - $10 প্রতি কলদীর্ঘ-প্রসঙ্গ উৎপাদন, নথি প্রক্রিয়াকরণ, বহু-ধাপ সমন্বয়, ব্যয়বহুল তৃতীয়-পক্ষ API র্যাপিং।
প্রতি কলের মার্জিন অর্থপূর্ণ; ব্যর্থ পেমেন্ট সহনশীল ক্ষতি।
ক্লায়েন্টরা এই দামে কঠোরভাবে আলোচনা করে; ফেরত চাওয়ার আশা করুন।
সাবস্ক্রিপশন উইন্ডো
$5 - $50 প্রতি 24 ঘণ্টার উইন্ডো (অথবা $X প্রতি মাসে)ক্লায়েন্ট যারা একটি সেশনে অনেক কল করে এবং প্রতি কলের পেমেন্টের বাধা সহ্য করবে না।
প্রতি ক্লায়েন্টে উচ্চতর রাজস্ব; প্রতি কলের খরচ কম।
নিম্ন আবিষ্কারযোগ্যতা; ক্লায়েন্টদের আগে থেকে প্রতিশ্রুতি দিতে হবে। প্রায়ই হাইব্রিড মূল্য নির্ধারণের জন্য প্রতি কলের সাথে সংমিশ্রিত হয়।
অনেক অপারেটর প্যাটার্নগুলি মিশ্রণ করেন: প্রতি-কল মাইক্রো-মূল্যায়নে সস্তা টুল, প্রতি-কল উচ্চ-মূল্যায়নে ব্যয়বহুল টুল, পাশাপাশি ভারী ব্যবহারকারীদের জন্য 24 ঘন্টার সাবস্ক্রিপশন উইন্ডো। কিছুই আপনাকে একই MCP সার্ভারে তিনটি চালানোর জন্য থামায় না; প্রতিটি টুল requirePayment এ তার নিজস্ব amountUsdc এবং আপনার হ্যান্ডলারে তার নিজস্ব পেইড-উইন্ডো সেট করে।
প্রো প্রায় প্রতিটি MCP সার্ভারের জন্য সঠিক পরিকল্পনা।
MCP সার্ভার অপারেটররা প্রায়শই Pro তে শুরু করে কারণ API লেখার অ্যাক্সেস এবং ওয়েবহুকগুলি প্রথম দিন থেকেই প্রয়োজন: ফ্রি পড়ার জন্য-শুধু, এবং একটি পেইড টুলকে payment.received ওয়েবহুক গ্রহণ করতে এবং সেগুলি যাচাই করতে হবে। সঠিক প্রতি-এজেন্ট খরচ এবং যেখানে লেনদেন-ফি স্তরগুলি রয়েছে তা দেখতে মূল্য নির্ধারণ পৃষ্ঠাটি দেখুন; সংক্ষিপ্ত সংস্করণ হল যে কোন সার্ভার যা বাস্তব পেইড ভলিউম করছে তা Pro নিজেকে পরিশোধ করার পয়েন্টের অনেক দূরে।
- Free: API এবং dashboard নিয়ে experiment করার জন্য উপযোগী। production paid tool-এর জন্য উপযুক্ত নয় (read-only, no webhooks)।
- Pro: live MCP server-এর default। সম্পূর্ণ API access, webhooks, export।
- Business: যখন compliance-এর জন্য audit log দরকার হয়, অথবা যখন আপনি multiple client-এর জন্য MCP server চালান এবং per-agent team-seat sharing চান।