arcade-mcp
Arcade.dev - Tool Calling platform for Agents
What it is and what it does
Arcade-mcp is a Python framework for building MCP (Model Context Protocol) servers—the standardized interface that lets LLM agents and clients call tools. It abstracts away the protocol complexity behind a decorator API, so you define tools as simple Python functions and the framework handles MCP serialization, transport (stdio or HTTP), and client negotiation.
The framework's main value is authorized tool calling: you declare which OAuth scopes or API keys a tool needs (e.g., `requires_auth=GitHub(scopes=["repo"])`), and Arcade handles the OAuth flow, token storage, refresh, and per-call injection—all without exposing secrets to the LLM or client. It ships with 22 pre-built OAuth helpers for common providers and a generic OAuth2 class for custom APIs. Beyond tools, it supports MCP resources, prompts, sampling, progress reporting, and logging. You can run servers standalone over stdio or HTTP, or deploy to Arcade Cloud for managed hosting and observability.
Use it for:
- Build an internal API tool that your LLM agent can call with OAuth-protected access to your company's systems.
- Scaffold a GitHub integration tool that lists or modifies repos on behalf of an authenticated user, with token lifecycle handled automatically.
- Create a multi-tool MCP server combining custom business logic with pre-built OAuth helpers (Slack, Notion, etc.) for a unified agent interface.
- Deploy a tool server to Arcade Cloud and expose it to multiple LLM clients (Claude, Cursor, VS Code) without managing infrastructure.
- Test tool-call accuracy against real LLMs using the `arcade evals` command before production deployment.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Framework for building Model Context Protocol (MCP) servers and tools in Python, with built-in support for OAuth-authorized tool calling and integration with LLM agents.
Yes. Active, production-stable framework with low install friction, permissive MIT license, and no known vulnerabilities. Install if you need to build MCP servers with OAuth-authorized tool calling for LLM agents. Skip if you only consume pre-built tools from Arcade.dev's catalog or don't need agent tool integration.
Install
arcade-mcp on PyPI
pip
pip install arcade-mcpuv
uv add arcade-mcppoetry
poetry add arcade-mcpInstalling arcade-mcp
Before you install
Low friction install via wheel distribution. Active maintenance with release 4 days old. Supports Python 3.10–3.13 and marked Production/Stable.
License in practice
MIT License permits commercial and private use, modification, and distribution with minimal restrictions—only requiring license and copyright notice retention.
Quickstart
# Install
pip install arcade-mcp
# Minimal server
from arcade_mcp_server import MCPApp
from typing import Annotated
app = MCPApp(name="my_server", version="1.0.0")
@app.tool
def greet(name: Annotated[str, "Name to greet"]) -> str:
"""Greet a person by name."""
return f"Hello, {name}!"
if __name__ == "__main__":
app.run(transport="stdio")
Requires Python 3.10 or later.
Verify before relying
- Whether the 22 pre-built OAuth helper classes (GitHub, Slack, etc.) cover the specific providers your integration needs.
- Performance characteristics and rate-limiting behavior when hosting multiple tools on Arcade Cloud.
- Whether Arcade Cloud deployment incurs hosting costs or usage fees beyond the open-source framework itself.
Package facts
| License | MIT License Copyright (c) 2025, Arcade AI Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 12 — arcade-core, arcade-mcp-server, arcadepy, authlib, click, jinja2, packaging, platformdirs, python-dateutil, rich, tqdm, typer |
| Maintenance | actively maintained — 4 days since the last release |
| First released | |
| Downloads | 96,376/month — #13,216 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: arcade_mcp-1.15.2-py3-none-any.whl
Tags
More Application Frameworks packages
FastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
textualTextual is a Python framework for building…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
mcpBuild and connect to Model Context Protocol…
permissive · top 1,000 on PyPI
WerkzeugWerkzeug is a WSGI utility library providing…
permissive · top 1,000 on PyPI
arcade-mcp-serverArcade MCP Server provides a FastAPI-like…
permissive · top 15,000 on PyPI
databricks-mcpProvides helpers and utilities to integrate MCP…
permissive · top 5,000 on PyPI
arcade-serveArcade Serve provides FastAPI and Model Context…
permissive · top 15,000 on PyPI
arcade-tdkArcade TDK provides decorators, authentication…
permissive · top 15,000 on PyPI
arcade-coreArcade Core provides foundational components…
permissive · top 15,000 on PyPI
uipath-mcpHosts local Model Context Protocol (MCP)…
unclear · top 15,000 on PyPI
mcp-usemcp-use provides a Python framework to connect…
permissive · top 15,000 on PyPI
pagerduty-mcpAn MCP (Model Context Protocol) server that…
unclear · top 15,000 on PyPI
ale-pyale-py provides a Python interface to the Atari…
copyleft · top 15,000 on PyPI