mcpField
S
Swap Api

Swap Api

ローカル
github.com/Swap-API開発ツール2230 週間前に更新

Swap Api について

Swap Api MCP Server は SwapAPI の MCP サーバーで、EVM チェーン上のトークンスワップに必要な実行可能なトランザクションデータを AI エージェントに提供します。スワップを自動化するエージェントを開発する人を対象としており、README によると API キーは不要です。

主な機能

  1. 01実行可能なスワップ用 calldata の返却
  2. 02チェーン ID による EVM ネットワークの指定
  3. 03最大スリッページの設定(既定は 0.5%)
  4. 04ルーターアドレス、データ、value、ガス見積もりの返却

活用シーン

  1. 01EVM チェーン上でトークンスワップを行う AI エージェント
  2. 02送信前のスワップ見積もりとトランザクションデータの準備
  3. 03Claude Desktop や Cursor からのスワップ機能の呼び出し

MCP 対応

MCP サーバーとして、スワップ用トランザクションデータを返す swap_tokens ツールを MCP クライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"swap-api": {
"command": "npx",
"args": [
"-y",
"@swapapi/mcp"
]
}
}
}
起動コマンドnpx -y @swapapi/mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@swapapi/mcp0.1.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

SwapAPI MCP サーバー

SwapAPI 用の MCP(Model Context Protocol)サーバーです。AI エージェントが、あらゆる EVM チェーンで実行可能なトークンスワップの calldata を取得できます。

インストール

npm install -g @swapapi/mcp

または、npx から直接使用します。

npx @swapapi/mcp

クライアントの設定

Claude Desktop

Claude Desktop の設定に追加します。

{
  "mcpServers": {
    "swapapi": {
      "command": "npx",
      "args": ["@swapapi/mcp"]
    }
  }
}

または、ローカルにインストールして使用します。

{
  "mcpServers": {
    "swapapi": {
      "command": "npx",
      "args": ["tsx", "/path/to/swap-api/mcp/mcp-server.ts"]
    }
  }
}
Cursor

Cursor の設定(Settings → MCP)に追加します。

{
  "mcpServers": {
    "swapapi": {
      "command": "npx",
      "args": ["@swapapi/mcp"]
    }
  }
}
その他のクライアント

MCP 互換のクライアントであれば、同じ設定形式を使用できます。MCP サーバーの設定を追加する場所については、お使いのクライアントのドキュメントをご確認ください。

利用可能なツール

swap_tokens

EVM チェーンでトークンをスワップするための、実行可能なトランザクションデータを取得します。

パラメーター:

パラメーター型必須説明
chainIdnumberはいチェーン ID(1=Ethereum、8453=Base、42161=Arbitrum など)
tokenInstringはい入力トークンのアドレス。ネイティブトークン(ETH、MATIC など)には 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE を使用します
tokenOutstringはい出力トークンのアドレス
amountInstringはい最小単位での数量(小数点以下18桁のトークンは wei、6桁のトークンはマイクロ単位)
senderstringはいトランザクションに署名して送信するウォレットのアドレス
maxSlippagenumberいいえ最大スリッページ許容値 0~1(デフォルト:0.005 = 0.5%)

戻り値:

{
  "to": "0x...",           // Router contract address to call
  "data": "0x...",         // ABI-encoded swap calldata
  "value": "1000000000000000000",  // Native token value (if swapping from native)
  "gas": "150000",         // Estimated gas limit
  "guaranteedOut": "..."   // Minimum output amount after slippage
}

例

Base で 0.001 ETH を USDC にスワップ
{
  "chainId": 8453,
  "tokenIn": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
  "tokenOut": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
  "amountIn": "1000000000000000",
  "sender": "0xYourAddress"
}
Arbitrum でスリッページ 1% に設定して USDC を ETH にスワップ
{
  "chainId": 42161,
  "tokenIn": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
  "tokenOut": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
  "amountIn": "10000000",
  "sender": "0xYourAddress",
  "maxSlippage": 0.01
}

事前確認リスト

スワップトランザクションを送信する前に、以下を確認してください。

  1. ERC-20 の承認:tokenIn がネイティブトークンでない場合、sender が少なくとも amountIn の分だけルーターを承認済みであることを確認します
  2. 残高の確認:sender の残高が amountIn(ネイティブトークンの場合は value も加算)に対して十分であることを確認します
  3. ガスの見積もり:トランザクションに対して eth_estimateGas を呼び出し、20%のバッファーを加算します
  4. シミュレーション:eth_call を実行して、トランザクションがリバートしないことを確認します
  5. タイミング:見積もりの取得後30秒以内に送信します(calldata には有効期限があります)

API の詳細については、メインの README.md をご覧ください。

開発

cd mcp
npm install
npm start
テスト

テストスイートを実行します。

npm test

または、MCP Inspector を使用します。

npx @modelcontextprotocol/inspector tsx mcp-server.ts

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。