kukapay/stargate-bridge-mcp
If you are the rightful owner of stargate-bridge-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
An MCP server that enables cross-chain token transfers via the Stargate protocol.
Stargate Bridge MCP
An MCP server that enables cross-chain token transfers via the Stargate protocol.
Features
- Chain Discovery: List all supported blockchains with key details.
- Token Discovery: Find bridgeable tokens across chains.
- Quote Fetching: Get real-time bridge quotes with fees, estimates, and transaction steps.
- Automated Bridging: Execute transfers with automatic signing and broadcasting using your private key.
- MCP Integration: Fully compliant with MCP spec for easy use in Claude, Cursor, or other MCP clients.
| Tool | Description | Key Parameters |
|---|---|---|
list_chains | Lists supported chains in a sorted Markdown table. | None |
list_bridgeable_tokens | Lists bridgeable destinations for a source token. | src_chain_key, src_token |
get_quotes | Fetches detailed quotes for a bridge route. | src_chain_key, dst_chain_key, src_token, dst_token, src_amount, dst_amount_min (optional: src_address, dst_address) |
bridge_transfer | Executes a bridge transfer (uses first quote). | src_chain_key, dst_chain_key, src_token, dst_token, src_amount, dst_amount_min (optional: dst_address) |
Known Limitations
Currently supports cross-chain bridging only between EVM-compatible chains (e.g., Ethereum, Polygon, Arbitrum). Non-EVM chains like Solana are planned for future support.
Quick Start
Prerequisites
- Python 3.10+
- uv for dependency management (recommended; fallback to pip)
- A
.envfile with your Ethereum-compatible private key (e.g.,PRIVATE_KEY=0x...). Never commit this file!
Installation
-
Clone the repo:
git clone https://github.com/kukapay/stargate-bridge-mcp.git cd stargate-bridge-mcp -
Install dependencies with uv:
uv sync # Or uv add requests web3 python-dotenv "mcp[cli]" -
Install to Claude Desktop:
Install the server as a Claude Desktop application:
uv run mcp install main.py --name "Stargate Bridge"Configuration file as a reference:
{ "mcpServers": { "Stargate Bridge": { "command": "uv", "args": [ "--directory", "/path/to/stargate-bridge-mcp", "run", "main.py" ], "env": { "PRIVATE_KEY": "your_private_key"} } } }Replace
/path/to/stargate-bridge-mcpwith your actual installation path, and replaceyour_private_keywith your wallet private key.
Usage Examples
These examples simulate interactions in an MCP client like Claude Desktop. Each includes a natural language prompt, the tool call, and sample output.
1. List Supported Chains
Prompt: "Show me all the chains supported by Stargate for bridging."
Tool Call: list_chains()
Sample Output (Markdown table, sorted by chainKey):
| chainKey | Name | Chain Type | Chain ID | Native Symbol |
|----------|------|------------|----------|---------------|
| arbitrum | Arbitrum One | evm | 42161 | ETH |
| avalanche | Avalanche C-Chain | evm | 43114 | AVAX |
| base | Base | evm | 8453 | ETH |
| bnbchain | BNB Smart Chain | evm | 56 | BNB |
| ethereum | Ethereum | evm | 1 | ETH |
| ... (additional chains)
2. List Bridgeable Tokens
Prompt: "What tokens can I bridge USDC from Ethereum to other chains?"
Tool Call: list_bridgeable_tokens("ethereum", "0xA0b86a33E641b9E649bEe6b2D5D7b5b4D8f3a0a") (USDC on Ethereum)
Sample Output (Markdown table, sorted by Chain Key):
| Chain Key | Symbol | Address |
|-----------|--------|---------|
| arbitrum | USDC | 0xA0b86a33E641b9E649bEe6b2D5D7b5b4D8f3a0a |
| avalanche | USDC | 0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E |
| polygon | USDC | 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 |
| ... (additional destinations)
3. Get Bridge Quotes
Prompt: "Get quotes for bridging 10 USDC from Ethereum to Polygon with 1% slippage."
Tool Call: get_quotes("ethereum", "polygon", "0xA0b86a33E641b9E649bEe6b2D5D7b5b4D8f3a0a", "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174", 10.0, 9.9)
Sample Output (Concise Markdown):
# Stargate Bridge Quotes
**Src**: ETHEREUM USDC 10.0 → **Dst**: POLYGON USDC
## Quote 1 (stargate/v2/taxi)
- **Expected Receive**: 9.98 USDC
- **Min Receive**: 9.90 USDC
- **Est. Time**: 180s
- **Fees**:
- 0.000050 ETH on ethereum (message)
### Steps
- **Step 1 (bridge)**: To 0x77b204... | Value: 0.0100 ETH | Data: 0xc7c7f5b3...
**Note**: Use `bridge_transfer` to execute (uses first quote).
4. Execute Bridge Transfer
Prompt: "Execute the bridge for 10 USDC from Ethereum to Polygon."
Tool Call: bridge_transfer("ethereum", "polygon", "0xA0b86a33E641b9E649bEe6b2D5D7b5b4D8f3a0a", "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174", 10.0, 9.9)
Sample Output (On success; Markdown):
## Bridge Transfer Successful
Transaction hashes:
- Step 1: 0x1234abcd...efgh5678
Note: If it fails (e.g., insufficient gas), returns an error like # Error\nStep 1 failed (reverted).
License
MIT License - see for details.