MCP tools
The set of tools available for use through Retool's MCP.
Retool's MCP server provides access to the following tools. When you authenticate the MCP, identify the scope(s) that you want the MCP to be authorized for.
You cannot be granted a scope for more permissions than your Retool account permits. For example, only organization administrators can select the mcp:admin scope. In addition, you will only be shown objects (such as apps, resources, or workflows) that you have permission to view.
| Tool | Required Scope | Description |
|---|---|---|
| retool_list_apps | mcp:read | List apps in the organization. |
| retool_get_app | mcp:read | Get a single app by app ID. |
| retool_search_app_share_subjects | mcp:read | Search the app sharing directory for users, pending invites, and groups. Returns the subject IDs used by retool_grant_app_access and retool_revoke_app_access. |
| retool_list_app_access | mcp:read | List the users, invited users, and groups that currently have access to an app. Requires admin or owner access to the app. |
| retool_list_writable_app_folders | mcp:read | List the app folders the authenticated user can create apps in, including their personal folder when available. Use this to pick a valid folder ID before creating an app. |
| retool_list_resources | mcp:read | List resources available in the organization, including databases, APIs, storage, and AI providers. |
| retool_get_resource | mcp:read | Get metadata for one resource by name. Use this for resource details, not for querying the underlying data. |
| retool_list_resource_folders | mcp:read | List resource folders in the organization. Pass a returned folder ID to retool_create_resource or retool_update_resource to place a resource in that folder. |
| retool_get_resource_ts_definitions | mcp:read | Generate global variable bindings and TypeScript definitions for selected resources. Required before retool_execute_resource_ts. |
| retool_list_react_app_threads | mcp:read | List recently active threads for an app and return thread handles that can be used to continue work. |
| retool_get_react_app_thread_activity_status | mcp:read | Check whether an existing thread has active agent work, without starting a workflow or opening a stream. |
| retool_read_react_app_thread_stream | mcp:read | Fetch the most recent persisted chat messages for an existing thread. Reads durable history only. |
| retool_create_resource | mcp:write | Create a new resource. Provide the resource type plus optional connection fields, then finish configuration in the returned URL. |
| retool_update_resource | mcp:write | Update an existing resource by name. Pass only the fields to change and omit secrets to keep their existing values. A resource's type cannot be changed. |
| retool_grant_app_access | mcp:write | Grant or update direct access to an app for a user, pending invite, or group. Requires admin or owner access to the app. |
| retool_revoke_app_access | mcp:write | Revoke direct app access for a user, pending invite, or group. Inherited or group-derived access may still grant effective access. |
| retool_execute_resource_ts | mcp:write | Execute a TypeScript snippet against selected resources using the bindings from retool_get_resource_ts_definitions. |
| retool_list_react_app_files | mcp:write | List file paths, sizes, and line counts for an app. Returns metadata only, never file contents. |
| retool_read_react_app_files | mcp:write | Read the contents of specific files in an app. Requires an explicit list of paths. |
| retool_create_or_append_react_app_thread_message | mcp:write | Create or update an app from a natural-language prompt. Omit appUuid to create a new app. |
| retool_tail_react_app_thread_stream | mcp:write | Monitor an active thread and forward progress updates until activity completes, needs review, or times out. |
| retool_list_pending_react_app_thread_reviews | mcp:write | List pending live human-in-the-loop review requests for app threads. Inspect active review prompts before calling retool_respond_to_react_app_thread_review. |
| retool_respond_to_react_app_thread_review | mcp:write | Wait for a pending review request, present it to the user, and submit the response so activity can continue. |
| retool_cancel_react_app_thread_activity | mcp:write | Cancel activity on an active thread by sending a stop request to the sandbox agent. |
| retool_sync_react_app_thread | mcp:write | Sync an app's thread branch from external source control into Retool's git repository before making further edits. |
| retool_publish_react_app | mcp:write | Publish a thread using the same publish flow as the app builder. Optionally set the public app identifier, publish and release tags, publish behavior, and a target folder. |
| retool_list_pending_react_app_function_approvals | mcp:write | List publish-blocking approvals required for mutating functions on a thread. Use when retool_publish_react_app reports unapproved mutating functions. |
| retool_start_prepared_import | mcp:write | Start a two-step import of a large existing app. Provisions the app and thread, validates the import plan, and returns an import ID plus a time-limited upload URL for the source zip. |
| retool_finalize_prepared_import | mcp:write | Finalize a two-step import after the source zip is uploaded to the URL from retool_start_prepared_import. Confirms the upload and returns the editor URL. |
| retool_submit_prepared_import | mcp:write | Import an existing app in one step. Takes the cleaned source tree and import plan inline, validates them, creates the app, and returns the editor URL. |
| retool_report_tool_usage_feedback | mcp:write | Report feedback about MCP tool usage, including helpful outcomes, unexpected behavior, or missing capabilities. |
| retool_list_audit_logs | mcp:admin | List audit log events in the organization. |
| retool_list_workflows | mcp:admin | List workflows in the organization. |
| retool_get_workflow | mcp:admin | Get a workflow by workflow ID. |
| retool_delete_workflow | mcp:admin | Delete a workflow by workflow ID. |
| retool_list_folders | mcp:admin | List folders in the organization. |
| retool_get_folder | mcp:admin | Get a folder by folder ID. |
| retool_list_environments | mcp:admin | List environments in the organization. |
| retool_get_environment | mcp:admin | Get an environment by environment ID. |
| retool_list_users | mcp:admin | List users in the organization. |
| retool_get_user | mcp:admin | Get a single user by user ID. |
| retool_list_groups | mcp:admin | List permission groups in the organization, including their members. |
| retool_get_group | mcp:admin | Get a single permission group by group ID, including its members and access levels. |
| retool_get_organization | mcp:admin | Get organization settings. |
| retool_list_user_invites | mcp:admin | List user invites in the organization. |
| retool_get_user_invite | mcp:admin | Get a single user invite by invite ID. |
| retool_create_user_invite | mcp:admin | Create a user invite. |
| retool_delete_user_invite | mcp:admin | Delete a user invite by invite ID. |
| retool_set_user_invite_attribute | mcp:admin | Create or update a user attribute on a user invite. |
| retool_delete_user_invite_attribute | mcp:admin | Delete a user attribute from a user invite. |