xswap.to MCP server
to.xswap/swapxswap.tostreamable-httpv1.0.0Scanned
Quote, create and track crypto swaps across hundreds of coins and networks. No account needed.
4 tools: 1 do something that can't be undone and 3 only read.
- Reads private data · 0
- Reads text others write · 3
- Can send data out · 1
- No findings
Tools listed without sign-in. Remote posture
With Anlyon
1 tool here does something that can't be undone. Govern it.
- Anlyon lists the tools and adopts none.
- Each tool you adopt gets approvals and receipts.
- Your agent never holds the key.
A tool your agent calls directly is not routed through Anlyon and is not governed by it. anlyon.dev only lists and labels, and these labels are the same either way.
What the xswap.to MCP server can do
The xswap.to MCP server is published by xswap.to, a domain the MCP Registry verified. It has 4 tools. It can do things that cannot be undone, such as sending, paying or publishing (create_swap), but cannot delete data. 3 tools only read.
3 tools bring in text other people can write (get_quote, create_swap and get_swap_status); 1 tool can send data out of your system (create_swap).
None of the fixed checks matched anything in its tool definitions. That is not a safety guarantee.
Its remote endpoint lists its tools without sign-in.
Last scanned Nov 10, 2026, version 1.0.0.
Tools
Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.
4 tools
Can't be undone 1Claude Code: ask
create_swapCreate a swap order and get a one-time deposit address.Reads text others writeCan send data outNo findings
Why it is in this group
- The name "create_swap" says "create": a word for a change.
- The input addresses people (input.to): what it sends cannot be taken back.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- outboundThe input takes a destination (input.to): what the tool writes goes there.
Description, as the server wrote it Create a swap order and get a one-time deposit address. Nothing moves until the user sends the deposit from their own wallet. Before calling, confirm with the user both currencies and their networks, the amount and the payout address. Afterwards tell the user to send exactly amount of the from currency, on its network, to depositAddress, to add depositExtraId as the memo or tag when it is set, and to keep trackUrl. Show any warnings to the user.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
Only reads 3Show 3 read-only tools
get_quoteEstimate how much the user receives for sending an amount, with the minimum and maximum for the pair.Reads text others writeNo findings
Why it is in this group
- The name "get_quote" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Estimate how much the user receives for sending an amount, with the minimum and maximum for the pair. Network fees are already taken out of estimatedAmount. The rate floats, so the result is an estimate, not a promise. Show any warnings to the user.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
get_swap_statusCurrent status of a swap by its id.Reads text others writeNo findings
Why it is in this group
- The name "get_swap_status" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Current status of a swap by its id. Statuses: new, waiting (no deposit seen yet), confirming, exchanging, sending, finished, failed, refunded, verifying (paused for a check), expired.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
search_currenciesFind coins and tokens by symbol, name or network and get their currency ids.No findings
Why it is in this group
- The name "search_currencies" says "search": a word for reading.
Description, as the server wrote it Find coins and tokens by symbol, name or network and get their currency ids. Each id is one coin on one network: usdttrc20 is USDT on TRON, usdterc20 is USDT on Ethereum. Use the ids in get_quote and create_swap.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
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.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged private-data.
- Reads private data0
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write3
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out1
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Remote posture
What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.
Looked at Nov 11, 2026, 09:20 UTC, unchanged since Nov 11, 2026. No credentials were sent and no tool was called. What is looked at.
- Reachable
- yes
- HTTP status of an anonymous initialize
- 200
- tools/list served without credentials
- yes
- Tools that change things, listed without credentials
- 1
- Protocol version
- 2025-06-18
- WWW-Authenticate on 401
- not observed
- resource_metadata in WWW-Authenticate
- not observed
- RFC 9728 protected resource metadata
- not observed
- Authorization servers
- not observed
- Legacy HTTP+SSE transport
- no
- Dynamic client registration
- not observed
- Client ID metadata documents
- not observed
- HighThe whole server
The endpoint served tools/list without credentials, and the list has 1 tool that changes things (1 irreversible). Whether a call also works without credentials was not tested: tools are never called.
What this check looks forMatched text
https://xswap.to/mcp: tools/list returned 4 tools to an anonymous client, including create_swap (irreversible)
Findings
Matches of fixed checks, with the text they matched.
No check matched anything in these tool definitions. That is not a safety guarantee.
History
Changes to its tool definitions and to its remote endpoint, newest first.
No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http swap https://xswap.to/mcpclaude mcp add --transport http swap https://xswap.to/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__swap__search_currencies",
"mcp__swap__get_quote",
"mcp__swap__get_swap_status"
],
"ask": [
"mcp__swap__create_swap"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as swap. Review it before you use it.
Capability tags behind 3 rules
- mcp__swap__get_quote untrusted-input
- mcp__swap__create_swap untrusted-input, outbound
- mcp__swap__get_swap_status untrusted-input
Pin
Keep the decision: fail CI when the tools change, follow every change, or show a badge.
Pin in CI
Fail a build when the tools you reviewed are not the tools the server serves today.
curl -s "https://anlyon.dev/api/v1/servers/to.xswap/swap/verify?hash=3b6d3c20d1579108f2a909cfd5b1e98cb47432861bd3d0fe2a5e41e58518662f" | jq -e '.changed == false'Pinned hash 3b6d3c20d157, from Nov 10, 2026, 15:18 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/to.xswap/swap/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/to.xswap/swap)Source: MCP Registry. Synced Nov 10, 2026, 15:18 UTC.
xswap.to MCP server: questions and answers
Answered from the scan above, not from the publisher's description.
Is the xswap.to MCP server safe?
- No scan can promise that. What its definitions show: 4 tools, 1 of which can change, send or delete something, and 0 findings from fixed checks. Allow the reads, ask before each change, and deny the deletes; the permissions block on this page does that.
Can the xswap.to MCP server delete data?
- No tool is classed as destructive: going by their definitions, none of them deletes, cancels or revokes anything.
Can the xswap.to MCP server do things that cannot be undone?
- Yes. 1 tool can send, pay, publish or merge: create_swap.
What tools does the xswap.to MCP server have?
- 4 tools: 1 irreversible, 3 read. create_swap, search_currencies, get_quote and get_swap_status.
Does the xswap.to MCP server need sign-in or OAuth?
- Its remote endpoint listed its tools to an anonymous client, without sign-in.
Does the xswap.to MCP server send data to outside services?
- 1 tool can carry data out (it sends, posts or publishes, or takes a recipient, channel or URL): create_swap.
Has the xswap.to MCP server changed its tools?
- Not since anlyon.dev started tracking it. Last scanned Nov 10, 2026.