fortytwo-mcp

Installation
SKILL.md

Fortytwo MCP

Calls Fortytwo Prime — a collective inference system where multiple independent AI agents collaborate on every question. Paid per-token via x402 escrow using USDC on Base or Monad.

Prerequisites

The script signs on-chain payments using evm_private_key environment variable. Never ask the user to paste the key into chat — it must be set via shell:

export evm_private_key="0x..."

For full wallet setup and network details, see setup.md.

Getting Started

Before the first query, or if the script fails with a setup error:

  1. Explain that Prime is available and pricing is pay-per-token
  2. Run preflight: python scripts/preflight.py
  3. If preflight fails, guide user through setup.md
  4. Note which networks preflight reports as READY — pass the correct --network to the query script

Instructions

Querying Fortytwo Prime

Run the full MCP flow via script: Run from the skill directory:

cd /path/to/skills/fortytwo-mcp
python scripts/fortytwo_query.py "your question here" --network base
  • Answer goes to stdout, diagnostics to stderr
  • Session is saved automatically to /tmp/.fortytwo_session

Follow-up queries (session reuse, no new payment)

python scripts/fortytwo_query.py "follow-up question"

Session is auto-detected from the saved file — no need to pass --session-id. Sessions live up to 90 minutes (15 min idle timeout). If the session expired, the script automatically falls through to a new payment.

Use --no-session to force a new payment. Use --session-id <uuid> to override manually.

Streaming (optional)

The bundled script does not support streaming. For incremental output on long queries, use curl with SSE directly — see streaming.md for the request format and parsing algorithm.

Key details

  • Errors are not charged. Failed requests cancel the budget reservation automatically.
  • Sessions are billing-only. Prime does not remember previous questions — include context in each query.
  • Retries are built in. The script retries up to 3 times on transient 400/502 with fresh signatures.
  • Timeout is 600s (10 minutes). On-chain settlement + multi-agent inference takes time. Run the script with a sufficient timeout — do not kill it early or set shorter limits.

How to Present the Answer

  1. Show the full answer — do not summarize unless the user explicitly asks for a summary. The user is paying.
  2. Attribute it — "Here's what Fortytwo Prime returned:"
  3. Add commentary if useful — your perspective after the full answer.
  4. Offer follow-up — "Want me to ask a follow-up?" (reuses session while budget remains).

Troubleshooting

Error Cause Fix
evm_private_key not set Env var missing export evm_private_key="0x..."
missing dependency Python packages pip install eth-account web3
low USDC balance Wallet empty Transfer USDC on Base or Monad
Transient 400/502 On-chain timing Script auto-retries; if persistent, surface to user
402 on session call Budget exhausted New payment needed (script handles this)
409/410 Session closed Script falls through to new payment
Invalid signature Wrong EIP-712 domain See payment.md — query name()/version() on-chain

References

  • setup.md — wallet setup, network config, and pricing. Read when guiding a new user through onboarding.
  • payment.md — EIP-712 signing details and common mistakes. Read when debugging signature errors or building a custom payment flow.
  • session.md — session lifecycle, error codes, and idempotency. Read when troubleshooting 402/409/410 errors on follow-up queries.
  • streaming.md — SSE streaming via progressToken. Read when the user wants incremental output on long queries (requires curl, not the bundled script).
Installs
23
GitHub Stars
4
First Seen
Apr 9, 2026