# ArcadeEngineApi
import StarterToolInfo from "@/app/_components/starter-tool-info";
import ToolInfo from "@/app/_components/tool-info";
import Badges from "@/app/_components/badges";
import TabbedCodeBlock from "@/app/_components/tabbed-code-block";
import TableOfContents from "@/app/_components/table-of-contents";
import ToolFooter from "@/app/_components/tool-footer";
import { Callout } from "nextra/components";
The EngineApi MCP Server offers a comprehensive suite of tools for managing authentication providers, secrets, and worker configurations. Users and LLMs can perform a variety of actions, including:
## Available Tools
If you need to perform an action that's not listed here, you can [get in touch
with us](mailto:contact@arcade.dev) to request a new tool, or [create your own
tools](/guides/create-tools/tool-basics/build-mcp-server).
## EngineApi.ListAvailableAuthProviders
Retrieve a list of available authentication providers.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetAuthProviderDetails
Retrieve details of a specific authentication provider.
**Parameters**
- **auth_provider_id** (`string`, required) The ID of the authentication provider to retrieve.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.DeleteAuthProvider
Delete a specific auth provider by ID.
**Parameters**
- **auth_provider_id** (`string`, required) The ID of the authentication provider to delete.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.DeleteSecretById
Deletes a secret using its unique ID.
**Parameters**
- **secret_id** (`string`, required) The unique identifier of the secret to delete.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.UpdateSessionVerificationSettings
Update session verification settings for a user.
**Parameters**
- **unsafe_skip_verification** (`boolean`, optional) Set to true to skip the session verification, making it unsafe.
- **verifier_url** (`string`, optional) The URL of the verifier service used for session verification. Provide a valid URL.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.ListAuthConnections
Retrieve all authentication connections for users.
**Parameters**
- **page_offset** (`integer`, optional) The starting point in the list for pagination. Useful for retrieving subsequent pages of data.
- **page_size** (`integer`, optional) Number of auth connections to return per page. Use to control the size of the result set.
- **provider_id** (`string`, optional) Unique identifier for the authentication provider.
- **user_id** (`string`, optional) The unique identifier for the user to list authentication connections for.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.DeleteUserAuthConnection
Deletes a user/auth provider connection.
**Parameters**
- **connection_id** (`string`, required) The unique identifier for the user/auth provider connection to be deleted.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.CheckAuthStatus
Verify the ongoing authorization status of a tool.
**Parameters**
- **authorization_id** (`string`, required) The unique ID for the authorization process to check its status.
- **timeout_in_seconds** (`integer`, optional) Specify the timeout duration in seconds. Maximum allowed is 59 seconds.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.RetrieveFormattedToolsList
Fetches a formatted list of tools from engine configuration.
**Parameters**
- **filter_by_toolkit** (`string`, optional) Specify the toolkit name to filter the list of tools.
- **number_of_items_to_return** (`integer`, optional) Specify the number of tools to return. Defaults to 25, with a maximum of 100.
- **offset_start_index** (`integer`, optional) Offset from the start of the tools list. Default is 0.
- **provider_format** (`string`, optional) Format the tools according to the provider's specifications. Accepts a string value.
- **user_identifier** (`string`, optional) The ID of the user for whom the tool list is to be retrieved.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetFormattedToolSpecification
Fetches a formatted specification for a given tool.
**Parameters**
- **tool_name** (`string`, required) The name of the tool for which the formatted specification is requested.
- **provider_format** (`string`, optional) Specifies the format of the tool as required by the provider.
- **user_id** (`string`, optional) The identifier for the user requesting the tool specification. This should be a string.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.CheckArcadeEngineHealth
Check the health status of the Arcade Engine.
**Parameters**
This tool does not take any parameters.
## EngineApi.DeleteMcpEndpoint
Delete the Model Context Protocol endpoint data.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.ListAccessibleProjects
Retrieve a list of accessible projects.
**Parameters**
- **bearer_token** (`string`, required) A string containing the Bearer (JWT) token for authentication.
- **items_to_skip** (`integer`, optional) The number of projects to skip before starting to collect the result set.
- **maximum_items_to_return** (`integer`, optional) Specifies the maximum number of projects to return. Must be an integer.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetProjectDetails
Retrieve detailed information about a specific project.
**Parameters**
- **authorization_token** (`string`, required) JWT token required for authentication. Should be provided in the format: 'Bearer \'.
- **project_id** (`string`, required) The unique identifier for the project to retrieve details for. This should be a string matching the project's ID in the database.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetScheduledToolExecutions
Fetch a list of scheduled tool executions.
**Parameters**
- **items_limit** (`integer`, optional) The number of scheduled tool executions to return. Defaults to 25, max is 100.
- **list_offset** (`integer`, optional) The starting position in the list of scheduled tool executions, default is 0.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetScheduledToolDetails
Retrieve details for a specific scheduled tool execution.
**Parameters**
- **scheduled_execution_id** (`string`, required) The unique identifier for the scheduled tool execution to retrieve details for.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetOpenAPISpecification
Get the OpenAPI 3.0 specification in JSON format.
Use this tool to retrieve the OpenAPI 3.0 specification for the Arcade Engine API, which provides detailed information about all available endpoints and their usage.
**Parameters**
This tool does not take any parameters.
## EngineApi.GetToolsList
Retrieve a list of tools from the engine configuration.
**Parameters**
- **include_formats** (`array[string]`, optional) List of tool formats to include in the response, specified by their names.
- **items_per_page** (`integer`, optional) Specify the number of tools to return, with a maximum of 100. Defaults to 25 if not specified.
- **start_offset** (`integer`, optional) Offset to determine the starting point from the list of tools. Default is 0.
- **toolkit_name** (`string`, optional) Specifies the name of the toolkit to filter the tools list.
- **user_id** (`string`, optional) The ID of the user requesting the tool list. It is used to filter the results for a specific user context.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.AuthorizeUserToolAccess
Authorize a user to access a specific tool.
**Parameters**
- **tool_name_for_authorization** (`string`, required) Specify the name of the tool to authorize the user for access.
- **redirect_uri_after_authorization** (`string`, optional) Optional URI to redirect the user after authorization.
- **tool_version** (`string`, optional) Specify the tool version to authorize. If not provided, any version will be used.
- **user_id** (`string`, optional) The unique identifier for a user. Required only when using an API key for authorization.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.ExecuteTool
Execute a specified tool with given parameters.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetToolSpecification
Retrieve the specification for a specific arcade tool.
**Parameters**
- **tool_name** (`string`, required) The name of the tool whose specification is to be retrieved. This should match the tool's registered name.
- **formats_to_include** (`array[string]`, optional) List of tool formats to include in the response. Provide formats as a list of strings.
- **user_identifier** (`string`, optional) The unique identifier for the user requesting the tool specification.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.ListWorkers
Retrieve a list of all workers with their definitions.
**Parameters**
- **number_of_items_to_return** (`integer`, optional) The maximum number of worker items to return, with a default of 25 and a maximum of 100.
- **start_offset** (`integer`, optional) Offset from the start of the list for pagination. Defaults to 0.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.CreateWorker
Create a new worker in the system.
**Parameters**
- **worker_id** (`string`, required) A unique identifier for the worker to be created. It should be a string.
- **enable_worker** (`boolean`, optional) Set to true to enable the new worker upon creation, or false to keep it disabled.
- **http_retry_attempts** (`integer`, optional) Number of retry attempts for HTTP requests if a failure occurs.
- **http_secret_key** (`string`, optional) A secret key used for HTTP authentication and authorization. It should be a secure string provided by the service.
- **http_timeout_seconds** (`integer`, optional) The timeout duration for the HTTP connection, specified in seconds. This defines how long the system should wait for the HTTP request to complete before timing out.
- **mcp_retry_attempts** (`integer`, optional) Specifies the number of retry attempts for MCP connections. Provide an integer value to define how many times the system should retry a connection if it fails.
- **mcp_timeout_duration** (`integer`, optional) The timeout duration for MCP operations in seconds. Must be an integer value.
- **worker_http_uri** (`string`, optional) The HTTP URI for the worker's endpoint. This expects a valid URL string that specifies where the worker's service can be accessed.
- **worker_resource_uri** (`string`, optional) The URI for the worker's resource location or service endpoint. Provide the full URI as a string.
- **worker_type** (`string`, optional) Specifies the type of worker to be created. It should be a string indicating the category or role of the worker.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.TestWorkerConnection
Test a worker connection before adding it to the system.
**Parameters**
- **worker_connection_type** (`string`, required) Specify the type of worker connection to test. It must be a string value indicating the category or mode of the worker.
- **http_uri** (`string`, optional) Specify the HTTP URI of the worker to test the connection.
- **mcp_uri** (`string`, optional) The URI for the MCP connection required to test a worker connection.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetWorkerById
Retrieve worker details using their ID.
**Parameters**
- **worker_id** (`string`, required) The unique identifier for the worker to retrieve details.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.DeleteWorker
Deletes a specified worker from the system.
**Parameters**
- **worker_id** (`string`, required) The unique identifier for the worker to be deleted.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.AuthorizeWorker
Authorize a worker based on their ID.
**Parameters**
- **worker_id** (`string`, required) The unique identifier for the worker to be authorized.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.GetWorkerHealthStatus
Retrieve the health status of a worker.
**Parameters**
- **worker_id** (`string`, required) The unique identifier for the worker whose health status you want to check.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## EngineApi.FetchToolsPage
Retrieve a list of tools for a specific worker.
**Parameters**
- **worker_id** (`string`, required) The unique ID of the worker for which to retrieve the tools list.
- **number_of_items** (`integer`, optional) Number of items to return in the result set. Default is 25 and the maximum is 100.
- **start_offset** (`integer`, optional) Offset from the start of the list for pagination. Defaults to 0.
**Secrets**
This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## Secrets
This MCP Server requires the `ARCADE_API_KEY` secret to be configured. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets).
### Getting your Arcade API Key
To use the Arcade Engine API MCP Server, you need an Arcade API key. This key authenticates your requests to the Arcade Engine.
Learn how to create and manage your Arcade API keys in the [API Keys documentation](/get-started/setup/api-keys).
## Reference
Below is a reference of enumerations used by some of the tools in the ArcadeEngineApi MCP Server:
### ToolMode
- **GET_REQUEST_SCHEMA**: `get_request_schema`
- **EXECUTE**: `execute`