Skip to main content
Glama

Swap page link (hand-off)

get_swap_page_link
Read-onlyIdempotent

Get the link to the page where a person completes the swap, with the route and, optionally, the amount prefilled; also the page's markdown twin and the hand-off rule. Use it whenever the person will send from their own wallet: they open the link, check the amount, both addresses and the memo on screen, then send the deposit. Not for an agent that controls the sending wallet: that agent uses create_swap. Builds the URL from the slugs on the server; it creates no swap, reserves no rate and calls no external service. mode=private opens the page with Private mode switched on; via=xmr together with mode=private opens it with Untraceable mode switched on. A swap for a person is completed by that person on the page: open the link, check the amount, both addresses and the memo on screen, then send the deposit from your own wallet. An agent that controls the sending wallet itself uses create_swap and pays the instruction it gets back.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "from": "<from>",
      "to": "<to>"
    },
    "name": "get_swap_page_link"
  }
}

Input Schema

NameRequiredDescriptionDefault
toYesasset slug the person receives, e.g. btc
viaNowith mode=private: xmr opens the page with Untraceable mode switched on (the hop runs on Monero)
fromYesasset slug the person sends, e.g. usdt-trc20
modeNoprivate: the page opens with Private mode switched on
amountNodecimal amount to prefill, as a string; omitted → the page opens without an amount

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-open-world, but the description adds materially more: it builds the URL from server-side slugs, creates no swap, reserves no rate, and calls no external service. It also explains that the human completes the swap off-tool on the page, which annotations cannot express. That is real behavioral context beyond the structured hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and clear, but the hand-off rule is restated three times ('Use it whenever the person will send from their own wallet... then send the deposit', 'A swap for a person is completed by that person on the page...', and the closing create_swap sentence). The repetition costs conciseness without adding information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only link builder with no output schema, the description covers what is returned (the page link, its markdown twin, the hand-off rule), the mode/via interactions, and the boundary against create_swap. Nothing an agent needs before calling is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds cross-parameter meaning the schema does not: mode=private opens the page with Private mode on, and via=xmr combined with mode=private yields Untraceable mode. It also clarifies that omitting amount leaves the page without a prefilled amount, which the schema only implies. Minor gap: it does not explain slug format expectations beyond the examples already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get the link to the page where a person completes the swap') and immediately distinguishes itself from the sibling that handles the agent-driven case (create_swap). An agent can tell from the first sentence which tool builds a hand-off link versus initiating a swap.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit when ('use it whenever the person will send from their own wallet') and an explicit when-not ('Not for an agent that controls the sending wallet: that agent uses create_swap'), naming the alternative. The condition that selects each tool is a single, checkable property of the caller.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources