The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
Arcade MCP
MCP Server Framework and Tool Development library for building custom capabilities into agents.
Install
git clone https://github.com/ArcadeAI/arcade-mcpInstall command taken from the project's README or registry entry. Always review code before running it.
README excerpt
Read full README on GitHub →Arcade MCP
Open-source Python framework for building MCP servers and tools.
Documentation • Examples • Discord
What is arcade-mcp
arcade-mcp is the Python framework for building Model Context Protocol servers and the tools that run inside them. It powers the 7,500+ prebuilt tools across 81 MCP servers at Arcade.dev, and is open-sourced so you can build your own.
Use it when you need MCP tools that aren't already in the prebuilt catalog: internal APIs, custom OAuth providers, domain-specific integrations.
Highlights:
- Decorator API covering the full MCP spec: tools, resources, prompts, sampling, elicitation, progress, logging.
- Authorized tool calling. Declare
requires_auth=GitHub(scopes=["repo"])and Arcade handles OAuth, token refresh, and per-call scoping. The client and the LLM never see the token. - Vendor-neutral. Any MCP client, any LLM, any agent framework (LangChain, Mastra, Pydantic AI, CrewAI, Google ADK, OpenAI Agents).
arcade evalsfor testing tool-call accuracy against real LLMs.arcade deployfor one-command hosting on Arcade Cloud.
Authorized tool calling
Tools can declare:
- Which OAuth scopes they need, and Arcade handles the rest: prompting the end user to authorize, storing and refreshing tokens, scoping them per call
- API keys or any other secrets, and Arcade hosts the secrets securely in an encrypted environment.
The secrets (OAuth tokens, API keys, etc) are securely injected by Arcade into your tool call at runtime, so that your tool can authorize requests to upstream APIs, for example. The client and the LLM never see the secret values.
A tool that reads the user's GitHub repos is one decorator away:
from arcade_mcp_server import MCPApp, Context
from arcade_mcp_server.auth import GitHub
app = MCPApp(name="gh", version="1.0.0")
@app.tool(requires_auth=GitHub(scopes=["repo"]))
async def list_my_repos(context: Context) -> list[str]:
"""List the authenticated user's GitHub repositories."""
token = context.get_auth_token_or_empty()
...
When the tool is invoked through Arcade Cloud, the user is presented with a URL to complete the OAuth challenge in their browser. On success, the token is injected into context for that call. Subsequent calls reuse and refresh the token automatically.
23 helper classes ship with the framework for popular providers:
Asana, Atlassian, Attio, Calendly, ClickUp, Discord, Dropbox, Figma, GitHub, Google, Hubspot, Linear, LinkedIn, Microsoft, MicrosoftPowerBI, Notion, PagerDuty, Reddit, Slack, Spotify, Twitch, X, Zoom.
For any other OAuth API, use the generic OAuth2(...) class and register your OAuth app in the Arcade Dashboard.
Quick Start
Install the CLI
uv tool install arcade-mcp
Scaffold a new server
arcade new my_server
cd my_server/src/my_server
The scaffold creates pyproject.toml, .env.example, and a server.py with example tools.
A minimal tool:
from typing import Annotated
from arcade_mcp_server import MCPApp
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}!"
Similar plugs
Reverse engineer anything with agents, from app behavior down to native binaries.
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype…
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)