Penniless Data Utilities

السجل الرسمي أدوات المطورين

Ten x402-paid tools for JSON, YAML, cron, diff, text, DNS, WHOIS, GitHub, crypto, and email.

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

Remote (streamable-http)
Claude Code
claude mcp add --transport http penniless-data-utilities 'https://penniless-json-repair.sjaman.workers.dev/mcp'
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "penniless-data-utilities": {
            "type": "http",
            "url": "https://penniless-json-repair.sjaman.workers.dev/mcp"
        }
    }
}

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. Penniless Data Utilities
  2. Pricing
  3. Connect over MCP
  4. Tools
  5. Development
  6. Maintainer

Penniless Data Utilities

Nine deterministic data and lookup tools for AI agents, paid per call in USDC. REST advertises both native MPP and x402; MCP uses x402 v2. No accounts, no API keys, no rate-limit tiers. Every tool is pure computation or a keyless public lookup — none of them call another AI model, so results are reproducible.

Pricing

$0.001 USDC per call. REST advertises native MPP plus x402 v2 (eip155:8453, scheme exact); MCP uses x402 v2.

Base x402 settlements are verified by the free-tier PayAI facilitator. Native MPP is negotiated by mppx. Recipient (payTo): 0x3D98800c64C345950E1eAaa076D88C12d1BF5F37.

Connect over MCP

Any MCP client that speaks streamable HTTP can connect directly:

{
  "mcpServers": {
    "penniless-data-utilities": {
      "type": "http",
      "url": "https://penniless-json-repair.sjaman.workers.dev/mcp"
    }
  }
}

The transport is stateless — no session id is issued or required, and every request is independent. initialize and tools/list are free. An unpaid tools/call returns an x402 payment-required payload in result.content[0].text (and result.structuredContent); attach the signed payment as params._meta["x402/payment"] and repeat the call.

If you use an x402-aware MCP client, @x402/mcp handles that exchange for you.

Tools

MCP nameREST pathArgumentsReturns
repair_jsonPOST /repair/json{input}repaired JSON + which fixes applied
yaml_to_jsonPOST /yaml/tojson{input}parsed value + warnings
cron_next_runPOST /cron/nextrun{expr, after?}next UTC fire time
text_diffPOST /diff{old, new, context?}unified diff + counts
text_extractPOST /text/extract{input, numbers?, codeBlocks?}text, title, headings, links, URLs, emails
domain_whoisPOST /domain/whois{domain}registrar, statuses, expiry, nameservers, DNSSEC
dns_lookupPOST /dns/lookup{domain, type?}DoH answers for A/AAAA/CNAME/MX/TXT/NS/SOA/PTR/SRV/CAA
github_repo_statsPOST /github/repo-stats{repo}stars, forks, open issues, language, license
email_validatePOST /email/validate{email}syntax + live MX deliverability

POST /diagnose is free: it classifies what is wrong with a malformed JSON payload without returning the repaired output, so a caller can check whether paying is worthwhile before paying.

Example (REST + x402 client)

Any x402 v2 client works. With the reference TypeScript client and a viem account:

import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { wrapFetchWithPayment } from "@x402/fetch";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(key), networks: ["eip155:8453"] });
const pay = wrapFetchWithPayment(fetch, client);

const res = await pay("https://penniless-json-repair.sjaman.workers.dev/repair/json", {
  method: "POST",
  headers: { "content-type": "application/json" },
  body: JSON.stringify({ input: "{foo: 'bar',}" }),
});
// -> { ok: true, repaired: { foo: "bar" }, applied: ["unquoted-keys","single-quotes","trailing-commas"] }

wrapFetchWithPayment handles the 402 round-trip: it receives the requirement, signs the USDC authorization, retries, and only returns a 200 once the facilitator has settled.

Development

npm install
npm test        # 133 tests, runs fully offline (facilitator + upstream are injected)
npx wrangler dev
npx wrangler deploy

Environment (set in wrangler.toml): X402_NETWORK, X402_FACILITATOR, X402_PRICE, X402_PAY_TO. Production also has an encrypted Cloudflare secret MPP_SECRET_KEY used only to authenticate MPP challenges. Wallet private keys are never deployed to the Worker.

Maintainer

GitHub: @danielarif26

الأسئلة الشائعة

ما هو Penniless Data Utilities؟

Ten x402-paid tools for JSON, YAML, cron, diff, text, DNS, WHOIS, GitHub, crypto, and email.

كيف أثبّت Penniless Data Utilities؟

يعمل كخادم بعيد. في Claude Code: claude mcp add --transport http penniless-data-utilities 'https://penniless-json-repair.sjaman.workers.dev/mcp'. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج Penniless Data Utilities إلى مفتاح API؟

لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.

هل Penniless Data Utilities مفتوح المصدر؟

شيفرته علنية على GitHub، لكن المستودع لا يعلن ترخيصًا قياسيًا.

من يصون Penniless Data Utilities؟

ينشره danielarif26. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.