Collateral that can still sell itself — Magpie's x402 agent API: borrow SOL programmatically on Solana.
magpie-x402 is an early-stage TypeScript project in the AI payments / x402 ecosystem, focused on agent-economy, agentic-commerce, ai-agents, autonomous-agents. It currently has 5 GitHub stars and 7 forks, and sits alongside related tools like Agent402, AgentFund, froglet.
Borrow SOL against your memecoins, tokenized stocks, and RWAs — and set take-profits and stops on that same collateral. Liquidity now, upside intact: collateral that can still sell itself.
x402 payment-required API endpoints for the Magpie Capital protocol. AI agents and other Solana protocols can pay-per-call for credit scores, token risk assessments, and protocol analytics — no API keys, no signups, just a Solana payment. Agents borrow programmatically: pay per call, get back an unsigned Solana transaction, sign and submit it yourself (the service holds zero keys).
Take-profit, stop-loss, ladders, trailing stops — they fire on-chain into your loan's vault, the loan stays open, and proceeds reach your wallet only when you repay. Auto-sell exits are V4 in-vault orders on supported collateral (memecoins + tokenized stocks/RWAs); they are auto-sell orders that fire on-chain through a slippage stack, not guaranteed fills.
AI agent
│
│ GET /api/v1/credit-score?wallet=…
▼
┌────────────────────┐
│ 402 Payment │
│ Required │ ← scheme, recipient, amount, nonce
└─────────┬──────────┘
│
│ Solana tx
▼ (transfer to MAGPIE_PAY_TO
┌────────────────────┐ + memo `magpie-x402:<nonce>`)
│ on-chain ↪ Solana │
└─────────┬──────────┘
│
│ retry GET with header X-Payment: <signature>
▼
┌────────────────────┐
│ Service verifies │ ← amount, recipient, mint, memo nonce,
│ payment on-chain │ nonce not previously consumed
└─────────┬──────────┘
│
▼
{ score, tier, … }
| Method | Path | Price | Description |
|---|---|---|---|
| GET | / |
Free | Service info + endpoint catalog |
| GET | /health |
Free | Liveness check |
| GET | /.well-known/x402.json |
Free | Machine-readable endpoint catalog (auto-discovery) |
| GET | /openapi.json |
Free | OpenAPI 3.1 spec (for agent frameworks) |
| GET | /api/v1/pool |
Free | Live on-chain LendingPool state — totalDeposits, totalBorrowed, lifetime counters. 15s cache. |
| GET | /api/v1/pools |
Free | All three strategy pools (V1 memecoin / V3 RWA / V4 in-vault) in one call, with a partial map if any version is unreachable. 15s cache. |
| GET | /api/v1/loan/:loanId?borrower=<pubkey> |
Free | Loans matching a u64 ID across V1/V3/V4. Returns a list (a borrower can hold the same numeric ID in more than one program) — each tagged with program_version. 10s cache. |
| GET | /api/v1/loan/by-pda/:loanPda |
Free | Single loan by its PDA — unambiguous, routed to V1/V3/V4 from the on-chain owner. Returns program_version, V4 in-vault exit state, and exits_supported. 10s cache. |
| GET | /api/v1/wallet/:wallet/loans?status=... |
Free | All loans owned by a wallet across V1/V3/V4 via getProgramAccounts + memcmp filter, each tagged with program_version (with a by_version count). Optional status filter. 8s cache. |
| GET | /api/v1/collateral/eligible |
Free | Catalog of every token currently approved as Magpie collateral. First-touch for new agent integrations. 1h cache. |
| GET | /api/v1/markets/liquidatable |
Free | Active loans at or past their on-chain due timestamp across V1/V3 — the canonical liquidation-bot data feed, each tagged with program_version. Sorted most-past-due-first. Optional ?within_seconds= for pre-positioning, ?include_v4=true to include in-vault V4 loans. 8s cache. |
| GET | /api/v1/agent/activity |
Free | Anonymized recent borrow/repay/liquidate events. First-touch "is this protocol alive?" feed for arriving agents. 15s cache. |
| GET | /api/v1/agent/protocol-pulse |
Free | 24h aggregates: active loans, active borrowers, borrow volume, liquidations. 30s cache. |
| GET | /api/v1/agent/leaderboard |
Free | Top wallets by Magpie credit score, anonymized. 60s cache. |
| GET | /api/v1/agent/lp-state?wallet=<pubkey> |
Free | Depositor position + pool context (shares, deposited, current value, yield, share-of-pool). 10s cache. |
| GET | /api/v1/agent/self-limit-close/list?wallet=<pubkey> |
Free | A wallet's armed in-vault exit orders (TP/SL) on its V4 loans. |
| GET | /api/v1/credit-score?wallet=<pubkey> |
0.001 SOL | Magpie credit score (300–850) + tier benefits |
| POST | /api/v1/agent/build-borrow |
0.005 SOL | Build an unsigned borrow tx. Pass has_exit_arming: true to route to the V4 in-vault program (so exit orders can be armed on the loan); otherwise routes to V1 (memecoin) — and, once it launches, V3 (RWA). |
| POST | /api/v1/agent/build-deposit |
0.002 SOL | Build an unsigned LP-deposit tx (SOL → pool). Caller signs and submits. |
| POST | /api/v1/agent/build-withdraw |
0.002 SOL | Build an unsigned LP-withdraw tx (shares → SOL). Server validates against the on-chain position and refuses unsafe chunk sizes. |
| POST | /api/v1/agent/self-limit-close/arm |
0.001 SOL | Arm an in-vault take-profit / stop-loss on your OWN V4 loan. Body is an Ed25519 signed envelope; pays AND signs with the same keypair, so payer == signer. Bot enforces ownership + V4-only. |
| POST | /api/v1/agent/self-limit-close/modify |
Free | Modify an armed exit order (signed envelope). |
| POST | /api/v1/agent/self-limit-close/cancel |
Free | Cancel an armed exit order (signed envelope). |
All free endpoints query the on-chain Magpie program directly and have proper Cache-Control headers so CDN edges serve repeat reads without round-tripping.
Loan and pool reads are multi-version: every loan/pool is resolved across the V1 (memecoin), V3 (RWA — on the V3 launch), and V4 (in-vault auto-sell) programs and tagged with its program_version. These reads fail soft — if one version is unreachable, the rest still return and the affected version is reported in a partial map rather than erroring the whole call. The /api/v1/agent/self-limit-close/* surface lets a borrower-agent arm, modify, cancel, and list self-owned in-vault exit orders (take-profit / stop-loss) on its own V4 loans, authenticated by an Ed25519 signed envelope where the x402 payer is also the envelope signer.
🚀 Building your first Magpie agent? Read
QUICKSTART.md— zero to a working autonomous borrow agent on Solana in 10 minutes, using the typed SDK.📦 TypeScript SDK (
@magpieloans/magpie-agent): every action as a one-liner. Borrow, lend, liquidate, post conditional intents — no HTTP plumbing. Seesdk/README.md.🧩 MCP server for Claude Desktop / Cursor / Windsurf / ChatGPT desktop: one config block, 26 tools. See
mcp/README.md.🎯 Limit-close agent quickstart — full end-to-end walkthrough for agents that arm, monitor, and steer limit-close (TP/SL) orders on borrowers' loans. Authorization flow, every endpoint, sample code, error reference, best practices. See
docs/AGENT_QUICKSTART_LIMIT_CLOSE.md.👉 Just want code examples?
/examples/— 13 turn-key TypeScript agents (credit fetch, liquidation keeper, full borrow loop, conditional intent, yield agent, webhook receiver, collateral screener, equity-leverage preview, more) that talk to the live production endpoint. Each is a single file, runs withnpx tsx.🧩 Using Claude Desktop, Cursor, Windsurf, or ChatGPT desktop?
/mcp/ships a one-config-block MCP server that exposes the full API as native tools in your agent host. Free reads work without any keypair; paid endpoints sign x402 payments locally with a configured Solana wallet.
More paid endpoints in progress (token risk score, batch credit lookups, webhook subscriptions, MCP server, LP-side build-deposit / build-withdraw) — see MARKETING.md for the agent-distribution roadmap or open an issue if you want one prioritized.
curl -i https://x402.magpie.capital/api/v1/credit-score?wallet=9UuLsJ3jf8ViBNeRcwXD53re5G3ypgfKK3s2EiMMpump
Response:
HTTP/2 402
X-Payment-Required-Scheme: x402/solana/v1
X-Payment-Required-Amount: 1000000
X-Payment-Required-Recipient: <MAGPIE_PAY_TO pubkey>
X-Payment-Required-Nonce: a1b2c3...
X-Payment-Required-Memo: magpie-x402:a1b2c3...
{
"error": "payment_required",
"scheme": "x402/solana/v1",
"payTo": "...",
"amountLamports": "1000000",
"nonce": "a1b2c3...",
"memo": "magpie-x402:a1b2c3...",
"instructions": "Send 1000000 lamports of SOL to ... with memo 'magpie-x402:...', then retry with header X-PAYMENT: <tx_signature>"
}
Send a SystemProgram::transfer (or SPL Token transfer) for the exact amount to the recipient pubkey, with the memo instruction containing the challenge string. Confirm.
curl -i \
-H "X-Payment: <your_tx_signature>" \
https://x402.magpie.capital/api/v1/credit-score?wallet=9UuLsJ3jf8ViBNeRcwXD53re5G3ypgfKK3s2EiMMpump
Response:
{
"wallet": "9UuLsJ...",
"score": 712,
"tier": "gold",
"range": { "min": 300, "max": 850 },
"benefits": { "maxLtvPercent": 35, "minFeeRate": 0.0125, "maxDurationDays": 14 },
"source": "magpie-credit-oracle"
}
git clone [email protected]:magpiecapital/magpie-x402.git
cd magpie-x402
cp .env.example .env # fill in MAGPIE_PAY_TO + MAGPIE_LENDER_PUBKEY
npm install
npm run dev # http://localhost:8402
The repo is structured for Vercel serverless out of the box:
api/index.ts — Vercel-native entry, handles every request via hono/vercel adaptervercel.json — routes all paths to /apisrc/app.ts — the shared Hono app (also used by local dev)src/index.ts — local-dev Node server (NOT used by Vercel)magpiecapital/magpie-x402 from GitHubMAGPIE_PAY_TO — your Solana treasury pubkeyMAGPIE_LENDER_PUBKEY — the Magpie lender authoritySOLANA_RPC_URL — use a paid Helius/Triton/QuickNode URL for speed (public RPC will rate-limit you)CORS_ORIGINS — comma-separated allowlist (use * only during testing)RATE_LIMIT_PER_MIN and RATE_LIMIT_PER_HOUR — tune per trafficnpm install && npm run build (or just npm install since Vercel handles TS) — ~1 minute.curl https://<your-deployment>.vercel.app/api/v1/poolAfter the first deploy, in Settings → Domains attach x402.magpie.capital (or any subdomain you control). Vercel handles the TLS cert automatically.
@solana/web3.js depends on Buffer + Node crypto primitives that don't ship in Vercel's Edge runtime. Once @solana/kit (web3.js v2) stabilizes for Edge, switching gets us another latency win — but Node serverless is plenty fast for v0 (cold start ~150–250ms, warm <10ms server-side).
The in-memory nonce store (in src/middleware/x402.ts) and rate-limit buckets are per-instance. At low traffic, Vercel runs a single warm instance and this works fine. At high concurrency, Vercel scales horizontally — a payment challenge issued by instance A might fail validation on instance B because B hasn't seen the nonce.
When that becomes a problem (it isn't for v0 — but if you push >20 req/s sustained, plan for it):
@vercel/kv.Both paths sketched in SECURITY.md under "production hardening".
See SECURITY.md for the full posture. Highlights:
.env is gitignored; .gitignore excludes any file matching *keypair*.json, *.pem, *.key, etc.To report a vulnerability: open a GitHub issue tagged security, or contact us via https://magpie.capital/security.
MIT — see LICENSE.
500+ pay-per-call web tools + skill packs for AI agents — every one tested, priced, and settled on-chain. Paid in USDC over x402 on 8 chains, or free via proof-of-work on the pure-CPU tools. Self-hostable, MCP-native, deterministic. Plus the open x402 index (Find / Route / Leaderboard).
Fundraising infrastructure for AI agents on Solana — x402 payments, milestone escrow, on-chain reputation. REST + WebSocket + MCP + ACP.
A protocol and node for a bot economy — bots create, publish, discover, buy, sell, and compose remote resources for value.
The living ecosystem where AI agents complete tasks through workflow loops, improve through iterative execution, are evaluated by mentor agents or humans in the loop, and turn completed work into reusable work experience and data to improve future agents.
The living ecosystem where AI agents complete tasks through workflow loops, improve through iterative execution, are evaluated by mentor agents or humans in the loop, and turn completed work into reusable work experience and data to improve future agents.
The AI agent with a wallet — spends USDC autonomously to get real work done. Apache-2.0, TypeScript.
The first agentic payment network: policy-controlled, gasless, and real money-ready. OmniClaw CLI + Financial Policy Engine let autonomous agents pay and earn safely at machine speed.
Multi-Agent AI Task Orchestrator 2026
Autonomous AI BD Agent for SolCex Exchange: 24/7 Cross-Chain Token Scoring & Payments 2026