Skip to main content
Glama
persistenceOne

persistenceone-bridgekitty

Official

BridgeKitty 🐱

AIエージェント向けのクロスチェーンブリッジアグリゲーターMCPサーバー。1つのサーバーで5つのブリッジバックエンドを統合し、EVM、Solana、Cosmosチェーン全体で最適なルートを提供します。

BridgeKittyは、AIエージェント(Claude、Cursor、GPT、またはMCP互換のAI)に対し、クロスチェーンブリッジ転送を検索・実行する機能を提供します。これには、自動ルート最適化、手数料比較、残高確認、安全警告が含まれます。

最新のnpmリリース: @persistenceone/bridgekitty@0.3.9

v0.3.9の新機能

  • XPRTツールの抽出 — ステーキング、報酬、ファーミングツールをスタンドアロンの xprt-farming-toolkit パッケージに移行しました

  • Persistence Interopバックエンドの削除 — BridgeKittyは、5つのバックエンド(deBridge、Relay、LI.FI、Across、Squid)に特化したブリッジアグリゲーターとなりました

  • スリム化されたインターフェース — ツールの数を減らし、エージェントにとってのスコープを明確化しました

  • sign_and_send パラメータ — エージェントがローカルに保存されたウォレットキーを使用して、トランザクションに直接署名・ブロードキャストできるようになりました

  • 完全なEVM署名サポート — すべてのEVMバックエンド(Across、Relay、LI.FI、Squid、deBridge)およびPersistence Interop (EIP-712) で動作します

  • シミュレーションの修正 — ERC20ブリッジが新規ウォレットで動作するようになりました(以前は時期尚早なシミュレーションによってブロックされていました)

  • Solana署名 — 次回リリースで対応予定

  • Solanaサポート — EVM ↔ Solana間の双方向ブリッジ(ラップされていないネイティブSOLの送金)

  • Cosmosサポート — Squid (Axelar) を介したEVM → Persistence/Cosmos Hubのブリッジ

  • プロトコル手数料の透明性 — deBridgeのfixFee、運営費、合計コストをすべての見積もりで表示

  • 残高警告 — ブリッジ額 + プロトコル手数料 + ガス代をウォレットがカバーできない場合に警告

  • XPRTステーキング — MCPサーバーから直接ステーキング/アンステーキング/報酬請求が可能

  • ファーミング倍率 — 報酬APIからステーキングティア(1x → 3x → 5x)を追跡

  • 見積もりの自動更新 — 期限切れの見積もりは実行時に自動再取得(60秒で期限切れ)

  • ERC-20承認 — トークンブリッジ用に常に生成(Relay + deBridge)

  • ブリッジステータスの追跡 — プロバイダーAPIがまだインデックスしていない場合のオンチェーンフォールバック

Related MCP server: LI.FI MCP Server

対応ブリッジ

バックエンド

タイプ

チェーン

強み

deBridge (DLN)

直接

EVM + Solana

高速なインテントベースのフィル、Solanaサポート

Relay

直接

EVM + Solana

プロトコル手数料なし、ガス最適化

LI.FI

アグリゲーター

EVM

最も広いカバレッジ(30以上のブリッジ、任意のトークン間スワップ)

Across

直接

EVM

最速のフィル(約6秒)、同一トークンブリッジ

Squid (Axelar)

アグリゲーター

EVM + Cosmos

EVM → Cosmosルートの唯一の選択肢

ブリッジ方向

方向

バックエンド

ステータス

EVM → EVM

全5種

✅ 本番稼働

EVM → Solana

deBridge, Relay

✅ 本番稼働

Solana → EVM

deBridge

✅ 本番稼働

EVM → Cosmos

Squid

✅ 本番稼働

クイックスタート

npx (インストール不要)

npx @persistenceone/bridgekitty

Claude Code

MCP設定 (~/.claude/claude_code_config.json) に追加してください:

{
  "mcpServers": {
    "bridgekitty": {
      "command": "npx",
      "args": ["@persistenceone/bridgekitty"]
    }
  }
}

Cursor IDE

CursorのMCP設定(Settings > MCP Servers)に追加してください:

{
  "bridgekitty": {
    "command": "npx",
    "args": ["@persistenceone/bridgekitty"]
  }
}

Claude Desktop

claude_desktop_config.json に追加してください:

{
  "mcpServers": {
    "bridgekitty": {
      "command": "npx",
      "args": ["@persistenceone/bridgekitty"]
    }
  }
}

ウォレット設定

BridgeKittyは自律的なブリッジングのためにウォレットを管理できます。wallet_setupを実行してEVM、Cosmos、Solana用のウォレットを作成するか、見積もり時に独自のアドレスを指定してください。

ウォレット設定は ~/.bridgekitty/.env(または実行ディレクトリ)に保存されます。キーがローカルマシンから外部へ送信されることはありません。

変数

説明

PRIVATE_KEY

EVMプライベートキー (16進数)

MNEMONIC

BIP-39ニーモニック (EVM、Cosmos、Solanaキーを生成)

SOLANA_PRIVATE_KEY

Solanaプライベートキー (base58)

トランザクション署名

デフォルトでは、bridge_executeはエージェントやユーザーが外部で署名するための未署名トランザクションを返します。

sign_and_send: trueを設定すると自律的な署名が有効になります。BridgeKittyは~/.bridgekitty/.envに保存されたウォレットキーを使用して、以下のフロー全体を処理します:

  1. 承認 — ERC-20承認トランザクションを送信(必要な場合)

  2. 再構築 — 更新されたナンスでブリッジトランザクションを再取得(承認が送信された場合)

  3. シミュレーション — eth_estimateGasによる事前チェックを実行

  4. 署名 — ローカルのプライベートキーでトランザクションに署名

  5. ブロードキャスト — チェーンに送信し、txハッシュとエクスプローラーリンクを返す

オプションのAPIキー

変数

説明

LIFI_API_KEY

LI.FI APIキー (レート制限緩和)

DEBRIDGE_API_KEY

deBridge APIキー

SQUID_INTEGRATOR_ID

SquidインテグレーターID

MCPツール

コアブリッジツール

ツール

説明

bridge_get_quote

すべてのバックエンドから競争力のある見積もりを取得。手数料、時間見積もり、残高警告を表示。

bridge_execute

見積もりからトランザクションを構築。承認の処理、期限切れ見積もりの自動更新。sign_and_send: trueで自動署名・ブロードキャスト。

bridge_status

ブリッジの進捗を追跡。APIが未インデックスの場合のオンチェーンフォールバック。

bridge_chains

プロバイダーが対応するチェーンの一覧を表示。

bridge_tokens

チェーン上のトークンを検索。

マルチホップ & 発見

ツール

説明

bridge_quote_multi

直接ルートが存在しない場合のマルチホップルート解決。

bridgekitty_help

例とツールの使用方法を含むエージェント向けオンボーディングガイド。

xprt_onboard

初心者向けのガイド付きオンボーディングフロー。

ウォレットツール

ツール

説明

wallet_setup

単一のニーモニックからEVM、Cosmos、Solanaのウォレットを作成。

wallet_import

ニーモニックまたはプライベートキーから既存のウォレットをインポート。

wallet_status

設定されたウォレットアドレスとキーソースを表示。

wallet_balance

USD価格(CoinGecko)を含む全チェーンの残高を確認。

XPRTステーキングとファーミングは、スタンドアロンのxprt-farming-toolkitパッケージに移行しました。

例: BaseからArbitrumへUSDCをブリッジする

デフォルト(未署名トランザクション)

Agent: "Bridge 100 USDC from Base to Arbitrum"

→ bridge_get_quote: Gets quotes from deBridge, Relay, LI.FI, Across
→ Shows: best rate, fees, estimated time, balance check
→ bridge_execute: Builds approval tx + bridge tx
→ Agent signs and sends both transactions
→ bridge_status: Tracks until destination confirmed

sign_and_sendを使用(自律署名)

Agent: "Bridge 100 USDC from Base to Arbitrum"

→ bridge_get_quote: Gets quotes from all backends
→ bridge_execute with sign_and_send: true
  → Auto-signs approval tx + bridge tx using local wallet keys
  → Returns tx hash + explorer link
→ bridge_status: Tracks until destination confirmed

アーキテクチャ

Agent → MCP Tools → Routing Engine → [deBridge, Relay, LI.FI, Across, Squid]
                         ↓
                   Quote Cache (60s) + Circuit Breaker
                         ↓
                   Best Quote → buildTransaction
                         ↓
              ┌──────────┴──────────┐
              ↓                     ↓
        Unsigned TX          Signed + Broadcast
         (default)            (sign_and_send)
  • ルーティングエンジン: 全バックエンドからの並列見積もり、出力額によるランキング

  • サーキットブレーカー: 失敗したバックエンドを自動スキップし、段階的に復旧

  • トークンレジストリ: チェーンごとの正規アドレスを持つ45以上の検証済みトークン

  • ガス見積もり: マルチRPCフェイルオーバーを備えたチェーン対応のガス代見積もり

  • 残高チェッカー: 実行前にトークンとネイティブ残高が手数料をカバーできるか検証

  • 手数料の透明性: すべての見積もりでプロトコル手数料(deBridge fixFee、運営費)を表示

セキュリティ

  • 正確な金額のみの承認(無制限承認は行わない)

  • 実行前のトランザクションシミュレーション

  • 検証済みトークンレジストリによるアドレススプーフィング防止

  • MCPプロトコル内にプライベートキーを含まない — エージェントは外部でトランザクションに署名

  • sign_and_sendはローカルに保存されたキーのみを使用(ネットワーク経由で送信されない)

  • サーキットブレーカーによる連鎖的な障害の防止

  • エラーメッセージのサニタイズ(キーやパスの漏洩防止)

  • .envファイルの権限チェックと上書き保護

既知の制限事項

  • Solana → EVMは外部署名用のシリアライズされたトランザクションを返します(自動実行不可)

  • Relayのステータス追跡で、完了したクロスチェーンブリッジが「不明」と表示される場合があります

  • Solana SPLトークンはwallet_balanceにまだ表示されません(ネイティブSOLのみ)

  • Cosmos → EVMブリッジはまだサポートされていません(EVM → Cosmosのみ)

ライセンス

MIT

Available Tools

12 tools
bridge_chainsA

List supported chains for cross-chain bridging. Shows which providers support each chain. Chains are deduplicated and grouped by ecosystem: EVM, Cosmos, and Solana. Use 'search' parameter to filter by chain name. Use this to discover available routes before calling bridge_get_quote.

ParametersJSON Schema
NameRequiredDescriptionDefault
searchNoFilter chains by name (e.g. 'base', 'arb')

TDQS

A4.5/5.0
Behavior4/5

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

No annotations provided, but the description discloses key behaviors: lists supported chains, deduplicates, groups by ecosystem, and shows provider support. Lacks output format details but sufficient for a read-only list tool.

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

Conciseness4/5

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

Three sentences, front-loaded with the core purpose, and efficient wording. Could be slightly more concise but no unnecessary content.

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

Completeness4/5

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

Given the tool's simplicity (one optional param, no output schema), the description covers purpose, filtering, grouping, deduplication, and usage sequence. Lacks output structure but adequate for a listing operation.

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% with one optional parameter 'search' described. The description adds value by explaining its purpose (filter by name) and giving examples, going beyond the schema's bare description.

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?

The description clearly states the tool lists supported chains for cross-chain bridging, specifies deduplication and grouping by ecosystem, and differentiates from sibling tools like bridge_get_quote by indicating it's for discovering routes before getting a quote.

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?

Explicitly instructs to use the 'search' parameter for filtering and recommends using this tool before bridge_get_quote to discover available routes, providing clear usage context and alternatives.

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

bridge_executeA

Get the unsigned transaction data to execute a cross-chain bridge transfer. Supports all providers: LI.FI, Squid Router, deBridge, Across, Relay, Persistence Interop. By default returns unsigned transaction(s) for the agent/user to sign and send. Set sign_and_send=true to sign and broadcast using the locally-stored wallet key (requires wallet_setup). Preconditions: Call bridge_get_quote first and pass the quoteId. Ensure sufficient gas on source chain. If an approval is needed (unsigned mode), send the approvalTransaction first, then the main transaction. After execution, use bridge_status with the returned trackingId to monitor progress.

ParametersJSON Schema
NameRequiredDescriptionDefault
quoteIdYesQuote ID from bridge_get_quote result
slippageNoMax slippage tolerance (0.005 = 0.5%). Applied by backends during quoting; reserved for future per-execution override.
sign_and_sendNoIf true, sign and broadcast the transaction server-side using the wallet key from wallet_setup. Supports EVM chains and Persistence Interop. Solana falls back to unsigned.

TDQS

A4.6/5.0
Behavior5/5

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

Even without annotations, the description thoroughly discloses behavior: returns unsigned transaction(s) by default, optional signing with wallet key, preconditions (sufficient gas, approval flow), and post-use monitoring (bridge_status). It also notes a limitation: 'Solana falls back to unsigned.' This is highly transparent.

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

Conciseness4/5

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

The description is a dense paragraph but efficiently structured: main purpose first, then details. Every sentence adds value—preconditions, modes, approval flow, post-execution step. No redundant or vague statements. Slightly long but appropriate for a complex tool.

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?

No output schema exists, so the description must explain return values and workflow. It mentions 'unsigned transaction(s)', approval transaction sequencing, and a trackingId for bridge_status. It covers preconditions, execution modes, and post-execution monitoring, making it complete for an agent to use effectively.

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 baseline is 3. The description adds meaningful context: explains that slippage has a default and is reserved for future overrides, describes sign_and_send behavior across chains, and clarifies that quoteId comes from bridge_get_quote. This exceeds the schema alone.

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?

The description clearly states the tool's function: 'Get the unsigned transaction data to execute a cross-chain bridge transfer.' It specifies the supported providers and distinguishes from siblings like bridge_get_quote (quote) and bridge_status (monitoring). The verb 'execute' and resource 'bridge transfer' are specific and unambiguous.

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

Usage Guidelines4/5

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

The description provides explicit preconditions: 'Call bridge_get_quote first and pass the quoteId.' It also explains when to use sign_and_send vs unsigned mode, and mentions handling approval transactions. While it doesn't explicitly state when not to use the tool, the context is clear for an AI agent to decide.

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

bridge_get_quoteA

Get the best cross-chain bridge quote across multiple providers (LI.FI, Squid Router, deBridge, Across, Relay, Persistence Interop). Supports EVM chains, Cosmos chains (Persistence, Cosmos Hub), and Solana. Accepts token symbols (e.g. 'USDC', 'ETH', 'WBTC', 'XPRT', 'ATOM') or contract addresses (0x...). Symbols are resolved to verified canonical addresses only — no unverified tokens. Returns ranked options by output amount, speed, and fees. Includes failedProviders array showing which providers didn't return quotes and why. Preconditions: None for quoting. Use bridge_execute to act on a quote. Error codes: 'Token resolution failed' (unknown symbol), 'Rate limited' (too many requests), 'Validation error' (invalid params).

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesAmount in human-readable units (e.g. '100' for 100 USDC)
toChainYesDestination chain
toTokenYesToken to receive — symbol (e.g. 'USDC', 'ETH') or contract address (0x...). Symbols resolve to verified canonical addresses only.
fromChainYesSource chain (e.g. 'ethereum', 'base', 'arbitrum', or chain ID like '1', '8453')
fromTokenYesToken to send — symbol (e.g. 'USDC', 'ETH', 'WBTC') or contract address (0x...). Symbols resolve to verified canonical addresses only.
providersNoOptional: only query specific providers (e.g. ['squid', 'lifi']). Default: query all.
toAddressNoRecipient address (defaults to fromAddress)
preferenceNoOptimize for lowest cost or fastest deliveryfastest
fromAddressYesSender wallet address (0x... for EVM, base58 for Solana)

TDQS

A4.3/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses that symbols resolve to verified canonical addresses only, includes a failedProviders array, lists error codes, and mentions the return format (ranked options by output amount, speed, fees). It does not mention auth needs or rate limits, but the error code 'Rate limited' hints at rate limiting. Overall, good transparency for a non-destructive query tool.

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

Conciseness4/5

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

The description is well-structured and front-loaded with the main purpose. It covers supported chains, token resolution, return format, preconditions, and error codes in a logical order. Every sentence adds value, though the list of providers could be shortened. Still, it is appropriately sized for the complexity.

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

Completeness4/5

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

Given the tool's complexity (9 parameters, cross-chain, multiple providers) and no output schema, the description covers inputs, behavior, and outputs adequately. It describes the return as ranked options by output amount, speed, and fees, plus a failedProviders array. While it lacks detailed output structure, it provides enough context for an agent to use the tool effectively.

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% (baseline 3). The description adds meaningful context beyond the schema: explains that amounts are in human-readable units, fromChain accepts names or IDs, symbols resolve to verified addresses, providers optional defaults to all, and fromAddress format depends on chain. This extra detail justifies a score of 4.

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?

The description clearly states the tool gets the best cross-chain bridge quote across multiple providers, listing specific providers and supported chains. It differentiates itself from sibling tools like bridge_execute (to act on a quote) and bridge_quote_multi (implied alternative). The inclusion of error codes adds to clarity.

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

Usage Guidelines4/5

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

Explicitly states 'Preconditions: None for quoting' and 'Use bridge_execute to act on a quote', providing clear when-to-use guidance. However, it does not distinguish from bridge_quote_multi or mention when to avoid using this tool (e.g., for historical data). The guidance is sufficient for the primary use case.

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

bridgekitty_helpA

Get help and guidance on using BridgeKitty. Topics: overview (default), bridging, farming, wallet, troubleshooting. Returns structured guides with recommended tool sequences and common pitfalls.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicNoHelp topic: 'overview', 'bridging', 'farming', 'wallet', or 'troubleshooting'overview

TDQS

A4.3/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the burden. It states that the tool returns structured guides with recommended tool sequences and common pitfalls, which adds behavioral context. However, it does not disclose any potential side effects (though unlikely for a help tool), auth requirements, or rate limits. The description adds modest value beyond the schema.

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

Conciseness5/5

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

The description is two sentences long with no wasted words. It front-loads the purpose, then lists topics and output characteristics. Every sentence provides essential 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?

Given the tool's simplicity (one parameter, no output schema, no annotations), the description is complete. It explains what the tool does, which topics are available, and what kind of output to expect. There is no missing information that would hinder correct usage.

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?

The input schema has 100% coverage with a clear description for the 'topic' parameter. The tool description adds additional context about what the returned guides contain (structured guides with sequences and pitfalls), which enhances understanding beyond the enum values.

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?

The description clearly states the tool provides help and guidance on BridgeKitty, listing specific topics (overview, bridging, farming, wallet, troubleshooting). It differentiates itself from sibling tools that perform actions (e.g., bridge_execute, wallet_import).

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

Usage Guidelines4/5

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

The description lists topics and indicates the default topic is 'overview'. It implies using this tool for guidance before using other tools, but does not explicitly state when not to use it or provide alternatives. However, the sibling tools are all actions, so the usage context is clear.

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

bridge_quote_multiA

Get quotes for multi-hop routes across supported EVM chains. Resolves optimal path internally -- e.g., ETH on Base to USDC on Arbitrum may route through WBTC. Returns the full route as ordered hops with per-hop detail. Note: For Cosmos destinations (Persistence, Cosmos Hub), use xprt_farm_boost or bridge_get_quote with Squid Router.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesAmount in human-readable units (e.g. '100' for 100 USDC)
toChainYesDestination chain (e.g. 'arbitrum', 'bsc', or chain ID)
toTokenYesToken to receive -- symbol (e.g. 'USDC', 'ETH') or contract address (0x...)
optimizeNoOptimize for lowest cost or fastest deliverycheapest
fromChainYesSource chain (e.g. 'base', 'ethereum', or chain ID like '8453')
fromTokenYesToken to send -- symbol (e.g. 'USDC', 'ETH') or contract address (0x...)
fromAddressYesSender wallet address (0x...)

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It reveals that the tool resolves optimal paths internally and returns ordered hops with per-hop detail. However, it omits details like latency, error behavior, or whether quotes are estimates.

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

Conciseness5/5

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

The description is extremely concise: three sentences plus a short note. It front-loads the purpose, gives an example, states the return format, and adds a crucial usage caveat. No waste.

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

Completeness4/5

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

Given the absence of output schema and annotations, the description covers the main purpose, example, return structure, and alternative tools. It could be enhanced by mentioning that quotes are non-binding estimates, but overall it equips the agent with essential context.

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

Parameters3/5

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

All 7 parameters are fully described in the input schema (100% coverage). The tool description adds no additional parameter-level information beyond the schema, so baseline 3 is appropriate.

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?

The description clearly states 'Get quotes for multi-hop routes across supported EVM chains' and provides an illustrative example. It distinguishes from Cosmos-specific tools by directing users to alternatives.

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

Usage Guidelines4/5

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

The description explicitly advises against using this tool for Cosmos destinations, directing users to xprt_farm_boost or bridge_get_quote. However, it does not clarify when to prefer this over bridge_get_quote for EVM single-hop routes.

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

bridge_statusA

Check the status of a cross-chain bridge transfer. Supports all providers: LI.FI, Squid Router, deBridge, Across, Relay, Persistence Interop. Provide the tracking ID from bridge_execute, or a transaction hash with provider name. Returns: status (pending/in_progress/completed/failed), source/destination tx hashes, elapsed time, and estimated remaining time.

ParametersJSON Schema
NameRequiredDescriptionDefault
txHashNoSource chain transaction hash
toChainNoDestination chain ID (needed with txHash for LI.FI)
providerNoBridge provider (e.g. 'lifi', 'persistence')
fromChainNoSource chain ID (needed with txHash for LI.FI)
trackingIdNoTracking ID from bridge_execute

TDQS

A4.6/5.0
Behavior4/5

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

Discloses return values (status, tx hashes, times) and notes support for all providers. No annotations provided, so description carries burden; it implies a read-only operation without stating explicitly, which is acceptable for a status check.

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

Conciseness5/5

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

Three sentences: purpose, usage instructions, return summary. Front-loaded and free of fluff. Every sentence adds value.

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?

Given no output schema, the description explains return values. Covers all necessary usage aspects for a status check tool with multiple optional parameters.

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

Parameters5/5

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

Schema coverage is 100%, and the description adds significant meaning by explaining the two usage modes (trackingId alone vs txHash+provider+chains) and detailing return fields. This goes beyond schema descriptions.

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?

The description clearly states it checks the status of a cross-chain bridge transfer, lists supported providers, and specifies how to identify the transfer (tracking ID or tx hash + provider). This distinguishes it from siblings like bridge_execute or bridge_get_quote.

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

Usage Guidelines4/5

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

Provides explicit instructions on when to use (after bridge_execute) and how to provide identifiers (trackingId or txHash+provider). Does not explicitly state when not to use, but the context is clear.

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

bridge_tokensA

List popular tokens available for bridging on a given chain. Returns verified token symbols, contract addresses, and decimals. Supports EVM chains and Cosmos chains (Persistence, Cosmos Hub). Use token symbols or addresses from this list in bridge_get_quote.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain name or ID (e.g. 'base', '8453')
searchNoFilter by token name or symbol

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that the tool returns 'verified token symbols, contract addresses, and decimals' and supports specific chains. It is transparent about the output format and scope, though it does not mention rate limits or error handling, which is acceptable for a read-only list tool.

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

Conciseness5/5

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

The description consists of two concise sentences with no redundancy. The first sentence states purpose and output, the second adds supported chains and a usage hint. Every sentence is essential and well-structured.

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

Completeness4/5

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

Given the tool's simplicity (2 parameters, no output schema, no nested objects), the description adequately covers purpose, output format, supported chains, and downstream usage. It does not mention pagination or limits, but for a list of popular tokens, this is sufficient.

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

Parameters3/5

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

Schema coverage is 100% with descriptions for both parameters (chain, search). The description adds no new parameter-specific information beyond the schema; it only provides broader context about output usage. Therefore, it meets the baseline expectation for a tool with high schema coverage.

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?

The description clearly states 'List popular tokens available for bridging on a given chain' with a specific verb (List) and resource (tokens for bridging). It distinguishes from sibling tools like bridge_chains (lists chains) and bridge_get_quote (gets quotes).

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

Usage Guidelines4/5

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

The description explicitly instructs 'Use token symbols or addresses from this list in bridge_get_quote', guiding the agent on how to use the output. It also mentions supported chains (EVM, Persistence, Cosmos Hub). However, it doesn't provide when-not-to-use or alternative tools beyond the implicit differentiation from siblings.

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

wallet_balanceA

Check wallet balances across EVM, Cosmos, and Solana chains. Returns native token balances AND key ERC-20 token balances (USDC, USDT, WETH, WBTC, cbBTC, BTCB) by default. Uses multiple RPCs with automatic failover. Returns per-token balance, USD value (via CoinGecko), and total portfolio value. Call this before any bridging or farming operation to verify sufficient funds and gas.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainsNoChains to check (default: all). Options: ethereum, optimism, bsc, polygon, arbitrum, avalanche, base, linea, scroll, zksync, mantle, blast, persistence, solana
tokensNoCustom tokens to check per chain, e.g. { "base": [{ "address": "0x...", "symbol": "FOO", "decimals": 18 }] }
includeUsdNoInclude USD valuations for each balance (default: true). Uses CoinGecko prices, cached for 60s.
includeTokensNoInclude ERC-20 token balances (USDC, USDT, WETH, WBTC, cbBTC, BTCB). Default: true.

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses automatic RPC failover, multiple chains, default tokens, and USD valuation via CoinGecko with caching. No destructive behavior is implied, which is appropriate for a read-only tool.

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

Conciseness5/5

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

The description is three sentences long, each providing essential information: what the tool does, what it returns, and when to use it. No unnecessary words.

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?

Given no output schema, the description sufficiently explains return values (per-token balance, USD value, total portfolio value) and mentions important behavior like RPC failover and caching. For a wallet balance tool, this is complete.

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?

The input schema covers all 4 parameters with descriptions (100% coverage). The description adds value by explaining default behavior (default tokens, CoinGecko with 60s cache) and the purpose of the tool. It reinforces and augments schema information.

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?

The description clearly states the tool checks wallet balances across EVM, Cosmos, and Solana chains, returns native and key ERC-20 token balances, and provides USD values. It distinguishes from siblings by mentioning bridging operations.

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

Usage Guidelines4/5

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

The description explicitly says 'Call this before any bridging or farming operation to verify sufficient funds and gas,' providing clear when-to-use. It doesn't explicitly mention alternatives, but context from sibling tools suggests this is the balance check tool.

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

wallet_importA

Import existing keys. Alternative: edit ~/.bridgekitty/.env directly (MNEMONIC=, PRIVATE_KEY=0x). Mnemonic gives EVM + Persistence + Solana; privateKey alone gives EVM only. Use wallet_status to check current state.

ParametersJSON Schema
NameRequiredDescriptionDefault
mnemonicNo12 or 24 word BIP-39 mnemonic phrase
overwriteNoSet true to overwrite existing keys (back up first!)
privateKeyNo0x-prefixed hex EVM private key

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral disclosure burden. It reveals important traits: overwrite behavior with a backup warning, and the multi-chain vs EVM-only outcome based on parameter choice. This transparently informs the agent of consequences, though it could mention whether the operation is reversible or requires permissions.

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

Conciseness5/5

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

The description consists of four concise sentences, each adding unique value. It front-loads the core purpose and immediately provides an alternative, then explains parameter outcomes, and ends with a follow-up action. No wasted words.

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

Completeness4/5

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

Given no output schema and three optional parameters, the description adequately covers what the tool does, the effects of inputs, and a post-action suggestion. It lacks explicit mention of return value or error conditions, but for a state-modifying tool, the behavioral and usage guidance is sufficient.

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 baseline is 3. The description adds value by explaining what each key type provides ('Mnemonic gives EVM + Persistence + Solana; privateKey alone gives EVM only'), which goes beyond the schema's parameter descriptions. This semantic enrichment justifies a 4.

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?

The description clearly states the tool's purpose: 'Import existing keys.' It also distinguishes itself by detailing the effects of different inputs (mnemonic vs privateKey) and mentions an alternative method (editing .env). This provides unambiguous purpose and differentiation from sibling tools like wallet_setup.

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

Usage Guidelines4/5

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

The description explicitly offers an alternative method ('edit ~/.bridgekitty/.env directly') and advises checking state with wallet_status. While it doesn't list explicit when-not conditions, this guidance effectively helps the agent choose between methods and verify outcomes.

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

wallet_setupA

Create wallets for all supported chains (EVM, Cosmos, Solana). Keys saved to ~/.bridgekitty/.env. Use wallet_status first to check if already configured.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

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

Discloses the side effect: 'Keys saved to ~/.bridgekitty/.env'. No annotations exist, so description carries full burden. Could be more explicit about overwrite behavior or idempotency, but the hint to check wallet_status mitigates.

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

Conciseness5/5

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

Two concise sentences with front-loaded action. Every sentence adds value: first states purpose, second adds behavioral context and usage guidance.

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

Completeness4/5

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

Provides prerequisite (check wallet_status) and side effect (file save). For a setup tool with no parameters and no output schema, it covers key aspects. Lacks idempotency detail but is fairly complete.

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?

Input schema has zero parameters, so description does not need to add param info. The baseline for 0 params is 4, and the description covers the tool's operation without needing parameter details.

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?

The description clearly states the verb 'Create' and the specific resource 'wallets for all supported chains (EVM, Cosmos, Solana)'. It distinguishes the tool from sibling tools like wallet_status and wallet_import by specifying the scope.

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?

Explicitly advises to 'Use wallet_status first to check if already configured', providing clear when-to-use context and directing to a sibling tool for pre-conditions.

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

wallet_statusA

Check if a wallet is configured. Returns wallet address, key status, and config file location. Call this FIRST before wallet_setup or wallet_import.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses the tool is a read-only status check and lists return values. While it doesn't specify behavior when wallet is not configured, the description is sufficiently transparent for a simple status tool.

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

Conciseness5/5

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

Two short sentences, no fluff. Purpose and usage guideline are front-loaded.

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?

Given no parameters, no output schema, and low complexity, the description provides sufficient context: purpose, return info, and order of operations relative to siblings.

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

Parameters3/5

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

Schema coverage is 100% (no parameters), baseline is 3. Description does not add parameter details, but none are needed.

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?

Description clearly states the tool checks wallet configuration and returns specific fields (address, key status, config file location). It also distinguishes from siblings by advising to call this first before wallet_setup or wallet_import.

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?

Explicitly instructs to call this tool first before wallet_setup or wallet_import, providing clear when-to-use and alternatives context.

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

xprt_onboardA

Personalized onboarding for XPRT farming. Detects current wallet state and returns an ordered action plan to go from your current position to actively farming XPRT rewards.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It explains the tool detects state and returns a plan, implying a read-only operation. However, it does not detail potential side effects, prerequisites (e.g., wallet existence), or rate limits.

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

Conciseness5/5

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

Two sentences, both essential and front-loaded with the purpose. No wasted words while conveying the personalized and state-aware nature of the tool.

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

Completeness4/5

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

Given no annotations, no output schema, and zero params, the description adequately covers what the tool does and what it returns. It could be more complete by mentioning that a wallet context is required, but overall it is sufficient.

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?

With zero parameters, schema coverage is 100%. The description adds value by explaining the tool automatically uses the current wallet state, so no parameters are needed. This exceeds the baseline expectation.

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?

The description clearly states it provides personalized onboarding for XPRT farming by detecting wallet state and returning an action plan. It uses specific verbs and resource, distinguishing it from sibling tools like bridge and wallet utilities.

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

Usage Guidelines4/5

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

The description implies usage when the user wants to start farming XPRT rewards, but does not explicitly exclude other scenarios or mention prerequisites like having a wallet connected. Context is clear but lacks exclusions.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 12 tool updatesv0.3.1
    • Addedbridge_chains
    • Addedbridge_execute
    • Addedbridge_get_quote
    • Addedbridge_quote_multi
    • Addedbridge_status
    • Addedbridge_tokens
    • Addedbridgekitty_help
    • Addedwallet_balance
    • Addedwallet_import
    • Addedwallet_setup
    • Addedwallet_status
    • Addedxprt_onboard
  2. 12 tool updates
    • Removedbridge_chains
    • Removedbridge_execute
    • Removedbridge_get_quote
    • Removedbridge_quote_multi
    • Removedbridge_status
    • Removedbridge_tokens
    • Removedbridgekitty_help
    • Removedwallet_balance
    • Removedwallet_import
    • Removedwallet_setup
    • Removedwallet_status
    • Removedxprt_onboard
  3. 12 tool updatesv0.3.9
    • First observedbridge_chains
    • First observedbridge_execute
    • First observedbridge_get_quote
    • First observedbridge_quote_multi
    • First observedbridge_status
    • First observedbridge_tokens
    • First observedbridgekitty_help
    • First observedwallet_balance
    • First observedwallet_import
    • First observedwallet_setup
    • First observedwallet_status
    • First observedxprt_onboard

TDQS

A4.3/5.0

Scored across 12 tools

Disambiguation5/5

Each tool targets a distinct function: quoting, executing, status checking, chain/token discovery, and wallet operations. The two quote tools (single-hop vs multi-hop) are clearly differentiated by descriptions, eliminating ambiguity.

Naming Consistency4/5

All tools use snake_case and follow a domain_verb pattern (bridge_get_quote, wallet_balance). Minor deviations like bridge_quote_multi and xprt_onboard are still readable and predictable, with no mixed conventions.

Tool Count5/5

12 tools is well within the ideal scope for a cross-chain bridging and wallet management server. Each tool contributes to the core workflows of quoting, executing, tracking, and wallet setup.

Completeness4/5

The bridging lifecycle is covered (quote, execute, status, token/chain discovery, multi-hop), and wallet management is complete (setup, import, balance, status). Onboarding and help tools fill gaps, though farming-specific execution tools are absent.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that delivers real-time cross-chain bridge rates and optimal transfer routes to onchain AI agents.
    7 npm
    5
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with LI.FI's cross-chain infrastructure, providing access to blockchain networks, token data, bridges, and transaction services through a standardized protocol.
    -
  • F
    license
    Not graded
    quality
    F
    maintenance
    Enables cross-chain cryptocurrency swap quotes and operations using the deBridge DLN protocol. Provides read-only access to swap estimates, supported chains, token information, and order status tracking across multiple blockchain networks.
    1
    -
  • A
    license
    A
    quality
    C
    maintenance
    Provides cross-chain bridge and swap tools for AI agents using the Relay Protocol to interact with multiple blockchain networks. It enables agents to query supported chains, obtain transaction quotes, and generate unsigned transaction data for token transfers and swaps.
    10
    67 npm
    4
    MIT