reloadpi-mcp 1.3.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.js +7 -4
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -108,7 +108,7 @@ function coversCountry(offer, code) {
108
108
  function createMcpServer() {
109
109
  const server = new McpServer({
110
110
  name: "reloadpi",
111
- version: "1.3.0",
111
+ version: "1.3.1",
112
112
  });
113
113
 
114
114
  // ═══════════════════════════════════════════════════════════════════════════
@@ -213,6 +213,7 @@ function createMcpServer() {
213
213
  "So for a Thailand plan use country:\"TH\", or regions:\"Southeast Asia\" for all single-country plans in that area. " +
214
214
  "Regional bundles exist only for the values offered by `regional_region`; \"Southeast Asia\", \"South Asia\" and \"South America\" have single-country plans but no bundles, which is why `regional_region` does not offer them. " +
215
215
  "Results include roamingCountries / roamingCount, the countries a regional bundle actually covers — roamingCountries holds full country names (with the raw ISO-2 codes in roamingCountriesCodes); check these to confirm a bundle includes the countries the user needs. " +
216
+ "PRICES: each plan has `agent_price_usd` — the exact USDC that purchase_esim charges — and `price` (minor units), which is the webapp checkout price behind buy_url, NOT what purchase_esim charges. Quote agent_price_usd when the user will buy through purchase_esim. " +
216
217
  "Free — no payment. Returns offer IDs and prices; use them with purchase_esim (requires a self-hosted wallet).",
217
218
  {
218
219
  country: z.string().optional().describe("ISO-2 country code for one specific country, e.g. ES, US, JP."),
@@ -499,7 +500,7 @@ function createMcpServer() {
499
500
 
500
501
  server.tool(
501
502
  "get_esim_offer",
502
- "Get full details for a specific eSIM plan by ID — exact price, data allowance, duration, coverage countries, and whether data is unlimited. Costs a small x402 fee from your wallet.",
503
+ "Get full details for a specific eSIM plan by ID — exact price, data allowance, duration, coverage countries, and whether data is unlimited. `price` here (minor units, divide by priceCurrencyDivisor) is the exact USDC amount purchase_esim charges — the same as agent_price_usd in browse_esim_offers. Costs a small x402 fee from your wallet.",
503
504
  {
504
505
  offerId: z.string().describe("eSIM offer ID e.g. ESIM-ES-7D-10GB-NOROAM"),
505
506
  },
@@ -510,7 +511,9 @@ function createMcpServer() {
510
511
  }
511
512
  );
512
513
 
513
- // ── Purchase (paid — product price + markup, x402) ─────────────────────────
514
+ // ── Purchase (paid, x402) ──────────────────────────────────────────────────
515
+ // Vouchers/topups: product price + markup. eSIM: the plan's agent_price_usd
516
+ // (min $4, else catalog price + 15%) — priced by the backend, not here.
514
517
 
515
518
  server.tool(
516
519
  "purchase_voucher",
@@ -561,7 +564,7 @@ function createMcpServer() {
561
564
 
562
565
  server.tool(
563
566
  "purchase_esim",
564
- "Purchase an eSIM data plan. The x402 payment (USDC on Base) settles automatically from YOUR wallet. Provide offerId from browse_esim_offers. Returns orderId, txHash, ICCID and QR code (base64 PNG) when ready. If QR is not immediately available, poll get_order with the returned orderId.",
567
+ "Purchase an eSIM data plan. The x402 payment (USDC on Base) settles automatically from YOUR wallet and is exactly the plan's agent_price_usd from browse_esim_offers (the `price` from get_esim_offer). Provide offerId from browse_esim_offers. Returns orderId, txHash, ICCID and QR code (base64 PNG) when ready. If QR is not immediately available, poll get_order with the returned orderId.",
565
568
  {
566
569
  offerId: z.string().describe("eSIM offer ID from browse_esim_offers"),
567
570
  iccid: z.string().optional().describe("Existing ICCID — only for top-up/recharge of an installed eSIM"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "reloadpi-mcp",
3
- "version": "1.3.0",
3
+ "version": "1.3.1",
4
4
  "description": "Reloadpi MCP server — browse and purchase eSIMs, vouchers, and topups via x402 (USDC on Base)",
5
5
  "type": "module",
6
6
  "main": "index.js",