Server definition
- Hash
- sha256:4d4b02ee8b830853f7a5d3acf1280e3b7c532cca25ba70de8d0b214cc4736a6a
- What it is
- What a remote MCP server returned when asked what it offers: 13 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Full detail for one order including a FRESH live-contents snapshot (principal, claimable rewards, voting/earning power, as_of_block).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"orderHash": {
"type": "string"
}
},
"required": [
"orderHash"
],
"type": "object"
},
"name": "get_listing_details",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"kind": {
"enum": [
"listing",
"dutch_auction",
"offer"
],
"type": "string"
},
"limit": {
"maximum": 100,
"minimum": 1,
"type": "number"
},
"marketId": {
"description": "market id, e.g. 'vehydx'",
"type": "string"
},
"minDiscountPct": {
"description": "only return orders at >= this discount %. IGNORED on markets whose asset has no priced underlying, where there is nothing to compare the ask against — the response says so in `note` rather than returning an empty market.",
"type": "number"
},
"nameContains": {
"description": "case-insensitive substring match on the listing's label (the name on name markets, e.g. 'alice'; 'veAERO #123' elsewhere)",
"maxLength": 64,
"type": "string"
}
},
"required": [
"marketId"
],
"type": "object"
},
"name": "get_listings",
"outputSchema": null
},
{
"description": "List orders created by an address (its listings, auctions, offers). Status is reconciled by the background worker — treat as advisory until checked at fill.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"offerer": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"status": {
"enum": [
"active",
"filled",
"cancelled",
"expired"
],
"type": "string"
}
},
"required": [
"offerer"
],
"type": "object"
},
"name": "get_orders",
"outputSchema": null
},
{
"description": "List the positions an address owns in a market, with listability (voted/attached positions can't transfer).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"marketId": {
"type": "string"
},
"owner": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"marketId",
"owner"
],
"type": "object"
},
"name": "get_owned_positions",
"outputSchema": null
},
{
"description": "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).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"maximum": 100,
"minimum": 1,
"type": "number"
},
"marketId": {
"type": "string"
}
},
"required": [
"marketId"
],
"type": "object"
},
"name": "get_recent_trades",
"outputSchema": null
},
{
"description": "List the markets this marketplace facilitates (asset, chain, currencies, fee).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "list_micro_markets",
"outputSchema": null
},
{
"description": "List a wallet's notification subscriptions (webhook URLs redacted to origin).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"wallet"
],
"type": "object"
},
"name": "list_subscriptions",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"orderHash": {
"type": "string"
}
},
"required": [
"orderHash"
],
"type": "object"
},
"name": "prepare_cancel",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"ask": {
"description": "listing: price the seller nets — must be positive",
"pattern": "^\\d+(\\.\\d+)?$",
"type": "string"
},
"currencySymbol": {
"description": "one of the market's settlementCurrencies (see list_micro_markets)",
"enum": [
"USDC",
"WETH",
"HYDX",
"AERO",
"USDT",
"THE",
"KITTEN",
"NEST",
"USDG",
"UP"
],
"type": "string"
},
"durationDays": {
"maximum": 90,
"minimum": 1,
"type": "number"
},
"endAsk": {
"description": "dutch_auction: floor price (must be below the start)",
"pattern": "^\\d+(\\.\\d+)?$",
"type": "string"
},
"kind": {
"enum": [
"listing",
"dutch_auction"
],
"type": "string"
},
"marketId": {
"type": "string"
},
"name": {
"description": "name markets only, e.g. 'alice' or 'alice.base.eth' — tokenId is derived",
"type": "string"
},
"seller": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"startAsk": {
"description": "dutch_auction: starting (high) price",
"pattern": "^\\d+(\\.\\d+)?$",
"type": "string"
},
"tokenId": {
"description": "required for token markets (e.g. vehydx)",
"type": "string"
}
},
"required": [
"marketId",
"kind",
"currencySymbol",
"seller"
],
"type": "object"
},
"name": "prepare_listing",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"buyer": {
"description": "0x address that will sign and fund the offer",
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"currencySymbol": {
"description": "one of the market's settlementCurrencies (see list_micro_markets)",
"enum": [
"USDC",
"WETH",
"HYDX",
"AERO",
"USDT",
"THE",
"KITTEN",
"NEST",
"USDG",
"UP"
],
"type": "string"
},
"durationDays": {
"maximum": 90,
"minimum": 1,
"type": "number"
},
"marketId": {
"type": "string"
},
"name": {
"description": "name markets only, e.g. 'alice' or 'alice.base.eth' — tokenId is derived",
"type": "string"
},
"offerAmount": {
"description": "human amount the seller nets, e.g. '750' — must be positive",
"pattern": "^\\d+(\\.\\d+)?$",
"type": "string"
},
"tokenId": {
"description": "required for token markets (e.g. vehydx)",
"type": "string"
}
},
"required": [
"marketId",
"currencySymbol",
"offerAmount",
"buyer"
],
"type": "object"
},
"name": "prepare_offer",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"orderHash": {
"type": "string"
}
},
"required": [
"orderHash"
],
"type": "object"
},
"name": "prepare_purchase",
"outputSchema": null
},
{
"description": "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))).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"chainId": {
"description": "chain the wallet signs on; it is part of the signed message",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"type": "integer"
},
"channel": {
"enum": [
"webhook",
"inapp"
],
"type": "string"
},
"events": {
"items": {
"enum": [
"order_filled",
"offer_received",
"saved_search"
],
"type": "string"
},
"type": "array"
},
"savedSearch": {
"properties": {
"kind": {
"enum": [
"listing",
"dutch_auction"
],
"type": "string"
},
"marketId": {
"type": "string"
},
"nameContains": {
"description": "name markets: substring match on listed names",
"maxLength": 64,
"type": "string"
}
},
"required": [
"marketId"
],
"type": "object"
},
"signature": {
"description": "EIP-191 signature of the canonical message; omit to receive the message to sign",
"type": "string"
},
"timestamp": {
"description": "unix seconds; must be within 10 minutes of now",
"type": "number"
},
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"webhookUrl": {
"description": "https URL; required for the webhook channel",
"format": "uri",
"type": "string"
}
},
"required": [
"wallet",
"chainId",
"channel",
"events",
"timestamp"
],
"type": "object"
},
"name": "subscribe_notifications",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"chainId": {
"description": "chain the wallet signs on; it is part of the signed message",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"type": "integer"
},
"signature": {
"type": "string"
},
"subscriptionId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"timestamp": {
"type": "number"
},
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"wallet",
"chainId",
"subscriptionId",
"timestamp"
],
"type": "object"
},
"name": "unsubscribe_notifications",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:4d4b02ee8b830853f7a5d3acf1280e3b7c532cca25ba70de8d0b214cc4736a6a | sha256sum