# SwapWallet [Health: Active]

**Category:** 💬 Communication  
**Repository:** https://github.com/SwapWallet/swapwallet-mcp  
**GitHub Stars:** 2  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/swapwallet-2

## Description
Crypto wallet: balances, P&L, history. Swaps, transfers and withdrawals need Telegram approval.

## Tools
Capabilities this server exposes over MCP:

- **get_total_balance** — Total portfolio value plus a per-token breakdown
- **get_balance** — Balance and value of the given tokens
- **get_user_info** — Profile, verification level, limits and settings
- **get_deposit_address** — Deposit address for a token on a network (created if needed)
- **get_profit_and_loss** — Realized and unrealized P&L, all assets or chosen tokens
- **get_transactions** — Deposits, withdrawals, transfers and trades, newest first, with filters
- **get_contacts** — Saved SwapWallet contacts, 10 per page
- **get_ibans** — Verified bank accounts (IBANs) for toman withdrawals
- **get_action_request** — Status of a request: `PENDING`, `EXECUTED`, `REJECTED`, `EXPIRED` or `FAILED
- **request_swap** — Prices a swap between two tokens and asks for approval
- **request_transfer** — Transfer to one of your saved SwapWallet contacts
- **request_crypto_withdraw** — Crypto withdrawal to an external address
- **request_fiat_withdraw** — Toman (IRT) withdrawal to a verified IBAN

## Claude Desktop Quick Installation
Remote MCP endpoint (confidence: high). Install path detected from listing signals. Add as a URL/SSE server in your client:

```json
"mcpServers": {
  "swapwallet": {
    "url": "https://vscode.dev/redirect/mcp/install?name=swapwallet&config=%7B%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fswapwallet.app%2Fmcp%22%7D"
  }
}
```

## Documentation

## What SwapWallet MCP server does

The SwapWallet MCP server exposes a remote interface to a user’s SwapWallet account. Read operations cover total portfolio value, individual token balances, account and verification details, deposit addresses, realized and unrealized profit and loss, transaction history, saved contacts, verified IBANs, and the state of action requests.

It also lets an assistant create requests for token swaps, transfers to saved SwapWallet contacts, crypto withdrawals to external addresses, and toman withdrawals to verified bank accounts. These tools create approval requests rather than directly moving funds.

## How it works

The service is hosted at `https://swapwallet.app/mcp` and uses Streamable HTTP with JSON responses. It is stateless and does not use sessions, server-sent events, or batched requests. An MCP client connects to the endpoint and completes OAuth 2.1 authorization with dynamic client registration and PKCE.

After a user signs in with a phone number and SMS code, they review the requested scopes and grant only the access they want. The server exposes tools permitted by those scopes and checks authorization on every call. Access tokens last one hour; refresh tokens remain valid until the user revokes access.

For actions that can move money, the server prices or prepares the request and sends a preview to the user in Telegram. The user can approve or cancel it there. The assistant should use `get_action_request` to verify the final state and should treat only `EXECUTED` as completed.

## Setup and configuration

There is no local package or process to install. Add the remote URL to an MCP client that supports remote servers, authenticate through the SwapWallet consent flow, and select the required scopes. The repository documents connection commands and configurations for Claude, Claude Code, Cursor, VS Code, Windsurf, Gemini CLI, and Codex CLI.

A SwapWallet account is required. Trading and withdrawals require identity verification, while request tools also require a linked Telegram account. OAuth public clients do not need a client secret or API key.

## Tools and capabilities

The read-oriented tools can:

- Return total holdings or selected token balances.
- Show profile, verification, limits, and settings.
- Create or retrieve a token deposit address for a network.
- Report portfolio P&L and filtered transaction history.
- List saved contacts, verified IBANs, and action-request status.

The request tools support swaps, contact transfers, crypto withdrawals, and IRT withdrawals. Their available inputs and token or network values are defined by each tool schema in the server card.

## Limitations and notes

There is no permission that allows an agent to execute withdrawals without user approval. With two-factor authentication enabled, crypto withdrawals and transfers cannot be requested through MCP and must be performed in the app. Unanswered Telegram requests expire after 15 minutes.

Crypto and fiat withdrawal requests are described as open-world actions, so applications should handle their inputs carefully. Amounts use decimal strings, and token and network values are schema-defined enums. A pending action means the user has not finished approval; it is not evidence that funds moved.

_Full upstream README: https://allmcps.com/mcp/swapwallet-2/readme_

