Server definition
- Hash
- sha256:08ff003671d497aba4cb2a08cbd09d25461c3f1ca7c1402041761127b4521351
- What it is
- What a remote MCP server returned when asked what it offers: 10 tools
The blob, as servednamed by its sha256
{
"instructions": "Vortex tells a buying agent whether a store can actually deliver to its destination, and what the order really costs once it lands there.\n\nStart by calling capabilities. If you do not have a token yet, call identity_create with your wallet address and an EIP-191 signature; it is free.\nBefore paying an x402 service you have not used, call check with its URL. Before choosing one at all, call resolve with what you need in plain language.\nAfter you pay anything, call report. It is free, it is verified against the chain, and it is what makes every later verdict better.",
"tools": [
{
"description": "Return the full machine-readable manifest of Vortex: every operation, its price in USD, its input schema and how to pay. Free.\n\nWhen to use: Call this first if you have never used Vortex and want to know what it can do and what it costs.\n\nPrice: Free.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "capabilities",
"outputSchema": null
},
{
"description": "Buy Vortex credit with USDC on Base over x402. One on-chain settlement, then every call is debited off-chain.\n\nWhen to use: Call when your balance is low. Operations cost fractions of a cent, so a single deposit covers hundreds of them.\n\nPrice: Free.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"amount_usd": {
"anyOf": [
{
"maxLength": 24,
"type": "string"
},
{
"type": "number"
}
],
"description": "One of 1, 5 or 20. Defaults to 1."
}
},
"type": "object"
},
"name": "credit_deposit",
"outputSchema": null
},
{
"description": "Everything Vortex knows about whether one storefront can serve one destination: its published shipping zones, the currency it charges in, the cards it takes, what buyers reported, and whether its reach changed recently. Returns a verdict, not just data.\n\nWhen to use: Call this when you already have a store in mind and are about to spend real money. Answers reaches, cannot_reach or unknown, and says which of the three it is rather than guessing.\n\nPrice: US$0.002000 per call.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"destination": {
"description": "ISO 3166-1 alpha-2 country the goods must reach. Example: BR, US, DE.",
"maxLength": 2,
"minLength": 2,
"pattern": "^[A-Za-z]{2}$",
"type": "string"
},
"store": {
"description": "Store domain or any URL on it. Example: allbirds.com",
"maxLength": 300,
"type": "string"
}
},
"required": [
"store",
"destination"
],
"type": "object"
},
"name": "feasibility",
"outputSchema": null
},
{
"description": "Search real storefronts for a product and get back only the ones that can ship to your destination, with live price and stock. Every other product index answers what matches the words; this one answers what matches the words and can be delivered.\n\nWhen to use: Call this before shopping anywhere else. Most storefronts serve one country: a search that ignores reach will hand you results your buyer can never receive, and you find out at checkout after the work is done.\n\nPrice: US$0.005000 per call.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"destination": {
"description": "ISO 3166-1 alpha-2 country the goods must reach. Example: BR, US, DE.",
"maxLength": 2,
"minLength": 2,
"pattern": "^[A-Za-z]{2}$",
"type": "string"
},
"in_stock_only": {
"default": true,
"description": "Only return products with a variant in stock.",
"type": "boolean"
},
"limit": {
"default": 5,
"description": "How many stores to return.",
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"max_price_usd": {
"anyOf": [
{
"maxLength": 24,
"type": "string"
},
{
"type": "number"
}
],
"description": "Skip anything above this shelf price."
},
"need": {
"description": "What you are looking for, in plain language. Example: merino wool sneakers.",
"maxLength": 200,
"minLength": 3,
"type": "string"
}
},
"required": [
"need",
"destination"
],
"type": "object"
},
"name": "find",
"outputSchema": null
},
{
"description": "The recorded price and stock series for a product, where today sits against its own record, how often it has gone out of stock, and every change to where its store ships.\n\nWhen to use: Call this when you have a candidate and want to know whether to buy now or wait. Vortex says how many observations it actually has and withholds the percentile when the series is too short to mean anything.\n\nPrice: US$0.002000 per call.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"default": 90,
"description": "How far back to look.",
"maximum": 365,
"minimum": 1,
"type": "integer"
},
"product": {
"description": "A product URL exactly as Vortex returned it from find.",
"format": "uri",
"maxLength": 2048,
"type": "string"
}
},
"required": [
"product"
],
"type": "object"
},
"name": "history",
"outputSchema": null
},
{
"description": "Turn a wallet address into a permanent Vortex identity and an API token. Free, and grants a small trial credit. No signup, no email, no human.\n\nWhen to use: Call this once, before anything else. You need the returned token for every other call.\n\nPrice: Free.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"label": {
"description": "A name for your own reference.",
"maxLength": 64,
"type": "string"
},
"message": {
"description": "Must contain your wallet address and a timestamp within the last 10 minutes.",
"maxLength": 200,
"minLength": 8,
"type": "string"
},
"signature": {
"description": "EIP-191 personal_sign of the message field, proving you control the wallet.",
"pattern": "^0x[a-fA-F0-9]+$",
"type": "string"
},
"wallet": {
"description": "Your EVM wallet address. This is your permanent identity.",
"pattern": "^0x[a-fA-F0-9]{40}$",
"type": "string"
}
},
"required": [
"wallet",
"signature",
"message"
],
"type": "object"
},
"name": "identity_create",
"outputSchema": null
},
{
"description": "Item plus shipping plus import tax plus local tax, itemised, for a destination — and the name and effective date of the tax rule applied. A US$120 item into Brazil lands near US$220; the shelf price is not the number to budget against.\n\nWhen to use: Call this before committing to a cross-border purchase, and before comparing two stores in different countries. If Vortex has no rule on file for the destination it says so instead of returning a confident guess.\n\nPrice: US$0.003000 per call.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"destination": {
"description": "ISO 3166-1 alpha-2 country the goods must reach. Example: BR, US, DE.",
"maxLength": 2,
"minLength": 2,
"pattern": "^[A-Za-z]{2}$",
"type": "string"
},
"item_usd": {
"anyOf": [
{
"maxLength": 24,
"type": "string"
},
{
"type": "number"
}
],
"description": "Shelf price, if you are not passing a product URL."
},
"product": {
"description": "A product URL. Its price is looked up for you.",
"format": "uri",
"maxLength": 2048,
"type": "string"
},
"shipping_usd": {
"anyOf": [
{
"maxLength": 24,
"type": "string"
},
{
"type": "number"
}
],
"description": "Freight, if you already have a quote. Omitted means the total excludes it and says so."
}
},
"required": [
"destination"
],
"type": "object"
},
"name": "landed",
"outputSchema": null
},
{
"description": "Tell Vortex how a purchase actually went. Free, and checked against the merchant's own feed before it counts — a claim the store contradicts is stored and marked contradicted rather than believed.\n\nWhen to use: Call this after any purchase attempt, good or bad. It is free, it makes every later answer better, and reporting the freight you were quoted is the one number Vortex cannot collect for itself.\n\nPrice: Free.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"destination": {
"description": "Where you were shipping to.",
"maxLength": 2,
"minLength": 2,
"pattern": "^[A-Za-z]{2}$",
"type": "string"
},
"detail": {
"description": "What happened, in your own words.",
"maxLength": 500,
"type": "string"
},
"outcome": {
"description": "What actually happened when you tried to buy.",
"enum": [
"delivered",
"blocked_at_checkout",
"price_wrong",
"out_of_stock",
"never_arrived"
],
"type": "string"
},
"product": {
"description": "A product URL exactly as Vortex returned it from find.",
"format": "uri",
"maxLength": 2048,
"type": "string"
},
"shipping_usd": {
"anyOf": [
{
"maxLength": 24,
"type": "string"
},
{
"type": "number"
}
],
"description": "What freight was quoted. This is what makes landed costs accurate for everyone."
}
},
"required": [
"product",
"outcome"
],
"type": "object"
},
"name": "report",
"outputSchema": null
},
{
"description": "Register standing interest in a product or a store: a price drop below your threshold, a return to stock, or a store that stops shipping to your destination.\n\nWhen to use: Call this instead of polling find on a schedule. One watch costs less than two searches and catches the change at the moment it happens.\n\nPrice: US$0.005000 per call.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"below_usd": {
"anyOf": [
{
"maxLength": 24,
"type": "string"
},
{
"type": "number"
}
],
"description": "For price_drop: notify under this price."
},
"callback_url": {
"description": "Optional. Vortex POSTs here on a change.",
"format": "uri",
"type": "string"
},
"destination": {
"description": "Required for reach_change.",
"maxLength": 2,
"minLength": 2,
"pattern": "^[A-Za-z]{2}$",
"type": "string"
},
"kind": {
"description": "What you want to be told about.",
"enum": [
"price_drop",
"back_in_stock",
"reach_change"
],
"type": "string"
},
"product": {
"description": "Required for price_drop and back_in_stock.",
"format": "uri",
"maxLength": 2048,
"type": "string"
},
"store": {
"description": "Required for reach_change.",
"maxLength": 300,
"type": "string"
}
},
"required": [
"kind"
],
"type": "object"
},
"name": "watch",
"outputSchema": null
},
{
"description": "Your handle, wallet, balance and usage. Free.\n\nWhen to use: Call this to check your balance before a run, or to confirm your token still works.\n\nPrice: Free.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "whoami",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:08ff003671d497aba4cb2a08cbd09d25461c3f1ca7c1402041761127b4521351 | sha256sum