Discover tools
FLOWRA_DISCOVER_TOOLSFind the exact tool slugs for an app or integration. Returns mainToolSlugs, relatedToolSlugs, per-toolkit hasActiveConnection, a short plan, pitfalls, and notFoundToolkitSlugs. If you already have the exact ACTION slug and only need its input schema, use FLOWRA_GET_TOOL_SCHEMAS instead.
When the result includes a catalog app that covers the job, use that app's tool instead of a generic web search, fetch, or HTTP tool.
Toolkit tools are not direct function calls. Once you have a slug: FLOWRA_GET_TOOL_SCHEMAS for its arguments (or set includeInputSchemas=true here and skip that step), FLOWRA_MANAGE_CONNECTIONS if hasActiveConnection is false, then FLOWRA_MULTI_EXECUTE_TOOL to run it. Use only slugs that came back from this call.
mode "select" (default): queries are one atomic English useCase per item, with the app name in it. Any schedule or recurrence goes in intentSummary only, never in useCase — recurring work is a workflow, not a tool argument. toolkitSlugs pins that app's important tools into candidates. Pass toolkitSlugs, queries, or both — at least one is required. select returns only the tools needed for one action, never a full catalog.
mode "inventory": one page of tools in a known app. Requires toolkitSlugs. Optional query is a whole-word match on slug, name, or description (issue matches issues, not issued; for example query "issue" with toolkitSlugs ["github"]). No selection model and no native Flowra tools unless that toolkit was requested. mainToolSlugs is this page only; relatedToolSlugs is empty. toolSchemas include name and a one-line description. If inventory.truncated is true, call again with the same toolkitSlugs and query and offset=inventory.nextOffset. Do not use the workbench to browse a toolkit catalog.
toolkitSlugs: exact catalog toolkit slugs (lowercase app id such as gmail or github). Do not pass ACTION slugs here (GMAIL_SEND_EMAIL).
Reuse the returned session.id on GET_TOOL_SCHEMAS, MANAGE_CONNECTIONS, and MULTI_EXECUTE_TOOL so auth and workbench state stay on one session.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | select (default): smallest set of tools for one action. inventory: one page of tools in toolkitSlugs, optional query filter, no selection model. Use inventory to list or search an app catalog (for example GitHub issue tools). | |
| limit | No | Inventory page size. Default 40, max 50. Ignored in select mode. | |
| query | No | Inventory only. Whole-word match on slug, name, or description (issue matches issues, not issued). Omit for the first page of the toolkit. Ignored in select mode. | |
| offset | No | Inventory page start. When inventory.truncated is true, pass inventory.nextOffset. Default 0. Ignored in select mode. | |
| queries | No | Use cases to search in parallel. Required in select mode unless toolkitSlugs is set. Ignored in inventory mode. | |
| session | No | Chat: omit. MCP/new: { generate_id: true }. Continue: { id }. Not both. | |
| userMessage | Yes | Exact user request (any language) | |
| toolkitSlugs | No | Exact catalog toolkit slugs (gmail, github). select: pins important tools. inventory: required, lists that app. Not ACTION slugs. | |
| intentSummary | Yes | One-sentence intent; include scheduling here if any | |
| includeInputSchemas | No | When true, toolSchemas include inputSchema so you can skip GET_TOOL_SCHEMAS. Default false |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | ||
| error | No | Error if any occurred during the execution of the action | |
| message | No | ||
| successful | No | Whether or not the action execution was successful or not |