星门大桥MCP
通过Stargate协议实现跨链令牌传输的MCP服务器。
特性
- 链发现:列出所有支持的区块链及其关键细节。
- 令牌发现:跨链查找可桥接的令牌。
- 报价获取:获取包含费用、估算和交易步骤的实时过桥报价。
- 自动桥接:使用您的私钥执行自动签名和广播传输。
- MCP集成:完全符合MCP规范,便于在Claude、Cursor或其他MCP客户端中使用。
| 工具 | 说明 | 关键参数 |
|---|---|---|
list_chains | 在排序的Markdown表中列出支持的链。 | 无 |
list_bridgeable_tokens | 列出源令牌的可桥接目标。 | src_chain_key, src_token |
get_quotes | 获取桥梁路线的详细报价。 | src_chain_key, dst_chain_key, src_token, dst_token, src_amount, dst_amount_min (可选: src_address, dst_address) |
bridge_transfer | 执行桥接传输(使用第一个引号)。 | src_chain_key, dst_chain_key, src_token, dst_token, src_amount, dst_amount_min (可选: dst_address) |
已知限制
目前仅支持EVM兼容链(例如以太坊、Polygon、Arbitrum)之间的跨链桥接。像Solana这样的非EVM链计划在未来得到支持。
快速开始
先决条件
- Python 3.10+
- 紫外线 用于依赖关系管理(推荐;回退到pip)
- A.
.env使用您的以太坊兼容私钥(例如。,PRIVATE_KEY=0x...). 永远不要提交此文件!
安装
- 克隆仓库:
git clone https://github.com/kukapay/stargate-bridge-mcp.git
cd stargate-bridge-mcp- 使用uv安装依赖项:
uv sync # Or uv add requests web3 python-dotenv "mcp[cli]"- 安装到Claude桌面:
将服务器安装为Claude Desktop应用程序:
uv run mcp install main.py --name "Stargate Bridge"配置文件作为参考:
{
"mcpServers": {
"Stargate Bridge": {
"command": "uv",
"args": [ "--directory", "/path/to/stargate-bridge-mcp", "run", "main.py" ],
"env": { "PRIVATE_KEY": "your_private_key"}
}
}
}替换 /path/to/stargate-bridge-mcp 使用您的实际安装路径,并替换 your_private_key 使用您的钱包私钥。
使用示例
这些示例模拟了像Claude Desktop这样的MCP客户端中的交互。每个都包括一个自然语言提示、工具调用和示例输出。
1.列出支持的链
提示:“给我看看星际之门为桥接而支撑的所有链条。”
工具调用: list_chains()
示例输出 (Markdown表,按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.列出可桥接令牌
提示:“我可以用什么代币将USDC从以太坊连接到其他链?”
工具调用: list_bridgeable_tokens("ethereum", "0xA0b86a33E641b9E649bEe6b2D5D7b5b4D8f3a0a") (以太坊上的美元)
示例输出 (Markdown表,按链键排序):
| Chain Key | Symbol | Address |
|-----------|--------|---------|
| arbitrum | USDC | 0xA0b86a33E641b9E649bEe6b2D5D7b5b4D8f3a0a |
| avalanche | USDC | 0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E |
| polygon | USDC | 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 |
| ... (additional destinations)3.获取桥梁报价
提示:“获得从以太坊到Polygon桥接10 USDC的报价,滑点为1%。”
工具调用: get_quotes("ethereum", "polygon", "0xA0b86a33E641b9E649bEe6b2D5D7b5b4D8f3a0a", "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174", 10.0, 9.9)
示例输出 (简明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.执行桥接转移
提示:“执行从以太坊到Polygon的10美元桥梁。”
工具调用: bridge_transfer("ethereum", "polygon", "0xA0b86a33E641b9E649bEe6b2D5D7b5b4D8f3a0a", "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174", 10.0, 9.9)
示例输出 (关于成功;Markdown):
## Bridge Transfer Successful
Transaction hashes:
- Step 1: 0x1234abcd...efgh5678备注:如果失败(例如,气体不足),则返回类似以下的错误 # Error\nStep 1 failed (reverted).
许可证
MIT许可证-请参阅 许可证 了解详情。
