工具参考
Activepieces 中所有 MCP 工具的完整目录
发现
这些工具始终可用(固定)且为只读。它们帮助 AI 代理在进行更改前了解项目内容。
ap_list_flows
列出当前项目中的工作流,包含状态、触发器类型和发布状态。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
limit | number | 否 | 最大返回数量(默认 100,最大 500) |
status | string | 否 | 按状态筛选:ENABLED 或 DISABLED |
name | string | 否 | 按工作流名称筛选(部分匹配) |
ap_flow_structure
获取工作流的完整结构:步骤树、配置状态、步骤输入值、路由分支条件和有效的插入位置。显示每个步骤的实际配置输入(URL、请求体、请求头等),以便 AI 读取和编辑现有配置。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
ap_read_step_code
读取 CODE 步骤的完整源代码、package.json 和输入映射。返回未截断的内容 —— 与 ap_flow_structure 不同,后者将代码截断为 300 个字符。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
stepName | string | 是 | CODE 步骤的名称(例如 step_1) |
ap_validate_flow
验证工作流的结构问题,无需发布。检查步骤有效性、模板引用和空分支。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
ap_research_pieces
研究可用的 Pieces。使用 pieceNames 进行批量精确查找(始终返回动作和触发器)。使用 searchQuery 进行模糊发现。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
pieceNames | string[] | 否 | 要查找的精确 Piece 名称(始终返回动作和触发器) |
searchQuery | string | 否 | 按名称筛选 Pieces |
includeActions | boolean | 否 | 是否包含动作详情(仅适用于 searchQuery 模式) |
includeTriggers | boolean | 否 | 是否包含触发器详情(仅适用于 searchQuery 模式) |
ap_get_piece_props
获取特定 Piece 动作或触发器的详细输入属性模式。返回字段名称、类型、必需/可选、描述、默认值和下拉选项。当需要认证但未提供时,自动列出可用连接。在调用 ap_update_step 或 ap_update_trigger 之前使用此工具,以了解需要设置哪些字段。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
pieceName | string | 是 | Piece 名称(例如 @activepieces/piece-slack) |
actionOrTriggerName | string | 是 | 动作或触发器名称(例如 send_channel_message) |
type | string | 是 | action 或 trigger |
auth | string | 否 | 连接外部 ID。提供后,动态下拉菜单和 DYNAMIC 子字段将被解析。 |
flowId | string | 否 | 用于解析依赖步骤上下文的关联下拉菜单的工作流 ID。 |
input | object | 否 | 用于解析依赖 DYNAMIC 属性的已知输入值(例如 {"body_type": "json"})。 |
ap_resolve_property_options
解析单个 Piece 属性的下拉选项。返回带标签和内部 ID 的可用选择。在配置步骤前使用此工具发现动态下拉字段(例如 Slack 频道、Google Sheets、邮件标签)的有效值。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
pieceName | string | 是 | Piece 名称(例如 @activepieces/piece-slack) |
actionOrTriggerName | string | 是 | 动作或触发器名称(例如 send_channel_message) |
type | string | 是 | action 或 trigger |
propertyName | string | 是 | 要解析的精确属性名称(例如 channel) |
auth | string | 是 | 连接外部 ID —— 必须提供以从用户帐户获取选项 |
input | object | 否 | 此字段依赖的父属性值(refreshers) |
searchValue | string | 否 | 用于筛选大下拉列表的搜索词(例如 “sales” 查找与销售相关的频道) |
ap_resolve_property_chain
一次调用解析一系列依赖的下拉属性。对于具有级联字段的动作(例如 Spreadsheet → Sheet → Columns),此工具按顺序解析每个属性,将每个选定值馈入下一个解析。为已知值的属性传递 selectedValue;当遇到没有 selectedValue 的属性时,工具停止并返回选项。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
pieceName | string | 是 | Piece 名称(例如 @activepieces/piece-google-sheets) |
actionOrTriggerName | string | 是 | 动作或触发器名称(例如 insert_row) |
type | string | 是 | action 或 trigger |
propertyChain | array | 是 | 要解析的有序属性列表(最多 10 个)。每项包含 propertyName(string)和可选的 selectedValue(any)。 |
auth | string | 是 | 连接外部 ID —— 必须提供以从用户帐户获取选项 |
currentInput | object | 否 | 已知的额外输入值(例如 {"first_row_headers": true}) |
ap_validate_step_config
在应用前验证步骤配置。返回字段级错误,不修改任何工作流。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
stepType | string | 是 | PIECE_ACTION、PIECE_TRIGGER、CODE、LOOP_ON_ITEMS 或 ROUTER |
pieceName | string | 否 | 对于 PIECE 类型:Piece 名称(接受短名称如 slack) |
actionName | string | 否 | 对于 PIECE_ACTION:动作名称 |
triggerName | string | 否 | 对于 PIECE_TRIGGER:触发器名称 |
input | object | 否 | 对于 PIECE 类型:要验证的输入配置 |
auth | string | 否 | 对于 PIECE 类型:任何非空字符串表示已提供认证 |
sourceCode | string | 否 | 对于 CODE:JavaScript/TypeScript 源代码 |
packageJson | string | 否 | 对于 CODE:作为 JSON 字符串的 package.json |
loopItems | string | 否 | 对于 LOOP_ON_ITEMS:项目表达式 |
settings | object | 否 | 对于 ROUTER:原始路由设置 |
ap_list_connections
列出项目中的 OAuth/应用连接。在添加需要认证的步骤前必需。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
pieceName | string | 否 | 按 Piece 名称筛选。短名称如 slack 或 google-sheets 会自动扩展。 |
displayName | string | 否 | 按连接显示名称筛选(部分匹配) |
status | array | 否 | 按状态筛选:ACTIVE、MISSING 或 ERROR |
ap_list_ai_models
列出已配置的 AI 提供商及其可用模型。使用此工具发现配置运行 Agent 步骤的有效 aiProviderModel 值。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
provider | string | 否 | 按提供商筛选(openai、anthropic、google、azure、openrouter、activepieces、cloudflare-gateway、custom) |
ap_list_tables
列出项目中的所有表格及其字段(名称、类型、ID)和行数。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
| — | — | — | 无需输入 |
ap_find_records
从表中查询记录,支持可选筛选。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
tableId | string | 是 | 表格 ID |
filters | array | 否 | 筛选条件(fieldName、operator、value) |
limit | number | 否 | 最大记录数(默认 50,最大 500) |
筛选运算符: eq、neq、gt、gte、lt、lte、co(包含)、exists、not_exists
ap_list_runs
列出最近的工作流运行,支持可选筛选。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 否 | 按工作流筛选 |
status | string | 否 | 按状态筛选(SUCCEEDED、FAILED、RUNNING 等) |
limit | number | 否 | 最大运行数(默认 10,最大 50) |
ap_get_run
获取工作流运行的详细信息,包括各步骤输出、错误和耗时。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowRunId | string | 是 | 运行 ID |
ap_setup_guide
获取设置连接或 AI 提供商的分步说明。返回供用户在 UI 中遵循的说明 —— 凭据从不通过 MCP 处理。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
topic | string | 是 | connection 或 ai_provider |
pieceName | string | 否 | 对于连接:哪个 Piece 需要认证 |
ap_set_project_context
设置或清除当前项目上下文。所有工具都需要项目上下文才能运行。使用 projectId 选择项目,或不传参以清除选择。始终返回可用项目列表。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
projectId | string | 否 | 要选择的项目 ID。省略以清除当前选择并列出可用项目。 |
工作流管理
创建和管理工作流。
ap_create_flow
创建新的空工作流。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowName | string | 是 | 工作流的显示名称 |
ap_duplicate_flow
复制现有工作流。创建包含所有步骤、配置和画布笔记的新副本。连接和样本数据不会被复制。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 要复制的工作流 ID |
name | string | 否 | 副本的名称(默认为 “Copy of {原始名称}“) |
ap_rename_flow
重命名现有工作流。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
displayName | string | 是 | 新名称 |
ap_change_flow_status
启用或禁用工作流。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
status | string | 是 | ENABLED 或 DISABLED |
ap_delete_flow
永久删除工作流及其所有版本。此操作不可撤销。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 要删除的工作流 ID |
ap_lock_and_publish
发布工作流的当前草稿。验证所有步骤已配置。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
工作流构建
在工作流中添加、配置和删除步骤。
ap_build_flow
一次调用创建完整工作流 —— 触发器加任意数量的步骤。步骤按顺序添加(trigger → step_1 → step_2 → …)。所有步骤在创建时即验证。使用细粒度工具(ap_add_step、ap_update_step)修改现有工作流或添加嵌套结构(循环内容、路由分支)。
返回工作流 ID、指向编辑器中工作流的直接 flowUrl 链接、步骤数和验证状态。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowName | string | 是 | 新工作流名称 |
trigger | object | 是 | {pieceName, triggerName, input?, auth?} |
steps | array | 是 | 步骤规范数组,每个包含 type、displayName 和类型专用字段 |
数组中的步骤类型:
- PIECE:
pieceName、actionName、input、auth、continueOnFailure、retryOnFailure - CODE:
sourceCode、input、continueOnFailure、retryOnFailure - LOOP_ON_ITEMS:
loopItems - ROUTER:创建包含分支 1 + 其他分支的路由器
ap_update_trigger
设置或更新工作流的触发器。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
pieceName | string | 是 | Piece 名称(例如 @activepieces/piece-gmail) |
triggerName | string | 是 | Piece 中的触发器名称 |
input | object | 否 | 触发器配置 |
auth | string | 否 | 连接外部 ID |
displayName | string | 否 | 触发器步骤的显示名称 |
ap_add_step
向工作流添加新步骤。可选择在同一调用中通过提供 input、auth、sourceCode 或 loopItems 进行配置。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
parentStepName | string | 是 | 要在其后/其中插入的步骤 |
stepLocationRelativeToParent | string | 是 | AFTER、INSIDE_LOOP 或 INSIDE_BRANCH |
stepType | string | 是 | CODE、PIECE、LOOP_ON_ITEMS 或 ROUTER |
displayName | string | 是 | 步骤显示名称 |
pieceName | string | 否 | 对于 PIECE 步骤 |
actionName | string | 否 | 对于 PIECE 步骤 |
branchIndex | number | 否 | 对于 INSIDE_BRANCH |
input | object | 否 | 步骤输入配置(键值对) |
auth | string | 否 | 连接外部 ID |
sourceCode | string | 否 | 对于 CODE 步骤:JavaScript/TypeScript 源代码 |
packageJson | string | 否 | 对于 CODE 步骤:npm 依赖 |
loopItems | string | 否 | 对于 LOOP 步骤:项目表达式 |
continueOnFailure | boolean | 否 | 对于 CODE/PIECE 步骤:此步骤失败时继续工作流(默认:false) |
retryOnFailure | boolean | 否 | 对于 CODE/PIECE 步骤:此步骤失败时重试(默认:false) |
ap_update_step
更新现有步骤的设置。可选属性自动填充默认值。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
stepName | string | 是 | 步骤名称(例如 step_1) |
displayName | string | 否 | 新显示名称 |
input | object | 否 | 步骤配置 |
auth | string | 否 | 连接外部 ID |
actionName | string | 否 | 对于 PIECE 步骤 |
loopItems | string | 否 | 对于 LOOP 步骤 |
sourceCode | string | 否 | 对于 CODE 步骤:JavaScript/TypeScript 源代码 |
packageJson | string | 否 | 对于 CODE 步骤:作为 JSON 字符串的 npm 依赖 |
skip | boolean | 否 | 跳过此步骤 |
continueOnFailure | boolean | 否 | 对于 CODE/PIECE 步骤:此步骤失败时继续工作流 |
retryOnFailure | boolean | 否 | 对于 CODE/PIECE 步骤:此步骤失败时重试 |
ap_delete_step
从工作流中删除步骤。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
stepName | string | 是 | 要删除的步骤 |
displayName | string | 否 | 向用户显示的简短批准提示 |
路由与分支
管理路由器步骤中的条件分支。使用 ap_flow_structure 查看现有分支条件和索引。
ap_add_branch
向路由器步骤添加条件分支。该分支在回退(Otherwise)分支之前插入。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
routerStepName | string | 是 | 路由器步骤名称 |
branchName | string | 是 | 分支的显示名称 |
conditions | array | 否 | 条件数组(见下文) |
条件格式: 外层数组 = OR 组,内层数组 = AND 条件。每个条件包含:
firstValue(string)—— 左侧值,可使用{{step_1.field}}模板语法operator(string)—— 例如TEXT_CONTAINS、NUMBER_IS_GREATER_THAN、EXISTS、BOOLEAN_IS_TRUEsecondValue(string,可选)—— 右侧值(单值运算符不需要)caseSensitive(boolean,可选)—— 用于文本运算符
ap_update_branch
更新现有路由器分支的条件和/或名称,不影响其中的步骤。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
routerStepName | string | 是 | 路由器步骤名称 |
branchIndex | number | 是 | 分支索引(从 0 开始) |
branchName | string | 否 | 新显示名称 |
conditions | array | 否 | 新条件(格式与 ap_add_branch 相同)。完全替换现有条件。 |
ap_delete_branch
从路由器步骤中删除分支。不能删除回退(最后一个)分支。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
routerStepName | string | 是 | 路由器步骤名称 |
branchIndex | number | 是 | 要删除的分支索引(从 0 开始) |
displayName | string | 否 | 向用户显示的简短批准提示 |
标注
ap_manage_notes
在工作流中添加、更新或删除画布笔记。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
operation | string | 是 | ADD、UPDATE 或 DELETE |
noteId | string | 否 | UPDATE/DELETE 必需 |
content | string | 否 | 笔记文本(ADD 必需) |
color | string | 否 | 笔记颜色 |
position | object | 否 | {x, y} 画布位置 |
size | object | 否 | {width, height} 笔记尺寸(默认 200x200) |
表格
内置表格功能的完整 CRUD 操作。插入或更新记录时使用字段名称(而非 ID)。
ap_create_table
使用初始字段集创建新表格。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
name | string | 是 | 表格名称 |
fields | array | 是 | 字段:{name, type, options?} |
字段类型: TEXT、NUMBER、DATE、STATIC_DROPDOWN(需要 options 数组)
ap_delete_table
永久删除表格及其所有数据。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
tableId | string | 是 | 表格 ID |
displayName | string | 否 | 向用户显示的简短批准提示 |
ap_manage_fields
在表格中添加、重命名或删除字段。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
tableId | string | 是 | 表格 ID |
operation | string | 是 | ADD、UPDATE 或 DELETE |
fieldId | string | 否 | UPDATE/DELETE 必需 |
name | string | 否 | ADD/UPDATE 必需 |
type | string | 否 | ADD 必需 |
options | array | 否 | 对于 STATIC_DROPDOWN |
ap_insert_records
向表格中插入一条或多条记录。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
tableId | string | 是 | 表格 ID |
records | array | 是 | 1-50 条记录,每个将字段名称映射到值 |
ap_update_record
更新记录中的特定单元格。仅更改指定的字段。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
tableId | string | 是 | 表格 ID |
recordId | string | 是 | 记录 ID |
fields | object | 是 | 字段名到新值的映射 |
ap_delete_records
永久删除一条或多条记录。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
recordIds | array | 是 | 要删除的记录 ID |
displayName | string | 否 | 向用户显示的简短批准提示 |
测试与运行
测试工作流、检查结果和重试失败项。测试工具最长轮询 120 秒并返回分步结果。
ap_test_flow
在测试环境中端到端测试工作流。当没有样本数据时(例如 webhook 触发器),传递 triggerTestData 以提供模拟触发器输出。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
displayName | string | 否 | 向用户显示的简短批准提示 |
triggerTestData | object | 否 | 模拟触发器输出数据。在运行测试前保存为样本数据。 |
ap_test_step
测试工作流中的单个步骤。运行直到并包括目标步骤的所有步骤。当没有样本数据时传递 triggerTestData。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowId | string | 是 | 工作流 ID |
stepName | string | 是 | 要测试的步骤 |
displayName | string | 否 | 向用户显示的简短批准提示 |
triggerTestData | object | 否 | 模拟触发器输出数据 |
ap_retry_run
重试失败的工作流运行。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
flowRunId | string | 是 | 失败的运行 ID |
strategy | string | 是 | FROM_FAILED_STEP 或 ON_LATEST_VERSION |
- FROM_FAILED_STEP:从失败处继续,保留前序步骤输出
- ON_LATEST_VERSION:使用当前发布版本重新运行整个工作流
ap_run_action
执行一次单个 Piece 动作,无需构建或保存工作流。专为一次性任务设计,例如”查看我的收件箱”或”发送一条 Slack 消息”,这些场景构建完整的自动化显得有些大材小用。底层上,该工具创建一个一次性工作流、运行动作、返回输出,然后清理工作流 —— 用户不会在其工作流列表中看到它。
| 输入 | 类型 | 必需 | 描述 |
|---|---|---|---|
pieceName | string | 是 | Piece 名称(例如 slack 或 @activepieces/piece-slack)。使用 ap_research_pieces 发现。 |
actionName | string | 是 | 要运行的动作(例如 send_channel_message)。使用 ap_get_piece_props 查看输入结构。 |
input | object | 否 | 动作的完全解析输入。键必须匹配 Piece 动作的属性。传递原始值 —— 不要将它们包裹在 {{…}} 中。如果动作没有属性,完全省略。 |
connectionExternalId | string | 否 | 来自 ap_list_connections 的 externalId。如果 Piece 需要认证则必需。服务端自动包装为 {{connections['externalId']}}。必须是纯 ID —— 拒绝特殊字符。 |
ap_run_action—— 一次性、用完即弃、立即返回结果。ap_build_flow—— 应重复运行、按计划执行或由外部事件触发的持久化自动化。
建议先调用 ap_list_connections 和 ap_get_piece_props,以便在调用前了解确切的 actionName、预期的 props 和正确的 connectionExternalId。缺少必需输入或未知动作会在分派前产生友好的错误 —— 不会创建运行,也不会产生任何费用。