ADEXTO
by adexto.xyz · remote · no sign-in to list tools · v1.1.0 · published by xyz.adexto
Launch, buy, stake and claim on bonding-curve token markets across five chains, with your own key.
14 tools: 2 can delete or cancel things, 1 do something that can't be undone, 8 change things and 3 only read.
Scanned Oct 21, 2026
- Deletes or cancels2Claude Code: deny: see these tools
- Can't be undone1Claude Code: ask: see these tools
- Changes things8Claude Code: ask: see these tools
- Only reads3Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http adexto https://adexto.xyz/api/mcpFindings
Matches of fixed checks, with the text they matched.
- Warnhow_to_pay
The server marks "how_to_pay" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "how_to_pay" says "pay": a word that usually means money moves, which cannot be taken back.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
14 tools
Deletes or cancels 2Claude Code: deny
buy_tokenExecutes the buy.No findings
Why it is in this group
- The description's first verb is "execute": a word for a change.
- The input addresses people (input.to): what it sends cannot be taken back.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Executes the buy. Called without xPayment it returns the HTTP 402 challenge, which is the correct first response and not an error. Called with a signed x402 payload in xPayment it settles on Base and the curve on the destination chain sends the tokens straight to `to`. You never need native gas on the destination chain and never need to bridge.
Annotations the server declares
- title: Buy a market cross-chain with USDC on Base
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
pay_and_buyBuys a market for real, completing the step an LLM cannot do alone: signing the EIP-3009 USDC authorisation.No findings
Why it is in this group
- The name "pay_and_buy" says "pay": a word that usually means money moves, which cannot be taken back.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Buys a market for real, completing the step an LLM cannot do alone: signing the EIP-3009 USDC authorisation. IMPORTANT for honest reporting — the signature is made by the operator's wallet on the server, not by a wallet you control, so describe the result as 'executed the purchase', not 'paid from my own funds'. Refuses unless the caller carries the agent key, and refuses any quote whose asset, network, recipient or amount does not match the hard-coded limits. Delivery always goes to the signer.
Annotations the server declares
- title: Execute a buy end to end (operator-signed, capped)
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
Can't be undone 1Claude Code: ask
how_to_payThe exact steps to turn a 402 challenge into a settled cross-chain buy: what to sign, which chain settles, and which header carries the payment.1 finding
Why it is in this group
- The name "how_to_pay" says "pay": a word that usually means money moves, which cannot be taken back.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "how_to_pay" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "how_to_pay" says "pay": a word that usually means money moves, which cannot be taken back.
Description, as the server wrote it The exact steps to turn a 402 challenge into a settled cross-chain buy: what to sign, which chain settles, and which header carries the payment. Free. Read this if you have never paid an x402 endpoint before.
Annotations the server declares
- title: How to pay this gateway
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
Changes things 8Claude Code: ask
access_messageFree.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Free. Returns the exact EIP-191 message an address signs (personal_sign) to prove it is the address asking. ask_agent accepts it for 10 minutes. Signing it moves nothing and costs nothing.
Annotations the server declares
- title: The message to sign before ask_agent
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
ask_agentAsks the market's own agent a question about that market.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Asks the market's own agent a question about that market. Open to an address whose stake in the market's stake contract is active (check_stake), proven with a signed access_message. The answer comes from glm-5.3 on the 0G router and is limited to facts read on-chain for this call; the tool returns those facts next to the answer. Refused without an active stake, and nothing is charged either way.
Annotations the server declares
- title: Ask the market's agent (stake required)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
check_stakeFree.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Free. Reads the market's stake contract on its own chain: its own AdextoAgentStake where it has one, otherwise the chain's AdextoStakeHub, which accepts every other market launched through ADEXTO from its first block. Returns how much an address has staked, the minimum, whether the position is active (at or above the minimum), and the totals. An active stake opens ask_agent for that market and an Agent Compute API key (see get_market staking.unlocks). There is no lock and no reward: unstake works at any time.
Annotations the server declares
- title: Read a wallet's stake in a market
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
prepare_claimUnsigned transactions that collect the creator fee owed to an address across its markets: one claimCreatorFees() call per curve, or one Multicall3 batch per chain when several are …No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Unsigned transactions that collect the creator fee owed to an address across its markets: one claimCreatorFees() call per curve, or one Multicall3 batch per chain when several are owed. The curve always pays its immutable creator, whoever sends the transaction.
Annotations the server declares
- title: Prepare a creator fee claim
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
prepare_launchLaunch a new ADEXTO market without handing over a key.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Launch a new ADEXTO market without handing over a key. Call it once without a signature: it checks the ticker, the chain and an optional ERC-8004 agent you own, and returns an attestation message for the deployer to sign (EIP-191). Call it again with the same arguments plus attestationMessage and attestationSignature: it anchors the launch metadata and returns the unsigned deployTrinity transaction (value 0, gas only), simulated from your address, with a gas estimate. Fee preset: 1.00% per trade, 0.70% to the creator. All supply goes into the curve; the creator gets no allocation. After the transaction is mined, call register_launch. The attestation message ends with an acceptance of the ADEXTO Terms and Acceptable Use Policy (adexto.xyz/terms): signing it is the deployer's acceptance, and markets that break the policy are removed from ADEXTO.
Annotations the server declares
- title: Prepare a market launch for your own key to sign
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
prepare_stakeUnsigned transactions that stake a market's token in its stake contract or its chain's stake hub: an approval for the exact amount (only if the allowance is short), then the stake.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Unsigned transactions that stake a market's token in its stake contract or its chain's stake hub: an approval for the exact amount (only if the allowance is short), then the stake. Checks balance, minimum and hub eligibility first, so a stake that would revert is refused before any gas is spent. No lock: unstake works at any time. A stake opens ask_agent for that market.
Annotations the server declares
- title: Prepare a stake for your own key to sign
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
register_launchAfter the prepare_launch transaction is mined, lists the new market on adexto.xyz, in list_markets and on the x402 gateway.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it After the prepare_launch transaction is mined, lists the new market on adexto.xyz, in list_markets and on the x402 gateway. Reads the TrinityProjectDeployed event from the ADEXTO factory in the receipt; every value it registers comes from that event, not from the caller. Calling it again for the same transaction returns the existing listing.
Annotations the server declares
- title: List a mined launch on ADEXTO
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
trade_historyTrade history for a market, newest first, with an explicit statement of whether it reaches the launch block.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Trade history for a market, newest first, with an explicit statement of whether it reaches the launch block. Free. Monad, Robinhood Chain and Arc are served by our Envio indexer and Base and Arbitrum One by our subgraph, both complete from the launch block; every market is also covered by our per-market index of every swap since launch, joined to a live log scan for the newest fills. When a market's index is still catching up or a read fails, the answer says so instead of presenting a shortened list as the whole history. Treasury buybacks are not trades and are not listed, although the curve's swapCount counts them.
Annotations the server declares
- title: Every swap on a market, and how complete the answer is
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
Only reads 3Claude Code: allow
get_marketFull detail for a single market: chain, curve address, supply, fee rates, current price in the chain's native asset, and which read path serves its trade history.No findings
Why it is in this group
- The name "get_market" says "get": a word for reading.
Description, as the server wrote it Full detail for a single market: chain, curve address, supply, fee rates, current price in the chain's native asset, and which read path serves its trade history. Free.
Annotations the server declares
- title: One market in detail
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
list_marketsEvery bonding-curve market this gateway can sell, across all chains it serves, with its ticker, chain, curve address and whether it is currently tradable.No findings
Why it is in this group
- The name "list_markets" says "list": a word for reading.
Description, as the server wrote it Every bonding-curve market this gateway can sell, across all chains it serves, with its ticker, chain, curve address and whether it is currently tradable. Free. Start here: the buy tools require a ticker and deliberately have no default.
Annotations the server declares
- title: List every tradable ADEXTO market
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
quote_buyReads the gateway's HTTP 402 challenge for a market and returns the quote and payment requirements without spending anything.No findings
Why it is in this group
- The description's first verb is "read": a word for reading.
Description, as the server wrote it Reads the gateway's HTTP 402 challenge for a market and returns the quote and payment requirements without spending anything. The challenge carries the exact amount, the asset, the payTo address and the EIP-3009 domain, so an agent can decide before it signs. Free. This is the tool to call before buy_token.
Annotations the server declares
- title: Quote a cross-chain buy without paying
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http adexto https://adexto.xyz/api/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__adexto__list_markets",
"mcp__adexto__get_market",
"mcp__adexto__quote_buy"
],
"ask": [
"mcp__adexto__how_to_pay",
"mcp__adexto__trade_history",
"mcp__adexto__check_stake",
"mcp__adexto__access_message",
"mcp__adexto__ask_agent",
"mcp__adexto__prepare_launch",
"mcp__adexto__register_launch",
"mcp__adexto__prepare_stake",
"mcp__adexto__prepare_claim"
],
"deny": [
"mcp__adexto__buy_token",
"mcp__adexto__pay_and_buy"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as adexto. Review it before you use it.