com. market0x/ marketplace
by market0x.com · remote · no sign-in to list tools · v0.1.0 · published by com.market0x
Buy, sell and bid on vote-escrow NFTs and .base.eth names. Non-custodial, settles on Seaport.
13 tools: 2 can delete or cancel things, 1 do something that can't be undone, 3 change things and 7 only read.
Scanned Oct 21, 2026
- Deletes or cancels2Claude Code: deny: see these tools
- Can't be undone1Claude Code: ask: see these tools
- Changes things3Claude Code: ask: see these tools
- Only reads7Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http marketplace https://www.market0x.com/api/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
13 tools
Deletes or cancels 2Claude Code: deny
prepare_cancelPrepare the on-chain Seaport cancel transaction for an active order.No findings
Why it is in this group
- The name "prepare_cancel" says "cancel": a word for removing or ending something.
Description, as the server wrote it Prepare the on-chain Seaport cancel transaction for an active order. Only the order's offerer can execute it (Seaport enforces msg.sender == offerer), so the calldata is safe to return. After it confirms, POST { txHash } to the confirm endpoint to update the book.
unsubscribe_notificationsDelete a notification subscription.No findings
Why it is in this group
- The name "unsubscribe_notifications" says "unsubscribe": a word for a change.
- The description's first verb is "delete": a word for removing or ending something.
Description, as the server wrote it Delete a notification subscription. Two-step like subscribe_notifications: call without `signature` to get the message to sign. `chainId` is signed over and verified on that chain. Signed messages are single-use.
Can't be undone 1Claude Code: ask
prepare_purchasePrepare the non-custodial transaction package to BUY a listing (or accept an offer): ordered approvals + Seaport fulfillOrder calldata + a fresh contents snapshot.No findings
Why it is in this group
- The name "prepare_purchase" says "purchase": a word that usually means money moves, which cannot be taken back.
Description, as the server wrote it Prepare the non-custodial transaction package to BUY a listing (or accept an offer): ordered approvals + Seaport fulfillOrder calldata + a fresh contents snapshot. prepared.summary quotes the CURRENT price (Dutch auctions interpolate, asOf says when); the approval grants approveBaseUnits — slightly above the quote on a decaying order, never above maxTotalBaseUnits — and Seaport charges the exact interpolated amount at fill. On auctions, prepared.cleanup is an optional post-settlement tx that zeroes the residual allowance. The agent's own wallet signs and submits — this never signs or holds keys.
Changes things 3Claude Code: ask
prepare_listingPrepare a SELL listing or Dutch auction.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 Prepare a SELL listing or Dutch auction. Verifies the seller OWNS the position and it's transferable (not voted/attached), builds the Seaport order with the Interface fee injected by the server, and returns the one-time NFT approval + EIP-712 typed data to sign. Never signs or holds keys.
prepare_offerPrepare a BID/offer on a position: returns the Seaport order to sign (EIP-712), the currency approval needed, and how to submit it.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 Prepare a BID/offer on a position: returns the Seaport order to sign (EIP-712), the currency approval needed, and how to submit it. The agent reads its Seaport counter, signs, and POSTs the signed order — settlement stays on Seaport.
subscribe_notificationsSubscribe a wallet to push notifications (order_filled / offer_received / saved_search) via an HMAC-signed webhook — the agent-native alternative to polling.No findings
Why it is in this group
- The name "subscribe_notifications" says "subscribe": a word for a change.
Description, as the server wrote it Subscribe a wallet to push notifications (order_filled / offer_received / saved_search) via an HMAC-signed webhook — the agent-native alternative to polling. Two-step: call WITHOUT `signature` to get the exact message to sign (EIP-191 personal_sign), then call again WITH the signature. `chainId` is signed over and the signature is verified on THAT chain, so pass the chain the wallet actually signs on (smart-wallet signatures do not validate cross-chain). Each signed message is SINGLE-USE: resending the same body returns 409 replayed_signature — retry with a fresh timestamp and a new signature. The response includes the webhook HMAC secret ONCE (verify x-market0x-signature = hex(HMAC-SHA256(rawBody, secret))).
Only reads 7Claude Code: allow
get_listing_detailsFull detail for one order including a FRESH live-contents snapshot (principal, claimable rewards, voting/earning power, as_of_block).No findings
Why it is in this group
- The name "get_listing_details" says "get": a word for reading.
Description, as the server wrote it Full detail for one order including a FRESH live-contents snapshot (principal, claimable rewards, voting/earning power, as_of_block).
get_listingsActive listings/auctions for a market.No findings
Why it is in this group
- The name "get_listings" says "get": a word for reading.
Description, as the server wrote it Active listings/auctions for a market. Each row carries the ask and the position's underlying contents priced at current market (published formula: /docs#data-sources), plus discountPct (the difference between them). Sorted by discount percentage, descending.
get_ordersList orders created by an address (its listings, auctions, offers).No findings
Why it is in this group
- The name "get_orders" says "get": a word for reading.
Description, as the server wrote it List orders created by an address (its listings, auctions, offers). Status is reconciled by the background worker — treat as advisory until checked at fill.
get_owned_positionsList the positions an address owns in a market, with listability (voted/attached positions can't transfer).No findings
Why it is in this group
- The name "get_owned_positions" says "get": a word for reading.
Description, as the server wrote it List the positions an address owns in a market, with listability (voted/attached positions can't transfer).
get_recent_tradesRecently settled sales for a market.No findings
Why it is in this group
- The name "get_recent_trades" says "get": a word for reading.
Description, as the server wrote it Recently settled sales for a market. `amount` is the EXACT settled total (incl. fee) from the on-chain fill where the indexer recorded it, with `settledAt` the block time and `exact: true`; otherwise it falls back to the listed ask with `exact: false` (a decayed Dutch auction settles BELOW its listed amount, so treat inexact rows as an upper bound).
list_micro_marketsList the markets this marketplace facilitates (asset, chain, currencies, fee).No findings
Why it is in this group
- The name "list_micro_markets" says "list": a word for reading.
Description, as the server wrote it List the markets this marketplace facilitates (asset, chain, currencies, fee).
list_subscriptionsList a wallet's notification subscriptions (webhook URLs redacted to origin).No findings
Why it is in this group
- The name "list_subscriptions" says "list": a word for reading.
Description, as the server wrote it List a wallet's notification subscriptions (webhook URLs redacted to origin).
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 0.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http marketplace https://www.market0x.com/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__marketplace__list_micro_markets",
"mcp__marketplace__get_listings",
"mcp__marketplace__get_listing_details",
"mcp__marketplace__get_recent_trades",
"mcp__marketplace__get_orders",
"mcp__marketplace__get_owned_positions",
"mcp__marketplace__list_subscriptions"
],
"ask": [
"mcp__marketplace__prepare_purchase",
"mcp__marketplace__prepare_offer",
"mcp__marketplace__prepare_listing",
"mcp__marketplace__subscribe_notifications"
],
"deny": [
"mcp__marketplace__prepare_cancel",
"mcp__marketplace__unsubscribe_notifications"
]
}
}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 marketplace. Review it before you use it.