persistenceone-bridgekitty
Cross-chain bridge aggregator MCP server for AI agents. Compares routes across LI.FI, deBridge, Relay, Across and Squid to find the best rate. Use when an agent needs to bridge or swap tokens between EVM chains, Solana, or Cosmos. The aggregator of aggregators.
README
BridgeKitty š±
Cross-chain bridge aggregator MCP server for AI agents. One server, 5 bridge backends, best routes across EVM, Solana, and Cosmos chains.
BridgeKitty gives AI agents (Claude, Cursor, GPT, or any MCP-compatible AI) the ability to find and execute cross-chain bridge transfers ā with automatic route optimization, fee comparison, balance checks, and safety warnings.
What's New in v0.3.0
sign_and_sendparameter ā agents can now sign and broadcast transactions directly using locally-stored wallet keys- Full EVM signing support ā works with all EVM backends (Across, Relay, LI.FI, Squid, deBridge) + Persistence Interop (EIP-712)
- Simulation fix ā ERC20 bridges now work on fresh wallets (previously blocked by premature simulation)
- Solana signing ā coming in next release
<details> <summary>What's New in v0.2.0</summary>
- Solana support ā bidirectional bridging EVM ā Solana (native SOL delivery, not wrapped)
- Cosmos support ā EVM ā Persistence/Cosmos Hub via Squid (Axelar)
- Protocol fee transparency ā deBridge fixFee, operating expenses, and total cost visible in every quote
- Balance warnings ā warns when wallet can't cover bridge amount + protocol fees + gas
- XPRT staking ā stake/unstake/claim rewards directly from the MCP server
- Farming multiplier ā tracks your staking tier (1x ā 3x ā 5x) from the rewards API
- Quote auto-refresh ā expired quotes automatically re-fetched on execute (60s expiry)
- ERC-20 approvals ā always generated for token bridges (Relay + deBridge)
- Bridge status tracking ā on-chain fallback when provider API hasn't indexed yet
</details>
Supported Bridges
| Backend | Type | Chains | Strength |
|---|---|---|---|
| deBridge (DLN) | Direct | EVM + Solana | Fast intent-based fills, Solana support |
| Relay | Direct | EVM + Solana | No protocol fee, gas-optimized |
| LI.FI | Aggregator | EVM | Widest coverage (30+ bridges, any-to-any swap) |
| Across | Direct | EVM | Fastest fills (~6s), same-token bridging |
| Squid (Axelar) | Aggregator | EVM + Cosmos | Only option for EVM ā Cosmos routes |
Bridge Directions
| Direction | Backends | Status |
|---|---|---|
| EVM ā EVM | All 5 | ā Production |
| EVM ā Solana | deBridge, Relay | ā Production |
| Solana ā EVM | deBridge | ā Production |
| EVM ā Cosmos | Squid | ā Production |
Quick Start
npx (zero install)
npx @persistenceone/bridgekitty
Claude Code
Add to your MCP config (~/.claude/claude_code_config.json):
{
"mcpServers": {
"bridgekitty": {
"command": "npx",
"args": ["@persistenceone/bridgekitty"]
}
}
}
Cursor IDE
Add to Cursor's MCP settings (Settings > MCP Servers):
{
"bridgekitty": {
"command": "npx",
"args": ["@persistenceone/bridgekitty"]
}
}
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"bridgekitty": {
"command": "npx",
"args": ["@persistenceone/bridgekitty"]
}
}
}
Wallet Setup
BridgeKitty can manage wallets for autonomous bridging. Run wallet_setup to create wallets for EVM, Cosmos, and Solana ā or provide your own addresses in quotes.
Wallet config is stored in ~/.bridgekitty/.env (or the directory you run from). Keys never leave the local machine.
| Variable | Description |
|---|---|
PRIVATE_KEY |
EVM private key (hex) |
MNEMONIC |
BIP-39 mnemonic (derives EVM, Cosmos, Solana keys) |
SOLANA_PRIVATE_KEY |
Solana private key (base58) |
Transaction Signing
By default, bridge_execute returns unsigned transactions for the agent or user to sign externally.
Set sign_and_send: true to enable autonomous signing ā BridgeKitty will use the wallet keys stored in ~/.bridgekitty/.env to handle the full flow:
- Approval ā sends ERC-20 approval transaction (if needed)
- Re-build ā re-fetches the bridge transaction with updated nonce (if approval was sent)
- Simulate ā runs
eth_estimateGaspre-flight check - Sign ā signs the transaction with the local private key
- Broadcast ā submits to the chain and returns the tx hash + explorer link
Persistence Interop uses EIP-712 typed data signing (Permit2 approval + on-chain initiate) instead of standard approve-and-send.
Optional API Keys
| Variable | Description |
|---|---|
LIFI_API_KEY |
LI.FI API key (higher rate limits) |
DEBRIDGE_API_KEY |
deBridge API key |
SQUID_INTEGRATOR_ID |
Squid integrator ID |
MCP Tools
Core Bridge Tools
| Tool | Description |
|---|---|
bridge_get_quote |
Get competitive quotes from all backends. Shows fees, time estimates, balance warnings. |
bridge_execute |
Build transaction(s) from a quote. Handles approvals, auto-refreshes expired quotes. Set sign_and_send: true to auto-sign and broadcast. |
bridge_status |
Track bridge progress. On-chain fallback when API hasn't indexed yet. |
bridge_chains |
List supported chains with provider coverage. |
bridge_tokens |
Search tokens on a chain. |
Wallet Tools
| Tool | Description |
|---|---|
wallet_setup |
Create wallets for EVM, Cosmos, Solana from a single mnemonic. |
wallet_balance |
Check balances across all chains with USD prices (CoinGecko). |
XPRT Staking & Farming
| Tool | Description |
|---|---|
xprt_stake |
Stake XPRT to a validator (warns about 21-day unbonding). |
xprt_unstake |
Unstake XPRT (21-day unbonding period). |
xprt_claim_rewards |
Claim staking rewards. |
xprt_rewards_check |
Check farming rewards, multiplier tier, epoch status. |
xprt_farm_start |
Start automated BTC round-trip farming (cbBTC ā BTCB). |
xprt_farm_boost |
Buy + stake XPRT for multiplier boost (1x ā 3x ā 5x). |
bridgekitty_help |
Full docs on farming tiers, multipliers, and strategy. |
Example: Bridge USDC from Base to Arbitrum
Default (unsigned transactions)
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
With sign_and_send (autonomous signing)
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
Architecture
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)
- Routing Engine: Parallel quotes from all backends, ranked by output amount
- Circuit Breaker: Auto-skips failing backends, gradual recovery
- Token Registry: 45+ verified tokens with canonical addresses per chain
- Gas Estimator: Chain-aware gas cost estimation with multi-RPC failover
- Balance Checker: Validates token + native balance for fees before execution
- Fee Transparency: Protocol fees (deBridge fixFee, operating expenses) surfaced in every quote
Security
- Exact-amount approvals only (never unlimited)
- Transaction simulation before execution
- Verified token registry prevents address spoofing
- No private keys in MCP protocol ā agents sign transactions externally
sign_and_senduses locally-stored keys only (never transmitted over the network)- Circuit breaker prevents cascading failures
- Error messages sanitized (no key/path leakage)
.envfile permission checks + overwrite protection
Known Limitations
- Solana ā EVM returns a serialized transaction for external signing (no auto-execute)
- Relay status tracking may show "unknown" for completed cross-chain bridges
- Solana SPL tokens not yet shown in
wallet_balance(only native SOL) - Cosmos ā EVM bridging not yet supported (only EVM ā Cosmos)
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.