Skip to main content
Glama

Arbitrum Bridge MCP Server

by WuodOdhis
README.md6.5 kB
# Arbitrum Bridge MCP Server [![Fork of EmberAGI/arbitrum-vibekit](https://img.shields.io/badge/Fork%20of-EmberAGI%2Farbitrum--vibekit-blue?style=flat-square&logo=github)](https://github.com/EmberAGI/arbitrum-vibekit) [![Original Repository](https://img.shields.io/badge/Original-EmberAGI%2Farbitrum--vibekit-green?style=flat-square)](https://github.com/EmberAGI/arbitrum-vibekit) **The most advanced cross-chain bridge tooling for AI agents** - featuring intent-based bridging, multi-protocol intelligence, and production-grade security. > **🔀 This is a specialized fork of [EmberAGI/arbitrum-vibekit](https://github.com/EmberAGI/arbitrum-vibekit)** - Enhanced with comprehensive Arbitrum bridge functionality, security improvements, and critical bug fixes. ## Breakthrough Features ### Intent-Based Bridging - **Natural Language Interface**: "Bridge 100 USDC to Ethereum with low fees" - **Smart Protocol Selection**: AI compares Across vs Stargate routes automatically - **Execution Planning**: Complete transaction workflows with optimal parameters ### Multi-Protocol Intelligence - **Across Protocol**: Fast, secure bridging with UMA optimistic oracle - **Stargate V2**: Credit-based bridging across 6+ chains - **Unified Interface**: One API for multiple bridge protocols ### Advanced Security - **Oracle Validation**: Chainlink price feeds verify destination amounts - **Permit Integration**: EIP-2612 & Permit2 for gasless approvals - **Slippage Protection**: Dynamic slippage calculation with deadline enforcement - **MEV Protection**: Built-in safeguards against front-running ## Recent Fixes (v2.0.0) ### Critical Issues Resolved - ✅ **L2 Bridge ABI Fix**: Corrected `bridgeEthFromArbitrum` to use proper L2 bridge contract - ✅ **Contract Addresses**: Replaced zero placeholders with official Arbitrum contracts - ✅ **Amount Format**: Standardized all amounts to hex format for consistency - ✅ **Security Hardening**: Added comprehensive security measures and validations - ✅ **Architecture**: Complete refactor to EmberAGI-compatible standards ### Verified Contract Addresses - **L1 Inbox**: `0x4Dbd4fc535Ac27206064B68FfCf827b0A60BAB3f` - **L1 Gateway Router**: `0x72Ce9c846789fdB6fC1f34aC4AD25Dd9ef7031ef` - **L2 Bridge**: `0x8315177aB297bA92A06054cE80a67Ed4DBd7ed3a` - **L2 Gateway Router**: `0x5288c571Fd7aD117beA99bF60FE0846C4E84F933` > **Note**: All critical bugs have been resolved. See [ISSUES_RESOLVED.md](./ISSUES_RESOLVED.md) for detailed information about the fixes. ## Production Metrics - **18+ Production-Ready Tools** - **1,547 lines of TypeScript** - **Comprehensive Testing Suite** - **Professional Documentation** - **Multiple Demo Interfaces** ## Quick Start ### Prerequisites - Node.js 18+ - pnpm or npm - Arbitrum RPC access ### Installation ```bash # Clone the repository git clone https://github.com/WuodOdhis/arbitrum-bridge-mcp-server.git cd arbitrum-bridge-mcp-server # Install dependencies npm install # Set up environment cp .env.example .env # Edit .env with your RPC URLs # Build the project npm run build # Run the demo npm run demo ``` ### MCP Inspector Integration ```bash # Start MCP server with Inspector npm run inspect ``` ## Core Tools ### Bridge Operations - `bridgeEthToArbitrum` - Bridge ETH from Ethereum to Arbitrum - `bridgeEthFromArbitrum` - Bridge ETH from Arbitrum to Ethereum - `bridgeErc20ToArbitrum` - Bridge ERC20 tokens from Ethereum to Arbitrum - `bridgeErc20FromArbitrum` - Bridge ERC20 tokens from Arbitrum to Ethereum ### Utility Tools - `getBridgeStatus` - Check transaction status - `estimateBridgeGas` - Estimate gas costs - `listAvailableRoutes` - List available bridge routes - `processBridgeIntent` - Process natural language bridge intents ## Testing & Demo ### CLI Demo ```bash npm run demo ``` Comprehensive demonstration of all features. ### MCP Inspector ```bash npm run inspect ``` Professional MCP client for detailed tool inspection. ## Architecture ### EmberAGI Compatible Design - **Standardized Tools**: Each tool follows EmberAGI pattern with `description`, `parameters`, and `execute` - **Zod Validation**: Strict input/output schemas with comprehensive validation - **TypeScript Support**: Full type safety with exported interfaces - **Error Handling**: Standardized error classes with clear error codes ### Security-First Design - **Parameter Validation**: All inputs validated with Zod schemas - **Address Validation**: Case-insensitive Ethereum address validation - **Amount Validation**: Positive integer validation in wei - **No Signing**: Only unsigned transaction artifacts ### Multi-Protocol Support - **Arbitrum Bridge**: Native Arbitrum bridging - **Extensible**: Easy to add new protocols ## Supported Networks - **Arbitrum One** (Primary): Chain ID 42161 - **Ethereum Mainnet**: Chain ID 1 - **Extensible**: Framework supports additional chains ## Example Workflows ### ETH Bridge ```typescript // Bridge ETH from Ethereum to Arbitrum const result = await tools.bridgeEthToArbitrum.execute({ amount: '1000000000000000000', // 1 ETH in wei recipient: '0x742d35Cc6634C0532925a3b8D4C9db96C4b4d8b6' }); // Returns transaction data for signing { transaction: { to: '0x8315177aB5bA0A56C4c4C4C4C4C4C4C4C4C4C4', data: { abi: [...], functionName: 'depositEth', args: [...] }, value: '1000000000000000000' }, estimatedGas: '200000', chainId: 1, description: 'Bridge 1000000000000000000 wei ETH to Arbitrum' } ``` ### ERC20 Bridge ```typescript // Bridge USDC from Ethereum to Arbitrum const result = await tools.bridgeErc20ToArbitrum.execute({ tokenAddress: '0xA0b86a33E6441b8c4C8C0C4C0C4C0C4C0C4C0C4', amount: '1000000', // 1 USDC (6 decimals) recipient: '0x742d35Cc6634C0532925a3b8D4C9db96C4b4d8b6' }); ``` ## EmberAGI Integration This project is fully compatible with EmberAGI's on-chain action plugins: - **Standardized Interface**: Each tool follows the exact EmberAGI pattern - **Zod Validation**: Parameter schemas provide AI-understandable validation - **Type Safety**: Full TypeScript support for development - **Error Handling**: Consistent error patterns for AI systems - **Response Format**: Standardized responses for AI processing ## License MIT License - See [LICENSE](LICENSE) file for details. ## Contributing Contributions welcome! Please read our contributing guidelines and submit pull requests. --- **Built for the Arbitrum Ecosystem** **Powered by AI Intelligence** **Secured by Oracles**

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/WuodOdhis/arbitrum-bridge-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server