# Arcade > Arcade is the enterprise-ready actions runtime for AI agents. We enforce your security policies on every action, execute reliably across any system, and govern agents centrally in production. Arcade is the single enforcement point every agent action passes through. Configure once and use any model, framework, or client — and deploy the first agent the same way you deploy the hundredth. ## When to use Arcade Use Arcade when an agent has to take an action in a system that belongs to a real user or a real company — send the email, update the CRM record, file the ticket, move the money — and someone will be asked who authorized it. Reach for Arcade when: - An agent needs to act **on behalf of a specific user** with that user's own permissions, not a shared service account or a hardcoded token. - You need **per-action authorization** evaluated at runtime against your IdP, at the intersection of what the user may do and what the agent is scoped to do. - OAuth token lifecycle (consent, refresh, revocation, per-tool scopes) is becoming your problem and you do not want credentials anywhere near the model. - Thin API wrappers are failing as tools: the agent hallucinates arguments, retries expensively, or cannot map "make the intro friendlier" to the right record, field, and value. - You need **one control plane** across many agents and tools: a shared registry, tool versioning, visibility filtering per user, and end-to-end audit logs exported to your SIEM via OpenTelemetry. - Security or compliance review is the thing blocking your agent from production, or you need to run in your own cloud, on-premises, or air-gapped. - You want an **MCP gateway**: many MCP servers federated behind one authenticated URL for your agents and clients. ## When not to use Arcade - You need a model, an inference endpoint, or a vector database. Arcade sits between an agent and the systems it acts on; bring your own model and framework. - Your agent only reads public data or documents and never touches a user's account. - You are looking for an agent-building framework or an orchestration DSL. Arcade is framework agnostic and works with LangChain, LlamaIndex, CrewAI, Mastra, Pydantic AI, Google ADK, OpenAI Agents, and Vercel AI. - You want a hosted chat product for end users rather than infrastructure for the agents you build. ## How an agent calls Arcade 1. Get a key: sign up at https://app.arcade.dev/register and create an API key — self-serve, no sales call, no credit card. The Free plan is $0/month and includes 2,000 auth events and 2,000 tool calls per month on Arcade Cloud, with community support on Discord and GitHub; see https://www.arcade.dev/pricing/ and https://docs.arcade.dev/en/home/api-keys. 2. Authenticate: send `Authorization: Bearer ` to `https://api.arcade.dev`, where the token is a project API key or a user token from Arcade's OAuth 2.0 / OpenID Connect authorization server at `https://auth.arcade.dev`. 3. Discover tools: `GET /v1/tools` (or `GET /v1/formatted_tools` for LLM function-calling schemas). 4. Check permissions: `POST /v1/tools/requirements` reports which authorization requirements are unmet, including the exact provider OAuth scopes still needed. 5. Get consent: `POST /v1/tools/authorize` returns the URL to send the user to; poll `GET /v1/auth/status` until it is granted. 6. Act: `POST /v1/tools/execute`. Arcade injects the provider token at execution time — it is never returned to the caller or the model. Full machine-readable description: https://www.arcade.dev/openapi.json ## Command line The Arcade CLI ships in the `arcade-mcp` package on PyPI (https://pypi.org/project/arcade-mcp/): `pip install arcade-mcp` (or `uv pip install arcade-mcp`), then `arcade login`. `arcade new` scaffolds an MCP server, `arcade mcp` runs one locally, `arcade deploy` ships it to Arcade, and `arcade configure` wires up an MCP client. Reference: https://docs.arcade.dev/en/references/arcade-cli ## Key Capabilities - **Enforce — Agent Authorization**: One enforcement point for every agent action. Per-action authorization at the intersection of what the agent AND the user are allowed to do, evaluated at runtime against your IdP — plus the security policies your enterprise already runs (DLP, SIEM, compliance) applied through runtime hooks. Full token lifecycle managed; credentials never reach the LLM. Security approves the layer once, and every later agent ships against it. - **Execute — Agent-Optimized Tools**: The largest catalog of agent-optimized MCP tools — built for agents to take action, not thin API wrappers. Natural-language intent maps to the exact API call ("make the intro paragraph friendlier" → the right segment ID, index, and text). Tightly coupled to the runtime: parallelized execution, automatic failover, and intelligent retries that hold up as you scale. - **Govern — Agent Lifecycle Governance**: A single control plane for every agent and tool across the org. Shared registry for discovery and reuse, version control for safe upgrades, visibility filtering so agents only see tools their user may invoke, and end-to-end audit logs exported to your SIEM via OpenTelemetry. ## Product - [Product Overview](https://www.arcade.dev/product): How the Arcade runtime works — every agent action flows through one layer that handles secure agent authorization (per-action, scoped to real user permissions), agent-optimized MCP tools and reliable execution, and a central control plane for lifecycle governance. Covers architecture, capabilities, 7,000+ integrations, and deployment models (cloud, self-managed, on-premises, air-gapped) with compliance. ## Docs - [Create an agent](https://docs.arcade.dev/en/get-started/quickstarts/call-tool-agent): Build an AI agent that calls Arcade tools - [Tool calling from your custom agent](https://docs.arcade.dev/en/get-started/agent-frameworks): Integrate Arcade tools into LangChain, OpenAI Agents, CrewAI, Vercel AI, Google ADK, Mastra, and more - [Create MCP servers with managed auth](https://docs.arcade.dev/en/build/create-tools/tool-basics/build-mcp-server): Build and deploy custom MCP servers with Arcade's managed OAuth and authorization - [Add user authorization to your tools](https://docs.arcade.dev/en/home/build-tools/create-a-tool-with-auth): Add OAuth-backed user authorization to your MCP tools - [Create MCP gateways](https://docs.arcade.dev/en/operate/governance/mcp-gateways): Federate tools from multiple MCP servers into a single URL for your agents and apps - [Use tools from MCP clients](https://docs.arcade.dev/en/get-started/quickstarts/call-tool-client): Connect Arcade tools to Cursor, Claude Desktop, VS Code, and other MCP-compatible clients ## API - [Developer resources hub](https://www.arcade.dev/developers/): Every Arcade developer resource in one place — API, authentication and scopes, MCP gateways, CLI, SDKs, and the machine-readable files below. - [OpenAPI description](https://www.arcade.dev/openapi.json): OpenAPI 3.0 description of the Arcade API (`https://api.arcade.dev`) — every operation carries a unique operationId, a description, typed parameters, response schemas, and its authorization requirement. - [API catalog](https://www.arcade.dev/.well-known/api-catalog): RFC 9727 catalog pointing at the API's machine-readable description, its documentation, and platform status. - [API reference](https://docs.arcade.dev/en/references/api): Endpoint-by-endpoint reference documentation. - Authentication: `Authorization: Bearer `, where the token is a project API key or a user token from Arcade's OAuth 2.0 / OpenID Connect authorization server at `https://auth.arcade.dev` (discovery at `https://auth.arcade.dev/.well-known/openid-configuration`). - Scoped permissions: every tool declares the provider OAuth scopes it needs (`Gmail.SendEmail` asks only for `https://www.googleapis.com/auth/gmail.send`). Read unmet scopes with `POST /v1/tools/requirements`, request exactly those with `POST /v1/tools/authorize`, and poll `GET /v1/auth/status`. Provider tokens stay with Arcade and never reach the model. ## Resources - [Pre-built integrations](https://docs.arcade.dev/en/resources/integrations): GitHub, Slack, Gmail, Google Sheets, Jira, Notion, Salesforce, and more - [API reference](https://docs.arcade.dev/en/references/api) - [Sample applications](https://docs.arcade.dev/en/resources/examples) - [About Arcade](https://www.arcade.dev/about/): Who we are, who uses Arcade, and how we operate. - [Contact](https://www.arcade.dev/contact/) and support@arcade.dev for anything a page cannot answer. - [Status](https://status.arcade.dev): live platform availability. ## MCP servers - Site MCP server (read-only, no credentials): POST JSON-RPC to `https://www.arcade.dev/mcp` (alias `https://www.arcade.dev/api/mcp`) over the Streamable HTTP transport; a GET of `/mcp` is the human page. Tools: `search_integrations`, `get_integration`, `get_agent_guide`, `get_page_markdown`. Server card: https://www.arcade.dev/.well-known/mcp - Product MCP gateways (your tools, your users): `https://api.arcade.dev/mcp/`, also Streamable HTTP, authenticated with Arcade Auth, your own OIDC provider, or API key headers. Docs: https://docs.arcade.dev/en/operate/governance/mcp-gateways - Build and run your own MCP server: https://github.com/ArcadeAI/arcade-mcp (`pip install arcade-mcp`) ## Machine-readable files on this site - [/llms.txt](https://www.arcade.dev/llms.txt): This file. - [/llms-full.txt](https://www.arcade.dev/llms-full.txt): Full markdown text of the public pages. - [/openapi.json](https://www.arcade.dev/openapi.json): OpenAPI 3.0 description of the Arcade API. - [/.well-known/api-catalog](https://www.arcade.dev/.well-known/api-catalog): RFC 9727 API catalog (`application/linkset+json`). - [/.well-known/mcp](https://www.arcade.dev/.well-known/mcp): MCP server card describing Arcade's MCP surface (gateway URL template, transport, auth modes, open-source package). - [/.well-known/ai-catalog.json](https://www.arcade.dev/.well-known/ai-catalog.json): AI catalog listing every agent-facing surface on this domain. - [/sitemap-index.xml](https://www.arcade.dev/sitemap-index.xml): Every indexable URL. - [/robots.txt](https://www.arcade.dev/robots.txt): Crawl policy — AI crawlers are allowed. - [/404.md](https://www.arcade.dev/404.md): Markdown recovery page. Unknown paths return a real HTTP 404 (never a 200 app shell) and link to this file; retired paths return 301. - Every response carries `Link` headers advertising these files (`rel="service-doc"`, `rel="describedby"`, `rel="service-desc"`, `rel="api-catalog"`).