# Tollbooth Swap API (remote · api.tollboothswap.xyz)

Token swaps and honeypot/rug checks for AI agents on 8 chains, paid per-call in USDC via x402.

- Trust score: 64/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-06

## Components

- remote · `api.tollboothswap.xyz`: 64/100 (this document), [markdown](https://verifymcp.io/servers/xyz-tollboothswap-api-tollbooth/api.md), [page](https://verifymcp.io/servers/xyz-tollboothswap-api-tollbooth/api)
- npm · `tollboothswap-mcp`: 66/100, [markdown](https://verifymcp.io/servers/xyz-tollboothswap-api-tollbooth/tollboothswap-mcp.md), [page](https://verifymcp.io/servers/xyz-tollboothswap-api-tollbooth/tollboothswap-mcp)

## Channel facts

- Endpoint: `https://api.tollboothswap.xyz/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.3`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-06.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 4 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 78/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 742 tokens (~123/item across 6 items; 6 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 7/100
  - Stability observed for 2 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http xyz-tollboothswap-api-tollbooth https://api.tollboothswap.xyz/mcp
```

### Codex

```toml
[mcp_servers.xyz-tollboothswap-api-tollbooth]
url = "https://api.tollboothswap.xyz/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "xyz-tollboothswap-api-tollbooth": {
      "type": "remote",
      "url": "https://api.tollboothswap.xyz/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add xyz-tollboothswap-api-tollbooth --url https://api.tollboothswap.xyz/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  xyz-tollboothswap-api-tollbooth:
    url: "https://api.tollboothswap.xyz/mcp"
```

### Other

```json
{
  "mcpServers": {
    "xyz-tollboothswap-api-tollbooth": {
      "type": "http",
      "url": "https://api.tollboothswap.xyz/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-05 (score 64, +1)

- [functional improvement] Stability: unverified → 0.03

### 2026-08-04 (score 63)

First indexed and scored.

## MCP tools (6)

### `get_service_info` (~27 tokens)

Get service info

Get Tollbooth service metadata: supported chains, swap fee, x402 toll pricing.

Output parameters:

- `description` (string): What the service does
- `endpoints` (object): HTTP endpoints exposed by the service
- `name` (string): Service name
- `payment` (object): x402 payment networks and pricing

### `resolve_token` (~88 tokens)

Resolve token symbol

Resolve a token ticker symbol (e.g. PEPE, WIF, USDC) to contract addresses on a chain, free. Curated majors return one verified match; others return live DEX matches ranked by liquidity.

Input parameters:

- `chain` (string, required): Chain to operate on
- `symbol` (string, required): Ticker symbol to resolve, e.g. USDC, PEPE, WIF

Output parameters:

- `chain` (string): Chain searched
- `matches` (array): Matching tokens, best first
- `next` (object): Suggested follow-up calls
- `symbol` (string): Symbol searched

### `get_quote` (~139 tokens)

Get swap quote

Get a free indicative swap quote (output amount includes Tollbooth's fee). Use before build_swap to decide whether to trade.

Input parameters:

- `amount` (string, required): Sell amount as an integer string in the input token's base units
- `chain` (string, required): Chain to operate on
- `inputToken` (string, required): Token being sold: mint address (solana) or ERC-20 address (EVM chains)
- `outputToken` (string, required): Token being bought: mint address (solana) or ERC-20 address (EVM chains)
- `slippageBps` (integer): Max slippage in bps (default 100)

Output parameters:

- `chain` (string)
- `feeBps` (number): Tollbooth fee in basis points
- `inputAmount` (string): Sell amount in base units
- `inputToken` (string)
- `next` (object): How to build the swap transaction
- `outputAmount` (string): Estimated buy amount in base units, after fees
- `outputToken` (string)
- `slippageBps` (number)

### `build_swap` (~207 tokens)

Build swap transaction

Build an unsigned swap transaction for the taker wallet to sign and submit. Costs an x402 toll in USDC (paid automatically when the x-tollbooth-payer-key header is set). Returns the transaction, quote, and a signed receipt.

Input parameters:

- `amount` (string, required): Sell amount as an integer string in the input token's base units
- `chain` (string, required): Chain to operate on
- `inputToken` (string, required): Token being sold: mint address (solana) or ERC-20 address (EVM chains)
- `outputToken` (string, required): Token being bought: mint address (solana) or ERC-20 address (EVM chains)
- `safeMode` (boolean): Screen both tokens first; refuses the build if either is critical-risk (honeypot etc.)
- `slippageBps` (integer): Max slippage in bps (default 100)
- `taker` (string, required): Wallet address that will sign and send the swap

Output parameters:

- `accepts` (array): x402 payment options when unpaid
- `chain` (string)
- `error` (string): Present when the request failed or payment is required
- `next` (object): Suggested follow-up calls
- `quote` (object): Quote the transaction was built from
- `receipt` (object): Signed receipt for this build
- `safety` (object): Safety reports when safeMode was requested
- `transaction` (object): Unsigned transaction for the taker to sign

### `check_token` (~96 tokens)

Check token safety

Token safety screen before trading: honeypot, rug-pull, freeze/mint authority, transfer hooks, sell tax, blacklists. Returns verdict (ok/warn/critical/unknown), risk score, and findings. Costs an x402 toll.

Input parameters:

- `chain` (string, required): Chain to operate on
- `token` (string, required): Token to screen: mint address (solana) or ERC-20 address (EVM chains)

Output parameters:

- `accepts` (array): x402 payment options when unpaid
- `chain` (string)
- `error` (string): Present when the request failed or payment is required
- `findings` (array): Individual risk findings
- `next` (object): Suggested follow-up calls
- `riskScore` (number): 0 (safe) to 100 (critical)
- `source` (string): Data source used for the screen
- `token` (string)
- `verdict` (string): ok, warn, critical, or unknown

### `get_receipt` (~36 tokens)

Get signed receipt

Fetch a signed Tollbooth receipt by id and verify its signature.

Input parameters:

- `id` (string, required): Receipt id returned by build_swap

Output parameters:

- `error` (string): Present when the receipt was not found
- `id` (string): Receipt id
- `receipt` (object): Receipt payload
- `signature` (string): Server signature over the receipt
- `valid` (boolean): Whether the signature verified

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/xyz-tollboothswap-api-tollbooth/api#diagnostics

## Score history

- 2026-08-06: 64
- 2026-08-05: 64
- 2026-08-04: 63

## Links

- Remote endpoint: https://api.tollboothswap.xyz/mcp
- Repository: https://github.com/soundsparkaudiolab/tollboothswap-mcp
- Website: https://api.tollboothswap.xyz/
- Changelog RSS feed: https://verifymcp.io/servers/xyz-tollboothswap-api-tollbooth/api.xml
- Changelog JSON feed: https://verifymcp.io/servers/xyz-tollboothswap-api-tollbooth/api.json
- HTML version of this page: https://verifymcp.io/servers/xyz-tollboothswap-api-tollbooth/api
