关于 MoveFlow Aptos MCP Server
MoveFlow Aptos MCP Server 使 AI 助手能够在 Aptos 区块链上操作 MoveFlow 流式支付。它支持支付流生命周期管理和批量操作,默认将交易准备与客户端签名分开。
主要功能
- 01创建和管理支付流
- 02提取、暂停、恢复或关闭支付流
- 03延长支付流期限
- 04批量创建支付流和提取资金
- 05读取活跃支付流及详情
- 06支持只读和客户端签名模式
适用场景
- 01创建定期或一次性支付流
- 02查看账户的活跃支付流
- 03一次操作从多个支付流提取资金
- 04准备由客户端签名的支付交易
MCP 相关
该服务向 MCP 客户端提供支付流管理工具和支付流资源,包括活跃支付流列表及单个支付流详情。它支持 MCP 能力发现和输入架构验证。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MoveFlow Aptos MCP 服务
一个模型上下文协议(MCP)服务,可让 AI 助手与 Aptos 区块链上的 MoveFlow 协议交互。此服务提供标准化接口,供 AI 工具创建、管理和处理加密货币流式支付。
功能
-
流管理
- 创建支付流(定期支付或一次性支付)
- 从活跃流中提取资金
- 关闭现有流
- 延长流的持续时间
- 暂停和恢复流
- 查询流信息
-
批量操作
- 一次创建多个流
- 同时从多个流中提取资金
-
MCP 集成
- 完全兼容模型上下文协议(MCP)
- 通过 MCP 能力接口自动发现工具
- 标准化输入架构验证
- API 自描述
-
安全性
- 支持客户端签名,以安全处理交易
- 只读模式,安全查询数据
- 直接签名模式,适用于开发和测试
可用的 MCP 工具
MoveFlow Aptos MCP 服务提供以下工具:
| 工具名称 | 描述 | 功能 |
|---|---|---|
create-stream | 创建新的 MoveFlow 流 | 创建新的加密货币流,随时间推移转移资金 |
withdraw-stream | 从流中提取资金 | 从活跃流中提取可用资金 |
close-stream | 关闭 MoveFlow 流 | 终止流,并将剩余资金退还给发送方 |
extend-stream | 延长流的持续时间 | 延长现有流的结束时间 |
get-stream-info | 获取流信息 | 获取特定流的详细信息 |
batch-create-streams | 创建多个流 | 在单笔交易中创建多个流 |
batch-withdraw-streams | 从多个流中提取资金 | 在单笔交易中从多个流中提取资金 |
pause-stream | 暂停流 | 暂时停止流的支付 |
resume-stream | 恢复已暂停的流 | 重新启动已暂停的流 |
可用资源
MoveFlow Aptos MCP 服务还提供对区块链资源的访问:
| 资源 URI | 描述 |
|---|---|
moveflow://streams/active | 列出当前账户的所有活跃流 |
moveflow://streams/{streamId} | 获取特定流的详细信息 |
支持 MCP 协议的 AI 助手可以直接访问这些资源,无需显式调用工具即可获取上下文信息。
安装和设置
-
克隆仓库:
git clone https://github.com/moveflow/moveflow-aptos-mcp-server.git cd moveflow_aptos_mcp_server -
安装依赖项:
npm install -
构建项目:
npm run build -
启动服务:
APTOS_NODE_URL="https://fullnode.mainnet.aptoslabs.com/v1" \ APTOS_NETWORK="mainnet" \ READ_ONLY_MODE="true" \ node build/index.js -
验证服务是否正在运行: 你应该会看到以下输出:
Starting MoveFlow Aptos MCP Server... Initialized Stream with read-only mode MoveFlow Aptos MCP Server tools registered MoveFlow Aptos MCP Server started
通过 NPM 包安装
你也可以将此服务安装并用作 NPM 包:
npm install @moveflow/aptos-mcp-server
AI 助手集成
Claude Desktop 集成
将此服务添加到 Claude Desktop 配置中:
-
打开 Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
添加以下配置(根据你的设置调整路径):
{
"mcpServers": {
"moveflow-aptos": {
"command": "node",
"args": ["/path/to/moveflow_aptos_mcp_server/build/index.js"],
"env": {
"APTOS_NODE_URL": "https://fullnode.mainnet.aptoslabs.com/v1",
"APTOS_NETWORK": "mainnet",
"READ_ONLY_MODE": "true" // Set to "true" for read-only mode, omit for transaction preparation mode
},
"disabled": false,
"autoApprove": []
}
}
}
使用 NPX
无需全局安装,即可使用 npx 直接运行此服务:
# Run with default settings
npx @moveflow/aptos-mcp-server
# Run with custom environment variables
npx @moveflow/aptos-mcp-server --env.APTOS_NETWORK=testnet --env.READ_ONLY_MODE=true
使用 NPX 与 Claude Desktop 集成:
{
"mcpServers": {
"moveflow-aptos": {
"command": "npx",
"args": ["-y", "@moveflow/aptos-mcp-server"],
"env": {
"APTOS_NODE_URL": "https://fullnode.mainnet.aptoslabs.com/v1",
"APTOS_NETWORK": "mainnet",
"READ_ONLY_MODE": "true"
}
}
}
}
与其他 AI 插件集成
如果你正在开发自己的 AI 插件,并希望集成此 MCP 服务,可以:
- 将此仓库添加为项目依赖项
- 启动服务进程
- 通过 MCP 协议与服务通信
示例(TypeScript):
import { spawn } from 'child_process';
import { Client } from '@modelcontextprotocol/sdk/client';
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio';
// Start the MCP server
const serverProcess = spawn('node', ['path/to/build/index.js'], {
env: {
...process.env,
APTOS_NODE_URL: 'https://fullnode.mainnet.aptoslabs.com/v1',
APTOS_NETWORK: 'mainnet',
READ_ONLY_MODE: "true" // Enable read-only mode
}
});
// Connect to the MCP server
const client = new Client({version: '1.0.0'}, {capabilities: {}});
const transport = new StdioClientTransport({childProcess: serverProcess});
await client.connect(transport);
// Now you can use the client object to call MCP methods
Cline 集成
Cline 是 VS Code 中支持 MCP 工具的自主编码 Agent。将 MoveFlow Aptos MCP 服务集成到 Cline:
-
安装 Cline 扩展: 从 VS Code 扩展市场安装 Cline
-
配置 MoveFlow Aptos MCP 服务: Cline 会自动在
~/Documents/Cline/MCP目录中查找 MCP 服务。你可以:-
方法 1:创建服务配置文件
mkdir -p ~/Documents/Cline/MCP touch ~/Documents/Cline/MCP/moveflow-aptos.json将以下内容添加到
moveflow-aptos.json:{ "name": "moveflow-aptos", "command": "node", "args": ["/path/to/moveflow_aptos_mcp_server/build/index.js"], "env": { "APTOS_NODE_URL": "https://fullnode.mainnet.aptoslabs.com/v1", "APTOS_NETWORK": "mainnet" } } -
方法 2:使用 Cline 的自然语言配置 在 Cline 中输入:
Add a tool that connects to Aptos blockchain using MoveFlow protocol然后按照提示完成配置
-
-
设置私钥(可选):
- 对于只读操作,无需私钥
- 对于交易操作,请使用环境变量或
.env文件设置私钥,不要将私钥直接写入配置文件
-
使用服务功能: 在 Cline 中,你可以使用自然语言访问 MoveFlow 功能,例如:
Create a new payment stream on Aptos to address 0x123... for 100 APT over 30 days或:
Show me all my active MoveFlow streams on Aptos mainnet
⚠️ 安全提示:Cline 有自己的安全机制,在执行任何操作前都会征求你的许可。尽管如此,仍建议遵循本文档中列出的私钥安全最佳实践。
安全架构
此服务采用了一种无需存储私钥的安全架构:
客户端签名模式
此服务经过专门设计,完全避免存储私钥:
-
只读模式:
- 默认推荐的运行模式
- 仅允许查询区块链数据
- 无法执行任何交易
- 使用
READ_ONLY_MODE="true"启用
-
交易准备模式:
- 未设置
READ_ONLY_MODE或将其设为 "false" 时 - 服务会准备交易,但不会对其签名
- 必须由客户端应用对交易进行签名
- 将交易准备与签名分离,提高安全性
- 未设置
-
直接签名模式(用于开发):
- 将
SIGNING_MODE设为 "direct" 并提供APTOS_PRIVATE_KEY时 - 服务会使用提供的私钥对交易签名并提交
- 安全性较低,但便于测试
- 不建议在生产环境中使用
- 将
安全交易架构
服务架构将职责分离:
- 服务:验证输入并准备交易对象
- 客户端:管理私钥并对交易签名
- API/连接器:处理服务与客户端之间的通信
此设计无需在服务进程中处理私钥,使其在生产环境中显著更加安全。
测试 MCP 工具
服务器包含一个测试脚本,用于验证所有 MCP 工具是否正常运行:
# Run the test script
npm run test-tools
此脚本会依次测试每个 MCP 工具,以验证其功能是否正常。你也可以通过编辑 test-tools.js 中的配置,将测试脚本设置为使用不同的网络或签名模式。
配置参考
环境变量
| 变量 | 描述 | 必填 | 默认值 |
|---|---|---|---|
APTOS_NODE_URL | Aptos 节点 URL | 是 | https://fullnode.mainnet.aptoslabs.com/v1 |
APTOS_NETWORK | 网络类型:"mainnet"、"testnet"、"devnet"、"local" | 是 | "mainnet" |
READ_ONLY_MODE | 设置为 "true" 以启用只读模式 | 否 | "false" |
SIGNING_MODE | 签名模式:"direct" 或 "client" | 否 | "client" |
APTOS_PRIVATE_KEY | 用于直接签名模式的私钥 | 否* | - |
APTOS_FAUCET_URL | 测试/开发网络的水龙头 URL | 否 | - |
*仅当 SIGNING_MODE 设置为 "direct" 且 READ_ONLY_MODE 为 "false" 时才必填。
服务器模式
- 只读模式:当
READ_ONLY_MODE设置为 "true" 时,服务器只能查询区块链数据。 - 交易模式:当
READ_ONLY_MODE设置为 "false" 时,服务器可以采用以下两种模式:- 客户端签名模式(默认):当
SIGNING_MODE设置为 "client" 或未设置时,服务器会准备交易,但不会对其签名。交易必须由客户端应用程序签名。 - 直接签名模式:当
SIGNING_MODE设置为 "direct" 且提供了APTOS_PRIVATE_KEY时,服务器会使用提供的私钥直接签名并提交交易。此模式安全性较低,但在测试和开发中更方便。
- 客户端签名模式(默认):当
开发
项目结构
服务器代码库的组织结构如下:
moveflow_aptos_mcp_server/
├── src/ # Source code
│ ├── tools.ts # MCP tool implementations
│ ├── resources.ts # MCP resource implementations
│ ├── adapters.ts # Adapters for Aptos SDK
│ ├── aptos.ts # Aptos blockchain interactions
│ ├── config.ts # Configuration handling
│ ├── index.ts # Main server entry point
│ ├── utils.ts # Utility functions
│ └── services/ # Service implementations
│ ├── TransactionSigningService.ts
│ ├── ClientProvidedSigningService.ts
│ └── TransactionProxyService.ts
├── build/ # Compiled JavaScript
├── bin/ # CLI tools
│ └── cli.js # CLI entry point
└── test-tools.js # Tools testing script
从源代码构建
从源代码构建服务器:
# Install dependencies
npm install
# Build TypeScript
npm run build
# Optionally run tests
npm run test-tools
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。