@ixo/asks-mcp 2.0.0-dev.4 → 2.0.0-dev.5

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/dist/asks-mcp.mjs +11 -11
  2. package/package.json +1 -1
package/dist/asks-mcp.mjs CHANGED
@@ -266910,11 +266910,11 @@ async function cashOut(deps, input) {
266910
266910
  const kyc = ready.body.kyc;
266911
266911
  if (!ready.body.linkedin) return "Cash-out needs your LinkedIn connected first. Next: connect_linkedin (about a minute), then cash_out again.";
266912
266912
  const available = payBase / 1e6;
266913
- if (available <= 0) return "You have no PAY to cash out yet.";
266913
+ if (available <= 0) return "You have nothing to cash out yet.";
266914
266914
  const kycLine = kyc?.status === "verified" ? "" : kyc?.status === "expired" ? `Your identity check has expired. Renew it first: ${deps.site.replace(/\/+$/, "")}/me/identity` : `Cash-out needs an identity check. If you haven't done it yet, do it first: ${deps.site.replace(/\/+$/, "")}/me/identity`;
266915
266915
  if (kyc?.status === "expired") return kycLine;
266916
266916
  const country = input.country?.trim().toUpperCase();
266917
- if (!country || !/^[A-Z]{2}$/.test(country)) return [`You have $${available.toFixed(2)} in PAY to cash out.`, kycLine, 'Which country are you in? (Ask the person; then call cash_out with country, like "NG" or "DE".)'].filter(Boolean).join("\n");
266917
+ if (!country || !/^[A-Z]{2}$/.test(country)) return [`You have $${available.toFixed(2)} to cash out.`, kycLine, 'Which country are you in? (Ask the person; then call cash_out with country, like "NG" or "DE".)'].filter(Boolean).join("\n");
266918
266918
  const info = await call2(deps, `/api/cashout/info?country=${country}`);
266919
266919
  if (info.status !== 200) return said3(info);
266920
266920
  const methods = info.body.methods ?? [];
@@ -266923,7 +266923,7 @@ async function cashOut(deps, input) {
266923
266923
  const chosen2 = methods.find((one) => one.method === input.method);
266924
266924
  if (!chosen2)
266925
266925
  return [
266926
- `You have $${available.toFixed(2)} in PAY. Ways to get paid in ${country}:`,
266926
+ `You have $${available.toFixed(2)} to cash out. Ways to get paid in ${country}:`,
266927
266927
  ...methods.map((one) => `- ${WAYS[one.method] ?? one.method} (method "${one.method}"): $${one.minUsd} to $${one.maxUsd}`),
266928
266928
  `Fee: ${fee?.bps ? `${fee.bps / 100}%` : "none"}${fee?.minUsd && Number(fee.minUsd) > 0 ? `, at least $${fee.minUsd}` : ""}.`,
266929
266929
  kycLine,
@@ -266931,11 +266931,11 @@ async function cashOut(deps, input) {
266931
266931
  ].filter(Boolean).join("\n");
266932
266932
  const amount3 = input.amount_usd?.trim().replace(/^\$/, "");
266933
266933
  if (!amount3 || !/^\d+(\.\d{1,2})?$/.test(amount3)) return `How much do you want to cash out? You have $${available.toFixed(2)}; this way takes $${chosen2.minUsd} to $${chosen2.maxUsd}. (Then call cash_out with amount_usd, like "25".)`;
266934
- if (Number(amount3) > available) return `You have $${available.toFixed(2)} in PAY, less than $${amount3}. Pick a smaller amount.`;
266934
+ if (Number(amount3) > available) return `You have $${available.toFixed(2)} to cash out, less than $${amount3}. Pick a smaller amount.`;
266935
266935
  if (Number(amount3) < Number(chosen2.minUsd)) return `The smallest you can cash out this way is $${chosen2.minUsd}.`;
266936
266936
  if (Number(amount3) > Number(chosen2.maxUsd)) return `The largest you can cash out this way is $${chosen2.maxUsd}.`;
266937
266937
  const to = input.to?.trim();
266938
- if (chosen2.fields.includes("address") && !(to && BASE_ADDRESS.test(to))) return "Which Base address should receive the USDC? (An 0x\u2026 address on Base; then call cash_out with to.)";
266938
+ if (chosen2.fields.includes("address") && !(to && BASE_ADDRESS.test(to))) return "Which Base account should receive it? (Its address starts with 0x; then call cash_out with to.)";
266939
266939
  const quote = await signedCall(deps, "quote", { method: chosen2.method, country, amountUsd: amount3 });
266940
266940
  if (quote.status !== 201) return said3(quote);
266941
266941
  const q = quote.body;
@@ -266979,7 +266979,7 @@ ${NAME_LINE}`;
266979
266979
  case "cancelled":
266980
266980
  return "This cash-out didn't go through, and nothing was taken.";
266981
266981
  case "refunded":
266982
- return "Your PAY was sent back to you.";
266982
+ return "Your money was sent back to you.";
266983
266983
  default:
266984
266984
  return `State: ${v.state ?? "unknown"}.`;
266985
266985
  }
@@ -266991,7 +266991,7 @@ var init_cashout = __esm({
266991
266991
  init_accountProof();
266992
266992
  init_inviteProof();
266993
266993
  WAYS = {
266994
- usdc_base: "USDC on Base (any country)",
266994
+ usdc_base: "Digital dollars to your own Base account (any country)",
266995
266995
  stripe_bank: "Bank account, through Stripe",
266996
266996
  yellowcard_bank: "Bank account, through Yellow Card",
266997
266997
  yellowcard_momo: "Mobile money, through Yellow Card"
@@ -292365,7 +292365,7 @@ import { randomBytes as randomBytes7 } from "node:crypto";
292365
292365
  // package.json
292366
292366
  var package_default = {
292367
292367
  name: "@ixo/asks-mcp",
292368
- version: "2.0.0-dev.4",
292368
+ version: "2.0.0-dev.5",
292369
292369
  description: "The Openhands Network MCP server: read the board, answer asks, post work and get paid on the ixo chain, with a key of its own on your machine.",
292370
292370
  license: "Apache-2.0",
292371
292371
  repository: {
@@ -292588,8 +292588,8 @@ var TOOLS = {
292588
292588
  annotations: { ...acts, idempotentHint: true }
292589
292589
  },
292590
292590
  cash_out: {
292591
- title: "Cash out your PAY",
292592
- description: `Turn the PAY the person earned into money: USDC on Base, or a bank account where offered. One step per call: it reads their PAY, their LinkedIn and identity check, then asks the country, the way to get paid, the amount and (for USDC) the Base address, and shows the quote in plain words ("You'll receive $X (fee $0)"). With confirm: true it gives ONE link: the person opens it and confirms with one tap; that page checks their identity and they sign there. Limits and fees come from IXO's cash-out service, never from here. No LinkedIn: say connect_linkedin first. Signs no money and holds no key of theirs.`,
292591
+ title: "Cash out your earnings",
292592
+ description: `Turn what the person earned into money: digital dollars to your own Base account, or a bank account where offered. One step per call: it reads what they have available, their LinkedIn and identity check, then asks the country, the way to get paid, the amount and (for a Base account) the address, and shows the quote in plain words ("You'll receive $X (fee $0)"). With confirm: true it gives ONE link: the person opens it and confirms with one tap; that page checks their identity and they sign there. Limits and fees come from IXO's cash-out service, never from here. No LinkedIn: say connect_linkedin first. Signs no money and holds no key of theirs.`,
292593
292593
  spends: false,
292594
292594
  hosted: false,
292595
292595
  annotations: acts
@@ -296164,7 +296164,7 @@ tx ${result.transactionHash}${leftWords}`);
296164
296164
  country: external_exports.string().max(2).optional().describe("Where the person lives: two letters, like NG or DE."),
296165
296165
  method: external_exports.string().max(40).optional().describe("The way to get paid, as cash_out listed it (like usdc_base)."),
296166
296166
  amount_usd: external_exports.string().max(12).optional().describe('How much, in dollars, like "25" or "25.50".'),
296167
- to: external_exports.string().max(64).optional().describe("USDC on Base only: the 0x\u2026 address that receives it."),
296167
+ to: external_exports.string().max(64).optional().describe("Base account only: the 0x\u2026 address that receives it."),
296168
296168
  confirm: external_exports.boolean().optional().describe("true, after the person said yes to the quote: gives the one link to confirm.")
296169
296169
  }
296170
296170
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ixo/asks-mcp",
3
- "version": "2.0.0-dev.4",
3
+ "version": "2.0.0-dev.5",
4
4
  "description": "The Openhands Network MCP server: read the board, answer asks, post work and get paid on the ixo chain, with a key of its own on your machine.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {