hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Provides comprehensive Algorand blockchain interaction capabilities, including account management, asset operations, application interactions, transaction creation/submission, and blockchain state queries.
Provides a server package for Algorand blockchain interactions specifically built for Node.js environments.
Uses TypeScript for type-safe interaction with the Algorand blockchain across both client and server implementations.
Algorand MCP 实现
概述
模型上下文协议(MCP)是一种开放协议,它规范了应用程序如何向LLM提供上下文。MCP提供了规范标准,为LLM提供工具、资源和指令,使其更加实用和高效。
MCP Github包含更多信息和不同的工具和规范以及 MCP 的文档。
此代码库是 Algorand 区块链交互的模型上下文协议 (MCP) 实现。该实现包括:
- (生产)用于区块链交互的服务器包(仅限 Node.js)
- (WIP)用于钱包管理和交易签名的客户端包(支持浏览器和 Node.js)
📦此存储库中的软件包:
- Algorand MCP 服务器- Algorand MCP 服务器的完整实现。
- Algorand MCP 客户端- Algorand MCP 客户端用于客户端钱包管理和交易签名,以及其他代理主机的集成。
📦NPM:
- Algorand MCP 服务器 NPM 包- 通过 NPM 包安装实现 Algorand MCP 服务器。
📦锻造:
- Smithery 上的 Algorand MCP 服务器- 通过 smithery 实现 Algorand MCP 服务器。
特征
- 完成 Algorand 文档集成
- 完整的 Algorand 知识分类
- 全面的开发人员文档
- ARC、SDK 和工具文档
- 通过知识工具直接访问文档
- 完整的 Algorand 区块链交互功能
- 广泛的钱包管理系统
- 全面的交易处理
- 丰富的区块链状态查询
- 内置安全功能
- 支持 Claude Desktop 和 Cursor 集成
要求
- Node.js v23.6.1 或更高版本
- npm v10.2.4 或更高版本
安装
通过 NPM(适用于希望运行自己的实例的开发人员)
通过 Smithery(适用于所有用户)
通过 Smithery(适用于 Claude Desktop)
只需在终端中运行此命令:
通过 Smithery(用于光标)
只需在终端中运行此命令:
**重要提示:**使用 Smithery UI 复制命令时,请确保在单击连接之前设置 ITEMS_PER_PAGE,以便将所有 ENV 变量带入命令,否则您的命令将不包含 Algorand MCP 运行所需的环境变量!
项目架构
该项目采用模块化架构,包含两个主要包:
- 服务器包(
@algorand-mcp/server
)- 提供 MCP 工具和资源
- 管理区块链交互
- 处理交易创建和提交
- 提供全面的区块链查询
- 客户端包(
@algorand-mcp/client
)- 处理钱包连接和交易签名
- 支持本地和外部钱包
- 通用兼容性(浏览器/Node.js)
- 安全凭证管理
- 仍在进行中(服务器工作与客户端状态无关)
项目结构
核心功能
服务器功能
- 帐户管理
- 资产运营
- 应用程序交互
- 交易创建和提交
- 区块链状态查询
- 全面的实用功能
- 标准化响应格式
- 内置分页支持
- NFDomains 集成
- Vestige DeFi 分析
- Tinyman AMM 集成
- Ultrade DEX 集成
- 知识分类资源:
- 完整文档分类法 (algorand://knowledge/taxonomy)
- 特定类别的文档:
- ARC(algorand://knowledge/taxonomy/arcs)
- SDK(algorand://knowledge/taxonomy/sdks)
- AlgoKit(algorand://knowledge/taxonomy/algokit)
- AlgoKit 实用程序 (algorand://knowledge/taxonomy/algokit-utils)
- TEALScript (algorand://knowledge/taxonomy/tealscript)
- Puya (algorand://knowledge/taxonomy/puya)
- Liquid Auth(algorand://knowledge/taxonomy/liquid-auth)
- Python(algorand://knowledge/taxonomy/python)
- 开发者文档 (algorand://knowledge/taxonomy/developers)
- CLI 工具 (algorand://knowledge/taxonomy/clis)
- 节点管理(algorand://knowledge/taxonomy/nodes)
- 技术细节(algorand://knowledge/taxonomy/details)
客户端功能(正在进行中)
- 具有安全存储的本地钱包
- 外部钱包支持(Pera、Defly、Daffi)
- 交易签名
- 会话管理
- 通用 ES 模块支持
响应格式
所有回复均遵循标准化格式:
错误以标准格式返回:
可用的工具和资源
Algorand MCP 实现为区块链交互提供了 125 种工具和资源:
- 40个基础工具(账户、资产、应用程序、交易管理)
- 30 个 API 工具(算法和索引器)
- 6 个用于名称服务的 NFDomains (NFD) 工具
- 28 个用于 DeFi 分析的 Vestige 工具
- 9 个用于 AMM 交互的 Tinyman 工具
- 12 个 Ultrade 工具,用于 DEX 功能
API 工具
Algod API 工具
- api_algod_get_account_info:获取当前账户余额、资产、授权地址
- api_algod_get_account_application_info:获取账户特定应用信息
- api_algod_get_account_asset_info:获取账户特定资产信息
- api_algod_get_application_by_id:获取应用信息
- api_algod_get_application_box:根据名称获取应用框
- api_algod_get_application_boxes:获取所有应用框
- api_algod_get_asset_by_id:获取当前资产信息
- api_algod_get_pending_transaction:获取待处理交易信息
- api_algod_get_pending_transactions_by_address:获取某个地址的待处理交易
- api_algod_get_pending_transactions:获取所有待处理的交易
- api_algod_get_transaction_params:获取建议的交易参数
- api_algod_get_node_status:获取当前节点状态
- api_algod_get_node_status_after_block:获取特定轮次后的节点状态
索引器 API 工具
- api_indexer_lookup_account_by_id:获取账户信息
- api_indexer_lookup_account_assets:获取账户资产
- api_indexer_lookup_account_app_local_states:获取账户应用程序本地状态
- api_indexer_lookup_account_created_applications:获取账户创建的应用程序
- api_indexer_search_for_accounts:根据不同条件搜索账户
- api_indexer_lookup_applications:获取应用程序信息
- api_indexer_lookup_application_logs:获取应用程序日志消息
- api_indexer_search_for_applications:搜索应用程序
- api_indexer_lookup_asset_by_id:获取资产信息和配置
- api_indexer_lookup_asset_balances:获取持有此资产的账户
- api_indexer_lookup_asset_transactions:获取涉及此资产的交易
- api_indexer_search_for_assets:搜索资产
- api_indexer_lookup_transaction_by_id:获取交易信息
- api_indexer_lookup_account_transactions:获取账户交易历史记录
- api_indexer_search_for_transactions:搜索交易
NFDomains(NFD)API工具
- api_nfd_get_nfd:通过名称或应用程序ID获取NFD
- api_nfd_get_nfds_for_addresses:获取特定地址的 NFD
- api_nfd_get_nfd_activity:获取 NFD 的活动/更改
- api_nfd_get_nfd_analytics:获取 NFD 的分析数据
- api_nfd_browse_nfds:使用各种过滤器浏览 NFD
- api_nfd_search_nfds:使用各种过滤器搜索 NFD
Vestige API 工具
- 查看工具:
- api_vestige_view_networks:获取所有网络
- api_vestige_view_network_by_id:通过 id 获取网络
- api_vestige_view_protocols:获取所有协议
- api_vestige_view_protocol_by_id:通过 id 获取协议
- api_vestige_view_protocol_volumes:获取特定日期的协议卷
- api_vestige_view_assets:获取有关资产的数据
- api_vestige_view_assets_list:获取资产列表
- api_vestige_view_assets_search:通过查询搜索资产
- api_vestige_view_asset_price:获取资产价格
- api_vestige_view_asset_candles:获取资产蜡烛图
- api_vestige_view_asset_history:获取资产交易量、掉期、总锁定量、交易量加权平均价格 (VWAP) 和置信度历史记录
- api_vestige_view_asset_composition:根据协议和交易对获取资产锁定
- api_vestige_view_pools:获取池
- api_vestige_view_vaults:获取所有保险库
- api_vestige_view_balances:通过网络 ID、协议 ID 和资产 ID 获取余额
- api_vestige_view_notes:通过网络 ID 和可选资产 ID 获取注释
- api_vestige_view_first_asset_notes:获取资产的第一条注释
- api_vestige_view_asset_notes_count:获取资产的注释数量
- api_vestige_view_swaps:获取掉期
- 交换工具:
- api_vestige_get_best_v4_swap_data:获取最佳 V4 交换数据
- api_vestige_get_v4_swap_discount:获取 V4 交换折扣
- api_vestige_get_v4_swap_data_transactions:获取 V4 交换数据交易
- api_vestige_get_aggregator_stats:获取聚合器统计数据
- 货币工具:
- api_vestige_view_currency_prices:获取所有最新货币价格
- api_vestige_view_currency_price_history:按时间戳范围获取货币价格
- api_vestige_view_currency_price:按时间戳获取货币价格
- api_vestige_view_currency_average_price:获取货币的平均价格
- api_vestige_view_currency_prices_simple_30d:获取过去 30 天的货币价格
Tinyman API 工具
- api_tinyman_get_pool:按资产对获取 Tinyman 池信息
- api_tinyman_get_pool_analytics:获取 Tinyman 池的分析数据
- api_tinyman_get_pool_creation_quote:获取创建新池的报价
- api_tinyman_get_liquidity_quote:获取增加流动性的报价
- api_tinyman_get_remove_liquidity_quote:获取移除流动性的报价
- api_tinyman_get_swap_quote:获取资产交换报价
- api_tinyman_get_asset_optin_quote:获取选择加入池代币的报价
- api_tinyman_get_validator_optin_quote:获取选择加入验证器的报价
- api_tinyman_get_validator_optout_quote:获取退出验证器的报价
Ultrade API 工具
- 钱包工具:
- api_ultrade_wallet_signin_message:根据登录数据生成消息
- api_ultrade_wallet_signin:登录交易账户
- api_ultrade_wallet_add_key:添加交易密钥
- api_ultrade_wallet_revoke_key:撤销交易密钥
- api_ultrade_wallet_keys:获取交易密钥
- api_ultrade_wallet_key_message:从交易密钥数据生成消息
- api_ultrade_wallet_trades:获取已过滤的钱包交易
- api_ultrade_wallet_transactions:获取过滤的钱包交易
- api_ultrade_wallet_withdraw:提取代币
- api_ultrade_wallet_withdraw_message:从提现数据生成消息
- 市场工具:
- api_ultrade_market_symbols:获取市场符号
- api_ultrade_market_details:获取市场详情
- api_ultrade_market_price:获取货币对的最新市场价格
- api_ultrade_market_depth:获取订单簿深度
- api_ultrade_market_last_trades:获取最后交易
- api_ultrade_market_history:获取市场历史记录
- api_ultrade_market_assets:获取交易资产
- api_ultrade_market_fee_rates:获取费率
- api_ultrade_market_chains:获取区块链
- api_ultrade_market_withdrawal_fee:获取提现手续费
- api_ultrade_market_operation_details:获取操作详情
- api_ultrade_market_settings:获取市场设置
- api_ultrade_market_orders:获取订单
- api_ultrade_market_open_orders:获取未结订单
- api_ultrade_market_order_by_id:通过ID获取订单
- api_ultrade_market_order_message:从订单数据生成消息
- api_ultrade_market_create_order:创建新订单
- api_ultrade_market_create_orders:创建新订单
- api_ultrade_market_cancel_order:取消未结订单
- api_ultrade_market_cancel_orders:取消多个未结订单
- 系统工具:
- api_ultrade_system_time:获取当前系统时间
- api_ultrade_system_maintenance:获取系统维护状态
- api_ultrade_system_version:获取系统版本
账户管理工具
- create_account:创建一个新的 Algorand 帐户
- rekey_account:将帐户重新密钥到新地址
- 验证地址:检查 Algorand 地址是否有效
- encode_address:将公钥编码为 Algorand 地址
- 解码地址:将 Algorand 地址解码为公钥
应用工具
- make_app_create_txn:创建应用程序创建交易
- make_app_update_txn:创建应用程序更新交易
- make_app_delete_txn:创建应用程序删除事务
- make_app_optin_txn:创建应用程序选择加入交易
- make_app_closeout_txn:创建应用程序关闭交易
- make_app_clear_txn:创建应用程序清除状态交易
- make_app_call_txn:创建应用程序调用交易
- get_application_address:获取给定应用程序 ID 的地址
- compile_teal:编译 TEAL 源代码
- disassemble_teal:将 TEAL 字节码反汇编回源代码
资产工具
- make_asset_create_txn:创建资产创建交易
- make_asset_config_txn:创建资产配置交易
- make_asset_destroy_txn:创建资产销毁交易
- make_asset_freeze_txn:创建资产冻结交易
- make_asset_transfer_txn:创建资产转移交易
交易工具
- send_raw_transaction:向网络提交已签名的交易
- 模拟原始交易
- 模拟交易:详细配置模拟交易
- make_payment_txn:创建支付交易
- 分配组ID给交易列表
- sign_transaction:使用密钥签署交易
密钥管理工具
- mnemonic_to_mdk:将助记符转换为主派生密钥
- mdk_to_mnemonic:将主派生密钥转换为助记符
- secret_key_to_mnemonic:将密钥转换为助记符
- mnemonic_to_secret_key:将助记符转换为密钥
- seed_from_mnemonic:从助记符生成种子
- mnemonic_from_seed:从种子生成助记符
- sign_bytes:使用密钥对任意字节进行签名
实用工具
- bytes_to_bigint:将字节转换为 BigInt
- bigint_to_bytes:将 BigInt 转换为字节
- encode_uint64:将 uint64 编码为字节
- decoder_uint64:将字节解码为uint64
- generate_algorand_uri:根据 ARC-26 规范生成 Algorand URI 和二维码
依赖项
- algosdk:Algorand JavaScript SDK
- @perawallet/connect:Pera Wallet 连接器
- @blockshake/defly-connect:Defly 钱包连接器
- @daffiwallet/connect:Daffi 钱包连接器
执照
麻省理工学院
This server cannot be installed
一个全面的 MCP 服务器,用于与 Algorand 区块链进行工具交互(40+)和资源可访问性(60+),以及许多有用的提示。
- Overview
- Features
- Requirements
- Installation
- Project Architecture
- Project Structure
- Core Functionalities
- Response Format
- Available Tools and Resources
- Dependencies
- License