Algorand远程MCP Lite(钱包版)
Algorand Remote MCP Lite是Algorand的钱包优先的模型上下文协议服务器。它是完整远程MCP的精简版本,专注于代理钱包工作流程,拥有46个工具,涵盖钱包管理、交易、区块链查询、DEX聚合掉期等。默认情况下,它在Algorand主网上运行,并使用HashiCorp Vault在服务器端签署交易。
建筑
- Cloudflare Workers(耐用对象)上的MCP服务器,用于注册钱包、交易和API工具。
- OAuth 2.0,支持PKC和OIDC兼容的社交登录(谷歌、GitHub、推特/X、领英)用于用户身份。
- HashiCorp保险库通过
HCV_WORKER服务;私钥永远不会离开保险库。 - 用于链上状态和事务提交的Algod+索引器API。
- 用于OAuth会话、保险库实体映射、验证资产、ARC-26 QR/收据缓存和AP2存储的KV命名空间。
设计
- 钱包版:最小的、精心策划的工具集,其行为类似于代理钱包。
- 服务器端签名:LLM从不接收助记符或私钥。
- 主网优先:示例和默认值针对主网资产和应用程序。
- 模块化工具:钱包、交易、索引器、NFD、Pera验证资产、Haystack Router DEX交换等都是单独的工具组。
OAuth+OIDC和代理钱包
- 用户通过OAuth/OIDC提供商进行身份验证;审批和PKCE流程在中处理
src/oauth-handler.ts和src/oauth-provider.ts. - 登录后,
ensureUserAccount将社交身份(提供者+电子邮件)绑定到Vault实体和传输密钥。 - 钱包地址来源于Vault公钥,用作代理钱包。
- 签名工具(
wallet_sign_transaction,wallet_sign_atomic_group)使用Vault传输,以便在Vault内生成签名。
特性
- 代理钱包操作:余额、资产、签名和提交,不泄露秘密。
- 使用Algorand ARC-26二维码按需充值(
generate_algorand_qrcode). - AP2为意图、购物车和支付流生成授权(
generate_ap2_mandate). - 使用二维码生成收据,用于支付和资产转移(
generate_algorand_receipt). - 原子交易组和资产工作流(选择加入、转移、USDC选择加入)。
- 通过Pera钱包和NFD查找验证资产发现。
- 通过Haystack路由器进行最优惠价格的DEX交换(聚合Tinyman、Pact、Folks、LST协议)。
可用工具(46)
钱包(4)
wallet_get_info:获取已配置钱包的账户信息(地址、公钥、余额、资产)wallet_get_assets:获取配置钱包的所有资产持有量wallet_get_role:获取钱包用户角色UUID(敏感--警告用户保护它)wallet_reset_account:使用新密钥重置/重新创建钱包帐户(销毁-先转账!)
账户(1)
sdk_check_account_balance:检查Algorand帐户的ALGO余额
公用事业(5)
sdk_validate_address:检查Algorand地址是否有效sdk_encode_address:将公钥编码为Algorand地址sdk_decode_address:将Algorand地址解码为公钥sdk_app_address_by_id:获取给定应用程序ID的托管地址algorand_mcp_skill:访问使用Algorand Remote MCP Lite的全面技能/指南,包括工作流程、示例和最佳实践
交易(4)
sdk_txn_payment_transaction:创建ALGO支付交易wallet_sign_transaction:使用代理钱包(通过Vault)签署Algorand交易sdk_submit_transaction:向Algorand网络提交已签名的交易sdk_send_raw_transaction:将原始签名交易字节提交到网络
资产交易(4)
sdk_txn_asset_create:创建新的Algorand标准资产(ASA)sdk_txn_asset_optin:选择加入Algorand标准资产(ASA)sdk_txn_asset_transfer:转移Algorand标准资产(ASA)wallet_usdc_optin:一步USDC选择加入代理钱包(构建、签名、提交)
原子群(5)
sdk_assign_group_id:为原子执行的事务分配组IDsdk_create_atomic_group:从多个事务创建原子事务组sdk_sign_atomic_group:签署原子事务组(SDK级别)wallet_sign_atomic_group:签署原子交易组(通过钱包/Vault)sdk_submit_atomic_group:向网络提交已签名的原子事务组
阿尔及利亚API(4)
algod_get_account_info:从algod获取当前账户余额、资产和身份验证地址algod_get_account_asset_info:从algod获取账户特定资产信息algod_get_asset_info:从algod获取资产详细信息(名称、小数、供应、创建者)algod_get_pending_txn_info:按交易ID获取待处理交易详细信息
Pera资产验证(2)
pera_verified_asset_query:从Pera获取有关Algorand资产的详细信息(包括验证层)pera_verified_assets_search:按资产名称、单位名称或创建者地址搜索Pera验证的资产
索引器API(7)
indexer_search:跨帐户、交易、资产或应用程序的常规搜索indexer_search_for_accounts:使用各种条件搜索帐户indexer_search_for_assets:使用各种条件搜索资产indexer_lookup_account_assets:获取账户持有的资产indexer_lookup_account_transactions:获取帐户的交易历史记录indexer_lookup_asset_balances:获取持有特定资产的账户indexer_lookup_transaction_by_id:按ID获取交易详细信息
NFD API(2)
api_nfd_get_nfd:按名称获取NFD(.algo)域信息api_nfd_get_nfds_for_address:获取Algorand地址拥有的所有NFD名称
Haystack路由器——DEX聚合器(3)
haystack_get_swap_quote:获得跨多个DEX(Tinyman、Pact、Folks、LST协议)的最佳价格掉期报价haystack_execute_swap:一站式掉期:报价+通过钱包签名+提交+确认haystack_needs_optin:在交换之前,检查地址是否需要选择加入资产
ARC-26(1)
generate_algorand_qrcode:为支付或资产转移请求生成ARC-26 URI和QR码
收据(1)
generate_algorand_receipt:生成带有二维码的交易收据,用于支付或资产转移
AP2(1)
generate_ap2_mandate:创建AP2意图、购物车或付款授权
Tinyman(2)
tinyman_fixed_input_swap:执行具有固定输入金额的掉期tinyman_fixed_output_swap:执行具有固定输出量的掉期
资源(1)
- Algorand MCP技能(
algorand://remote-mcp-skill):使用Algorand远程MCP工具的全面技能定义。
用法
本地开发
- 安装依赖项:
npm install - 配置
wrangler.jsoncvars和secrets(Algod/Indexer URL、OAuth客户端ID/secrets、Vault工作URL/令牌)。 - 启动worker:
npm run dev
OAuth流(高级)
- 客户请求
/authorize并选择社交提供者。 - 用户进行身份验证,然后
/callback将代码交换为令牌。 - 服务器将身份绑定到Vault密钥对,并公开钱包工具。
备注
- 此服务器默认配置为Algorand主网;更新
ALGORAND_NETWORK,ALGORAND_ALGOD,以及ALGORAND_INDEXER如果你需要指出其他地方。 - ARC-26二维码用于按需充值和用户友好的资金流。
