HiddenSwap

No-KYC crypto swaps, no account or email. Read-only quotes, coins, swap links, order status.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
100%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,327Tokens (tool definitions)
~4.9 KBTypical response size
Moderate attention impact (1.82% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "swap": {
      "url": "https://hiddenswap.com/mcp"
    }
  }
}

Remote endpoints

https://hiddenswap.com/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_coins(query, side, limit)

Find the coin ids HiddenSwap uses, by ticker, name or network, for example "usdt tron", "monero" or "eth base". Each result gives the id to pass to the other tools, the network, whether the coin can be sent or received in a swap, whether a memo is usually needed, and the coin page when there is one. HiddenSwap is a no-KYC crypto exchange for crypto-to-crypto swaps. Read-only. No account, no email and no ID needed to swap.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 60,
      "description": "Ticker, name or network words, for example \"usdt tron\" or \"monero\"."
    },
    "side": {
      "type": "string",
      "enum": [
        "send",
        "receive"
      ],
      "description": "Only coins that can be sent (send) or received (receive) in a swap."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25,
      "default": 10,
      "description": "Most results to return (1 to 25)."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "side": {
      "type": "string",
      "enum": [
        "send",
        "receive"
      ]
    },
    "coins": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "ticker",
          "name",
          "network",
          "canSend",
          "canReceive",
          "memoRequired"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "ticker": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "network": {
            "type": "string"
          },
          "canSend": {
            "type": "boolean"
          },
          "canReceive": {
            "type": "boolean"
          },
          "memoRequired": {
            "type": "boolean"
          },
          "memoName": {
            "type": "string"
          },
          "coinPageUrl": {
            "type": "string"
          }
        }
      }
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "query",
    "coins",
    "notes"
  ],
  "additionalProperties": false
}
🟢get_quote(from, to, amount, rateType)

Estimate a crypto-to-crypto swap on HiddenSwap, a no-KYC crypto exchange. Returns the amount the person would receive after all fees, the rate, the minimum and maximum, the payout fee, the usual duration and a prefilled swap link. Uses a quote recorded in the last two hours when one matches the exact amount (floating rate only, labelled with its time), otherwise a live quote. Read-only: it creates no order and moves no funds. Coin ids come from search_coins (for example btc, xmr, usdttrc20). No account, no email and no ID needed to swap.

Input Schema

{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "minLength": 1,
      "maxLength": 24,
      "pattern": "^[A-Za-z0-9]{1,24}$",
      "description": "The coin sent. Coin id from search_coins, for example btc, xmr or usdttrc20 (USDT on Tron)."
    },
    "to": {
      "type": "string",
      "minLength": 1,
      "maxLength": 24,
      "pattern": "^[A-Za-z0-9]{1,24}$",
      "description": "The coin received. Coin id from search_coins, for example btc, xmr or usdttrc20 (USDT on Tron)."
    },
    "amount": {
      "type": "string",
      "maxLength": 34,
      "pattern": "^\\d{1,15}(\\.\\d{1,18})?$",
      "description": "Amount of the coin sent, as a decimal string with a dot, for example \"0.05\"."
    },
    "rateType": {
      "type": "string",
      "enum": [
        "float",
        "fixed"
      ],
      "default": "float",
      "description": "float (default): the rate is set when the deposit is confirmed. fixed: a rate held once the swap is started on the site, when the pair offers one."
    }
  },
  "required": [
    "from",
    "to",
    "amount"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "from": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "id",
        "ticker",
        "name",
        "network"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "ticker": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "network": {
          "type": "string"
        }
      }
    },
    "to": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "id",
        "ticker",
        "name",
        "network"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "ticker": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "network": {
          "type": "string"
        }
      }
    },
    "rateType": {
      "type": "string",
      "enum": [
        "float",
        "fixed"
      ]
    },
    "amountFrom": {
      "type": "string"
    },
    "amountTo": {
      "type": "string",
      "description": "Estimated amount received, after all fees."
    },
    "rate": {
      "type": "string",
      "description": "How much of the received coin one unit of the sent coin buys, before the payout fee."
    },
    "min": {
      "type": "string"
    },
    "max": {
      "type": "string"
    },
    "payoutFee": {
      "type": "string",
      "description": "Fee for sending the new coins, in the received coin. Already taken off amountTo."
    },
    "etaMinutes": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "minItems": 2,
      "maxItems": 2,
      "description": "Usual duration in minutes: low and high."
    },
    "quotedAt": {
      "type": "string",
      "description": "When the quote was made (ISO 8601)."
    },
    "source": {
      "type": "string",
      "enum": [
        "live",
        "recorded"
      ]
    },
    "swapUrl": {
      "type": "string",
      "description": "Prefilled swap page. The person reviews and starts the swap there."
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "from",
    "to",
    "rateType",
    "amountFrom",
    "amountTo",
    "rate",
    "quotedAt",
    "source",
    "swapUrl",
    "notes"
  ],
  "additionalProperties": false
}
🟢get_pair_info(from, to, amount)

Check whether two coins can be swapped on HiddenSwap, a no-KYC crypto exchange, without asking for a live quote. Returns both coins with their networks, whether the pair can be swapped, fixed-rate support, the recorded limits and estimate when there are any, memo notes, the pair page and a prefilled swap link the person opens to finish on hiddenswap.com. Read-only. No account, no email and no ID needed to swap.

Input Schema

{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "minLength": 1,
      "maxLength": 24,
      "pattern": "^[A-Za-z0-9]{1,24}$",
      "description": "The coin sent. Coin id from search_coins, for example btc, xmr or usdttrc20 (USDT on Tron)."
    },
    "to": {
      "type": "string",
      "minLength": 1,
      "maxLength": 24,
      "pattern": "^[A-Za-z0-9]{1,24}$",
      "description": "The coin received. Coin id from search_coins, for example btc, xmr or usdttrc20 (USDT on Tron)."
    },
    "amount": {
      "type": "string",
      "maxLength": 34,
      "pattern": "^\\d{1,15}(\\.\\d{1,18})?$",
      "description": "Optional. Amount of the coin sent, as a decimal string with a dot, for example \"0.05\"."
    }
  },
  "required": [
    "from",
    "to"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "from": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "id",
        "ticker",
        "name",
        "network",
        "canSend",
        "canReceive",
        "memoRequired"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "ticker": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "network": {
          "type": "string"
        },
        "canSend": {
          "type": "boolean"
        },
        "canReceive": {
          "type": "boolean"
        },
        "memoRequired": {
          "type": "boolean"
        },
        "memoName": {
          "type": "string"
        },
        "coinPageUrl": {
          "type": "string"
        }
      }
    },
    "to": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "id",
        "ticker",
        "name",
        "network",
        "canSend",
        "canReceive",
        "memoRequired"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "ticker": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "network": {
          "type": "string"
        },
        "canSend": {
          "type": "boolean"
        },
        "canReceive": {
          "type": "boolean"
        },
        "memoRequired": {
          "type": "boolean"
        },
        "memoName": {
          "type": "string"
        },
        "coinPageUrl": {
          "type": "string"
        }
      }
    },
    "canSwap": {
      "type": "boolean"
    },
    "fixedRate": {
      "type": "string",
      "enum": [
        "available",
        "not_available",
        "unknown"
      ]
    },
    "recorded": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "recordedAt",
        "amountFrom",
        "amountTo"
      ],
      "properties": {
        "recordedAt": {
          "type": "string"
        },
        "amountFrom": {
          "type": "string"
        },
        "amountTo": {
          "type": "string"
        },
        "rate": {
          "type": "string"
        },
        "min": {
          "type": "string"
        },
        "max": {
          "type": "string"
        },
        "payoutFee": {
          "type": "string"
        },
        "etaMinutes": {
          "type": "array",
          "items": {
            "type": "number"
          },
          "minItems": 2,
          "maxItems": 2,
          "description": "Usual duration in minutes: low and high."
        }
      }
    },
    "pairPageUrl": {
      "type": "string"
    },
    "swapUrl": {
      "type": "string"
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "from",
    "to",
    "canSwap",
    "fixedRate",
    "notes"
  ],
  "additionalProperties": false
}
🟢get_order_status(orderId)

Check the stage of a HiddenSwap order by its order ID, for example awaiting deposit, confirming, swapping, sending, complete, needs support, refunded or expired. The order ID is private: anyone who has it can open the order page, which shows the addresses and amounts unless the owner hid the order. Only use an order ID the person gave you, and never repeat it anywhere else. Returns the stage, a short label, whether it is final, when it last changed, and links to the order page and support. It never returns addresses, amounts or transaction hashes. For a hidden order, it says only that the order is hidden. Read-only. No account, no email and no ID needed to swap.

Input Schema

{
  "type": "object",
  "properties": {
    "orderId": {
      "type": "string",
      "minLength": 8,
      "maxLength": 60,
      "pattern": "^[A-Za-z0-9 ]+$",
      "description": "The order ID the person saved when they started the swap. Private: only use one the person gave you."
    }
  },
  "required": [
    "orderId"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "orderId": {
      "type": "string"
    },
    "stage": {
      "type": "string",
      "enum": [
        "awaiting",
        "confirming",
        "exchanging",
        "sending",
        "sent",
        "failed",
        "refunded",
        "expired"
      ]
    },
    "label": {
      "type": "string"
    },
    "final": {
      "type": "boolean"
    },
    "updatedAt": {
      "type": "string",
      "description": "When the stage last changed (ISO 8601)."
    },
    "orderUrl": {
      "type": "string"
    },
    "supportUrl": {
      "type": "string"
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "orderId",
    "stage",
    "label",
    "final",
    "updatedAt",
    "orderUrl",
    "supportUrl",
    "notes"
  ],
  "additionalProperties": false
}

Recommended Prompts

find_specific
Find [specific item] using HiddenSwap
Expected tools: search_coins
fetch_info
Fetch [information type] using HiddenSwap
Expected tools: get_quote
research_workflow
Search for [topic], then get detailed information about the top results using HiddenSwap
Expected tools: search_coinsget_quote
search_research
Search for information about [topic] using HiddenSwap
Expected tools: search_coins
retrieve_data
Get details about [item] from HiddenSwap
Expected tools: get_quote

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools
verifiedversion not recorded4 tools