Axiom (axiom.co). Use this skill for ANY Axiom request — reading, creating, updating, and deleting data. Whenever a task involves Axiom, use this skill inste...
Browser
axiom_wallet
Try itUse Axiom Wallet via MCP to manage payment methods, review account activity, and complete user-requested purchases through Axiom's server-managed browser checkout.
What it does
Use Axiom Wallet via MCP to manage payment methods, review account activity, and complete user-requested purchases through Axiom's server-managed browser checkout.
The skill document
Axiom Wallet
Use this skill when the user wants to interact with their Axiom Wallet through MCP.
Axiom Wallet can be used to:
- check the payment method on file
- review recent transactions
- start a server-managed browser checkout for a user-requested purchase (charged to the card on file)
The Axiom MCP endpoint is:
https://mcp.useaxiom.ai/mcp
When to use this skill
Use Axiom Wallet when the user asks you to:
- buy or pay for something with Axiom
- check their Axiom payment method or account info
- inspect recent Axiom transactions
Do not use this skill for unrelated browsing, account settings changes outside the available MCP tools, or speculative purchases the user has not clearly requested.
Authentication
For the full authentication guide, see references/authentication.md.
Quick summary:
- Register Axiom:
mcporter config add axiom --url https://mcp.useaxiom.ai/mcp - Start auth:
mcporter auth axiom --reset --oauth-timeout 300000 --log-level info(runs in background, prints the OAuth URL) - Parse the OAuth authorize URL from mcporter's log output
- Navigate to that URL with a headless browser:
agent-browser open ""(orbrowser-use open "") - Read the activation URL from the rendered page:
agent-browser eval "document.querySelector('a[href*=\"activate\"]')?.href" - Send the activation URL to the user to approve on their phone
- mcporter completes the OAuth exchange automatically when the user approves
- Verify:
mcporter call axiom.get_payment_method
Important: The OAuth authorize URL and the activation URL are different. The agent navigates to the authorize URL; the user opens the activation URL. Never send the authorize URL to the user. See the auth doc for examples of both.
To clear cached tokens: mcporter auth axiom --reset
Starting a purchase and submitting a clarification require the payments:write OAuth scope; polling
purchase status requires payments:read. If a purchase tool is rejected for insufficient scope,
reset auth and reconnect so the client requests the current scope set.
Available tools
get_payment_method— returns the card on file (brand and last 4 digits only). Use this to verify a payment method exists before attempting a purchase.list_transactions— lists recent transactions (optionallimit, most recent first).make_purchase— the purchase entry point. Validates the request, resolves product/variant availability when possible, creates the intent mandate, and starts Axiom's server-managed browser checkout. RequiresuserCommand(near-verbatim),merchant(merchantName,merchantURL),itemName, optionalitemSubtotal, and optionalpreferences. Returns immediately withstatus— never waits on the browser pipeline.get_purchase_status— polls a browser purchase started bymake_purchase. PassbrowserPurchaseSessionIDand omittimeoutMs(or use the longest timeout your client supports). It blocks until the next parked or terminal status change, then returns it: publicprogressStage/progressLabel, approval links, clarification requests, terminal outcomes, receipt, and cart details. It does not stream incremental progress — call it again in a loop. End-to-end purchases often take around 10–15 minutes.submit_purchase_clarification— submits the user's answer whenget_purchase_statusreturnsstatus: "awaiting_user_input". PassbrowserPurchaseSessionID,userInputRequest.requestID, and eitherselectedOptionID,userInput, or both. Then continue pollingget_purchase_status.get_transaction— fetches a single transaction by ID, including its status, merchant, amount, approval state, receipt, and audit trail. Use it to revisit a completed purchase or inspect history.
Making a purchase
Axiom runs the entire checkout server-side. You resolve the request and start it; Axiom handles cart acquisition, checkout, contact/shipping entry, delivery selection, payment authorization, card entry, order-outcome detection, and receipt capture. You never see or enter card details.
-
Verify payment method.
- Call
get_payment_methodso the user can confirm which card on file will be charged. - If no payment method exists, tell the user to add a card in their Axiom account settings and stop.
- Call
-
Resolve the purchase request.
- Keep
userCommandnear-verbatim from the user — it is the audit/intent record. Don't paraphrase, and don't fold resolved specifics into it (those go initemName/merchant.*). - Resolve
merchant.merchantName,merchant.merchantURL, anditemNameas specifically as your context allows (prior turns, profile, memory). Never invent. - Prefer a product detail URL when the user gave one or you can defend one; otherwise use the merchant homepage URL you have.
- Include required variants in
itemNamewhen known (size, color, storage, flavor, quantity, etc.). - Pass
itemSubtotal(dollars, pre-shipping/tax/fees) when the user states a budget or the price is already known; it caps the line-item total at payment time. - Don't invent missing product-critical details. The flow can return a clarification or unavailable response before opening a browser session.
- Keep
-
Call
make_purchase.- If
status: "running", savebrowserPurchaseSessionIDandtransactionID, then callget_purchase_status. - If
status: "needs_clarification", presentquestionand anyoptionsto the user verbatim. Ifsource: "intent_sufficiency"orsource: "purchase_request_resolution", fold the user's answer into the resolved fields and callmake_purchaseagain. - If
status: "unavailable", presentreason,question, and anyoptions/availableOptionsto the user. Only callmake_purchaseagain after the user chooses an available option or changes the request. - If
status: "mandate_denied", tell the user the returnedreasonand stop. This is a normal domain outcome, not an MCP tool failure. - If
statusisfailed,cancelled, orhuman_needed, surface the returnedreason/message. These are normal terminal outcomes, not MCP tool failures.
- If
-
Poll
get_purchase_status.- Continue polling until
statusiscompleted,awaiting_approval,awaiting_user_input,human_needed,failed, orcancelled. - For
running, useprogressStageandprogressLabelfor user-facing progress. Do not expose or infer internal browser task/phase names. - For
awaiting_approval, send the userapprovalLinkand continue polling after they approve. - For
awaiting_user_input, presentuserInputRequest.questionand anyuserInputRequest.optionsto the user, then callsubmit_purchase_clarificationwithbrowserPurchaseSessionID,userInputRequest.requestID, and the selected option or free-text answer. - For
completed, summarizereceipt,finalTotal, andcart. Cart amounts are already public dollar values; do not expect raw cents fields. - For
human_needed,failed, orcancelled, tell the user what happened from the returnedreason/message.
- Continue polling until
Safety and behavior rules
- Verify a payment method is on file before starting a purchase.
- Never claim a purchase succeeded unless
get_purchase_statusreturnscompleted. - If spending rules, approval requirements, or policy checks block the purchase, stop and tell the user what happened.
- If
make_purchasereturnsmandate_denied, stop and tell the user the reason — do not retry with reworded inputs to work around the denial. - Never bypass approval flows; send the user the
approvalLinkand wait for them to approve. - Never expose OAuth tokens, session details, cookies, or browser state.
- Never fabricate merchant, amount, tax, shipping, receipt, or transaction details — report only what the tools return.
Troubleshooting
mcporter not found or outdated
mcporter ≥0.8.0 must be installed and available on PATH. Check with mcporter --version. OpenClaw checks required binaries at skill load time.
Auth expired or failed
Reset and re-run the auth flow:
mcporter auth axiom --reset
Cross-device approval timed out
Start a fresh auth flow and send the new approval link or activation code.
No payment method on file
Tell the user to add a card in their Axiom account settings and stop.
Purchase needs your approval
get_purchase_status returned awaiting_approval with an approvalLink. Send the user the link and keep polling; the flow resumes after they approve.
Mandate denied
make_purchase returned mandate_denied — e.g. the merchant is in a prohibited category, or the request was not clearly a purchase. Tell the user the returned reason and stop. Do not re-run with reworded inputs.
Purchase failed or needs a human
get_purchase_status returned failed, cancelled, or human_needed. Surface the returned reason / message to the user; these are normal terminal outcomes, not MCP tool failures.
Related skills
Use OKX OnchainOS MCP through UXC for token discovery, market data, wallet balance, and swap execution planning. Use when tasks need OKX MCP tools such as to...
Use GoldRush MCP through UXC for multichain wallet balances, transfers, portfolio history, NFT ownership, token approvals, prices, and chain metadata via std...
Create a Shieldz crypto payment link or tip jar for a wallet the USER explicitly provides, and read payment status back. Use ONLY when the user directly asks...
Use The Graph Token API MCP through UXC for token metadata, wallet balances, transfers, holders, pools, and market data with help-first inspection and Token...
X-ray any Polymarket wallet — skill level, entry quality, bot detection, and edge analysis. Queries Polymarket's public APIs, no authentication needed. Inspired by @thejayden's "Autopsy of a Polymarket Whale" analysis.