Arcade is the actions runtime for enterprise AI agents. An isn’t an agent if it can’t take actions — and the moment an agent acts, three problems hit at once. Arcade solves all three at runtime, so teams ship production agents without rebuilding plumbing every time:
Enforce — Authorization: Deploy agents your security team approves. Your existing IdP, DLP, SIEM, and compliance policies, plus per-action authorization, are enforced at runtime.
Execute — Agent-: Agents that work across every business system, with 7,500+ agent-optimized tools across 81 MCP servers, built for reliable execution at scale — not thin API wrappers.
Govern — Agent Lifecycle Governance: Scale agents across the org from a central control plane: shared registry, version control, visibility filtering, and OpenTelemetry audit logs.
Configure once and use any model, framework, and client. Deploy the first agent the same way you deploy the hundredth.
The rest of this page focuses on the first pillar — agent authorization — which is where most agentic applications hit their first wall.
Why agent authorization matters
Applications that use models to perform tasks (agentic applications) commonly require access to sensitive data and services. Authentication complexities often hinder AI from performing tasks that require user-specific information, like what emails were recently received or what’s coming up on a calendar.
To retrieve this information, agentic applications need to be able to authenticate and authorize access to external services like Gmail or Google Calendar.
Authenticating to retrieve information, however, is not the only challenge. Agentic applications also need to authenticate to act on behalf of users - like sending an email or updating a calendar.
Without auth, AI agents are severely limited in what they can do.
How Arcade solves this
Arcade provides an authorization system that handles OAuth 2.0, API keys, and user tokens needed by AI agents to access external services through tools. This means AI agents can now act on behalf of users securely and privately.
With Arcade, developers can now create agents that can act as the end users of their application to perform tasks like:
A scope is what the user has authorized someone else (in this case, the AI agent) to do on their behalf. In any OAuth 2.0-compatible service, each kind of action requires a different set of permissions. This gives the user fine-grained control over what data third-party services can access and what actions they can take in their accounts.
When an agent calls a tool, if the user has not granted the required permissions, Arcade Engine will automatically prompt the user to authorize the tool and coordinate the OAuth 2.0 flow with the service provider.
How to implement OAuth 2.0-authorized tool calling
To learn how Arcade authorizes actions (tools) through OAuth 2.0 and how to implement auth flow, check out Authorized Tool Calling.
Tools that don’t require authorization
Some tools, like GoogleSearch.Search, allow AI agents to retrieve information or perform actions without needing user-specific authorization.
PythonJavaScript
Python
Python
from arcadepy import Arcadeclient = Arcade(api_key="arcade_api_key") # or set the ARCADE_API_KEY env var# Use the GoogleSearch.Searchtool to perform a web searchresponse = await client.tools.execute(tool_name="GoogleSearch.Search",input={"query": "Latest AI advancements"},)print(response.output.value)
JavaScript
JavaScript
import { Arcade } from "@arcadeai/arcadejs";const client = new Arcade(); // Automatically finds the ARCADE_API_KEY env variable// Use the GoogleSearch.Search tool to perform a web searchconst response = await client.tools.execute({ tool_name: "GoogleSearch.Search", input: { query: "Latest AI advancements" },});console.log(response.output.value);