Mpp32 MCP Server vs XFuel

A side-by-side look at the Mpp32 MCP Server and XFuel MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Mpp32 MCP Server logoMpp32 MCP ServerFinance & Fintech · Local subprocess (stdio)Payment layer for AI agents. One MCP, five protocols, thousands of paid APIs your agent can call.65GreatAuth: not declaredXFuel logoXFuelFinance & Fintech · Local subprocess (stdio)Submit AI inference to XFuel, pay per task (USDC via x402 or TFUEL), fetch/verify ZK proofs.60GoodAuth: not declared

Verdict: choose Mpp32 MCP Server for finance & fintech work as a local process; choose XFuel for finance & fintech as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Mpp32 MCP Server logoChoose Mpp32 MCP Server when

  • You need dedicated capabilities in the Finance & Fintech domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: MPP32_AGENT_KEY, MPP32_SOLANA_PRIVATE_KEY, MPP32_PRIVATE_KEY.
  • You want tools like get_mpp32_diagnostics, debug_mpp32, list_mpp32_services.
Explore Mpp32 MCP Server

XFuel logoChoose XFuel when

  • You need dedicated capabilities in the Finance & Fintech domain.
  • You prefer a local stdio subprocess transport.
  • You want tools like chat_completions, submit_inference, register_agent.
Explore XFuel

Feature & specification comparison

Rows where the two servers differ are marked.

SpecMpp32 MCP Server logoMpp32 MCP ServerXFuel logoXFuel
CategoryFinance & FintechFinance & Fintech
Quality signal65/100 · Great60/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredNot declared
PricingNot declaredNot declared
Required env varsMPP32_AGENT_KEYMPP32_SOLANA_PRIVATE_KEYMPP32_PRIVATE_KEYNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars2211
Directory activity 0 views 0 installs 0 upvotes 3 views 0 installs 0 upvotes
Tools1617

Tools & capabilities

Mpp32 MCP Server tools 16

  • get_mpp32_diagnosticsReport what the mpp32-mcp-server detected at startup: version, API URL, env vars (MPP32_AGENT_KEY, MPP32_SOLANA_PRIVATE_KEY, MPP32_PRIVATE_KEY, MPP32_PREFERRED_NETWORK), and a live API connectivity check. Use this FIRST if payments fail with 'no key configured' even though you set one in claude_desktop_config.json.
  • debug_mpp32Alias for get_mpp32_diagnostics. Reports env-var detection, API connectivity, and ready-to-pay status.
  • list_mpp32_servicesBrowse the MPP32 federated catalog of 4,500+ machine-payable APIs and data services. Includes native MPP32 services (callable end-to-end through this MCP), x402 Bazaar services (pay-per-call in USDC, mostly on Base, some on Solana — callable when they expose an HTTPS endpoint), curated free APIs (DexScreener, Jupiter, CoinGecko health, httpbin, etc.), and the public MCP Registry (npx-installable servers; listing-only). Each result indicates whether it is callable through `call_mpp32_endpoint` or listing-only. The catalog is large (~4,500 entries) — by default a single call returns up to 100 results and the response will tell you the true total and whether the page was truncated. Use `q` (free-text search), `category`, `source`, or `protocol` to narrow down, or raise `limit` (max 500) for broader pages.
  • find_mpp32_serviceDescribe what you need in plain language instead of browsing the 4,500+ entry catalog yourself. Returns a ranked shortlist — ranked by keyword relevance, catalog health status (broken listings are excluded automatically), verification, and whether the price actually fits your stated budget. Use this before `list_mpp32_services` when you have a task in mind ('check if this wallet is a rug', 'generate a product image', 'get real-time SOL price') rather than a category to browse. The top result's slug is ready to pass straight to `call_mpp32_endpoint`.
  • call_mpp32_endpointCall any HTTP-callable service in the MPP32 federated catalog. Free services return immediately. Paid services return a 402 challenge that this tool will sign and retry automatically when a payment key is configured: MPP32_SOLANA_PRIVATE_KEY pays x402 USDC on Solana; MPP32_PRIVATE_KEY (one EVM key) pays x402 USDC on Base and Tempo pathUSD. The result is checked after payment — a rejected payment is reported, never shown as success. Set MPP32_AGENT_KEY for dashboard tracking. Use `list_mpp32_services` first to find a slug. Many catalog entries store only the upstream BASE URL (e.g. `https://api.exa.ai`) — pass the upstream path (e.g. `/search`) via the `path` argument when calling those. Listing-only entries (npx-installable MCP servers, etc.) cannot be called through this tool.
  • get_solana_token_intelligenceGet real-time Solana token intelligence from the MPP32 Intelligence Oracle. Returns alpha score (0-100), rug risk assessment, whale activity, smart money signals, 24h pump probability, projected ROI ranges, and aggregated DexScreener/Jupiter/CoinGecko market data. **FREE TIER: Every agent session gets 10 free calls per day — no wallet, no USDC, no payment setup required.** Just set MPP32_AGENT_KEY. After free tier: $0.008/query, paid automatically in USDC via x402 on Solana (MPP32_SOLANA_PRIVATE_KEY) or Base (MPP32_PRIVATE_KEY), or pathUSD via Tempo (MPP32_PRIVATE_KEY). M32 token holders receive up to 40% discount.
  • try_solana_token_intelligence_freeFREE preview of the MPP32 Intelligence Oracle — quick anonymous test, no keys required. Rate-limited to 10 calls/minute per IP. Returns the same payload as the paid endpoint. **Better option: get an MPP32_AGENT_KEY from mpp32.org/agent-console and call `get_solana_token_intelligence` instead — you get 10 FREE attributed calls per day, plus dashboard tracking, before any payment is needed.**
  • get_m32_whale_trackerM32-gated whale analysis for any Solana token. Returns top 20 holders, concentration risk, holder distribution, and buy/sell pressure. Requires the caller to hold 1,000,000+ M32 tokens (balance verified on-chain via X-Wallet-Address header). Free for qualifying holders — no payment required. Returns 403 if the wallet holds insufficient M32.
  • compare_tokens_m32M32-gated head-to-head intelligence comparison of two Solana tokens. Returns side-by-side alpha scores, rug risk, whale activity, volume, liquidity, market data, and a winner verdict. Requires the caller to hold 2,500,000+ M32 tokens (balance verified on-chain via X-Wallet-Address header). Free for qualifying holders. Returns 403 if insufficient M32.
  • scan_portfolio_m32M32-gated full wallet portfolio scan. Discovers all SPL tokens in a Solana wallet, runs intelligence on top holdings, and returns per-token analysis with aggregate portfolio risk metrics. Requires the caller to hold 5,000,000+ M32 tokens (balance verified on-chain via X-Wallet-Address header). Free for qualifying holders. Returns 403 if insufficient M32.
  • get_pivx_dao_intelligenceGet real-time PIVX DAO governance intelligence. Returns active budget proposals with masternode voting tallies (Yes/No counts, net yes percentages), budget allocation status, network deflation metrics (unallocated treasury PIV that are never minted), and masternode network health. PIVX is a fully community-governed cryptocurrency where Masternode owners vote on budget proposals every ~30 days (43,200 blocks per superblock cycle, 432,000 PIV max monthly budget). Data is served by the MPP32 backend, which aggregates pivx.org/proposals and the PIVX blockchain via Chainz CryptoID, and caches for 5 minutes. Free — no payment or API key required.
  • manage_agent_budgetView and control the spending limits of your MPP32 agent session. 'get' = current budget status (remaining budget, hourly velocity, paused / circuit-breaker state). 'set' = configure limits (budget cap in USD, hourly velocity limit, alert threshold). 'pause' = immediately stop all paid calls (safe to use any time). 'resume' = lift a pause, and 'reset' = clear a tripped circuit breaker — ONLY use 'resume' or 'reset' when the human operator explicitly asks you to; never on your own to get past a limit, because the breaker exists to stop runaway agent spending.
  • +4 more on the listing page

XFuel tools 17

  • chat_completionsGenerate text via Chit402's OpenAI-compatible POST /v1/chat/completions. This is the first-hour / demo path. With the demo key it is unmetered (rate-limited). It is NOT submit_inference and does NOT spend USDC. Args: - messages (required): OpenAI chat messages, e.g. [{role:"user", content:"Say hello"}] - model (optional): catalog id from list_models (default xfuel/auto) - max_tokens, temperature (optional) Returns the completion plus top-level task_id and verify_url (also under xfuel). proof_outcome may still be pending — use verify_receipt for offline binding checks. Do not wait in this tool.
  • submit_inferenceSubmit a PAID M2M inference task (POST /task-request). Default rail is USDC on Base. Without a payer this returns HTTP 402. This is NOT the unmetered demo path — use chat_completions to generate text with the demo key. Pass messages or input so a live provider is actually called. input_hash/memo alone do not send a prompt to the model. Args: - model (string): live catalog id from list_models - sender (string): 0x address that owns/pays for the task - amount (string): USDC 6 decimals; 2000 = $0.002; minimum 2000 - messages / input (optional): the prompt. Required for live routing. - max_tokens, temperature (optional) Poll get_task_status(task_id). Pay the live $0.01 door at POST /v1/chat/completions from the agent's wallet — MCP does not take a human private key.
  • register_agentPOST /v1/agents/register. Binds an AAWP official or smart-account agentWallet to an integer agent_id using a collected HMAC-valid receipt (task_id from a paid POST /v1/chat/completions). Demo receipts do not qualify. API key is not a wallet. Does not accept a human private key. Returns agent_id (required later by POST /erc8004/validate) and validate_score.
  • get_agent_bookGET|POST /v1/agents/:agent_id/book. Possession-gated last-N collected UsageSettled rows for that agent_id (task_id, payment.ref, rail, amount, collected_at, route). Demo / unmetered rows never appear. Default N=50, max 200. Totals: count, USDC sum, by rail. Response includes caps (budget Y, spent, remaining) when set. Not a public index. API key is not possession. Does not accept a human private key. Pass the session issued by register_agent (or an HMAC over agent_id + window using that session). Unauth or wrong proof returns 401/403 with an empty body.
  • get_bookGET|POST /v1/agents/:agent_id/book. Possession-gated last-N collected UsageSettled rows for that agent_id (task_id, payment.ref, rail, amount, collected_at, route). Demo / unmetered rows never appear. Default N=50, max 200. Totals: count, USDC sum, by rail. Response includes caps (budget Y, spent, remaining) when set. Not a public index. API key is not possession. Does not accept a human private key. Pass the session issued by register_agent (or an HMAC over agent_id + window using that session). Unauth or wrong proof returns 401/403 with an empty body. Alias of get_agent_book for Eliza / Cursor clients.
  • verify_receiptFetch GET /receipt/:task_id?format=json and verify payment binding locally via @xfuel/verify — no trust in HTML, no private keys. This is the default "prove it" path for agents holding hub, model, amount, verify_url. Args: - task_id (preferred) or verify_url — one required - fetch_jwks (default true): load /.well-known/jwks.json for issuer signature check - check_payer (default false): on-chain USDC payer match (Base or Solana RPC) - check_nullifier (default false): SP1 nullifier anchor read (optional Tier-2) Returns { verify_url, receipt, verification: { overall, binding, issuer_signature, … } }. overall is verified | partial | failed. Unmetered demo receipts may be partial (no binding).
  • get_task_statusGet the current status of a Chit402 task, including proof outcome and fee breakdown. Args: - task_id (string): from chat_completions (xfuel.task_id) or submit_inference Returns JSON: { task_id, status, proof_outcome, verify_url, message_type, chain_id, gross_amount, fee_amount, net_amount, fee_bps, payment_rail, payment_ref, result, sp1_proof, created_at, updated_at }. 'verify_url' is a public, no-auth receipt page you can open or share to prove settlement. 'status' reaches a terminal value ('completed' | 'fee_collected' | 'failed'); 'proof_outcome' is one of 'pending' | 'valid' | 'regenerable' | 'invalid'.
  • get_proofFetch the SP1 ZK settlement proof for a settled task. Args: - task_id (string): from chat_completions (xfuel.task_id) or submit_inference Returns JSON: { task_id, status, proof_outcome, verify_url, payment_binding, sp1_proof: { proof, publicInputs, nullifier, provingTimeMs }, fee }. 'verify_url' is a public, no-auth receipt page you can open or share to prove settlement. The proof attests settlement metadata + a commitment to the output hash (NOT inference correctness). To validate it, use verify_proof(task_id). Fails if the task has not settled yet — poll get_task_status until proof_outcome is 'valid'.
  • verify_proofIndependently verify a settled task's proof client-side (the "prove it" flow in one call): 1. a proof is present and proof_outcome === 'valid'; 2. the x402 payment binding (if present) re-derives to the committed value; 3. (optional) the on-chain nullifier's spent state, when check_nullifier=true AND the server was started with XFUEL_RPC_URL + ZK_VERIFIER_ADDRESS. Args: - task_id (string): from chat_completions (xfuel.task_id) or submit_inference - check_nullifier (boolean, optional): also read the on-chain nullifier state (default false) Returns JSON: { ok, checks: { hasProof, proofOutcomeValid, paymentBinding, nullifier }, reasons }. 'ok' is true when the proof is present + valid and any present payment binding is consistent. The nullifier read is informational and does not gate 'ok'.
  • quote_taskPreview per-rail pricing WITHOUT creating a task. Use before submit_inference. Unknown model ids still return the $0.01 USDC floor — the human summary warns when priced_model is null (inference will fail). Args: - model (preferred) or model_id: catalog id to price - amount (optional): USDC 6 decimals for the USDC rail - messages / max_tokens / tools: forecast the request you will submit Unmetered chat_completions does not need this quote.
  • get_healthCheck the connected Chit402 API's health and configuration (fee config, supported chains, message types, demo limits). Useful for discovery/diagnostics. Args: none. Returns JSON: the /health payload (status, server, version, fee_config, chains, message_types, …).
  • get_my_statsFetch usage for the configured API key (GET /stats/me). The public demo key chit402-demo is SHARED — numbers are not this client. Bring your own XFUEL_API_KEY for buyer-scoped stats.
  • +5 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Mpp32 MCP Server

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "mpp32-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "mpp32-mcp-server@latest"
      ],
      "env": {
        "MPP32_AGENT_KEY": "YOUR_MPP32_AGENT_KEY_HERE",
        "MPP32_SOLANA_PRIVATE_KEY": "YOUR_MPP32_SOLANA_PRIVATE_KEY_HERE",
        "MPP32_PRIVATE_KEY": "YOUR_MPP32_PRIVATE_KEY_HERE"
      }
    }
  }
}

XFuel

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "xfuel": {
      "command": "npx",
      "args": [
        "-y",
        "chit402-mcp"
      ]
    }
  }
}

Frequently asked questions

Mpp32 MCP Server is categorized under Finance & Fintech and uses a local stdio subprocess. XFuel belongs to Finance & Fintech and uses a local stdio subprocess. Pick Mpp32 MCP Server for finance & fintech work and XFuel for finance & fintech.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Mpp32 MCP Server has no declared pricing — check the project's own site. XFuel has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add mpp32-mcp-server and xfuel as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Mpp32 MCP Server has a quality signal of 65/100 (Great) with 0 views, 0 installs and 221 GitHub stars. XFuel has 60/100 (Good) with 3 views, 0 installs and 1 GitHub stars.