AA

arcadeai/arcade-mcp

开发工具官方

本页由 AI 翻译,技术细节请以原文为准。 查看原文

1061 stars 123 forks 质量 69 趋势 44MIT

MCP 服务器框架和工具开发库,用于将自定义功能集成到代理中。

概览

arcade-mcp 是用于构建模型上下文协议服务器及其内运行工具的 Python 框架。它支持 Arcade.dev 81 台 MCP 服务器上的 7,500+ 预建工具,并且开源,你可以自己构建。 当你需要尚未在预建目录中已有的MCP工具时,可以使用它:内部API、自定义OAuth提供者、域特定集成。 - Decorator API 涵盖完整的 MCP 规范:工具、资源、提示、采样、引发、进度、日志。- 授权工具调用。声明 requires_auth=GitHub(scopes=[“repo”]),Arcade 负责 OAuth、令牌刷新和每次调用范围的范围。客户端和 LLM 从未看到令牌。- 供应商中立。任何 MCP 客户端、任何大型语言模型、任何代理框架(LangChain、Mastra、Pydantic AI、CrewAI、Google ADK、OpenAI Agents)。- Arcade 评估,用于测试工具调用准确性与真实 LLM。- Arcade Deploy 用于 Arcade Cloud 上的单命令托管。 1.

概述(AI 翻译)

用于构建MCP服务器和工具的开源Python框架。

文档 • 示例 • Discord

什么是arcade-mcp

arcade-mcp 是用于构建模型上下文协议服务器及其内运行工具的 Python 框架。它支持了 81 台 MCP Arcade.dev 服务器上的 7,500+ 预建工具,并且是开源的,你可以自己构建。

当你需要尚未在预建目录中已有的MCP工具时,可以使用它:内部API、自定义OAuth提供者、域特定集成。

精彩片段:

  • Decorator API 涵盖完整的 MCP 规范:工具、资源、提示、采样、引发、进度、日志记录。
  • 授权工具调用。声明requires_auth=GitHub(scopes=["repo"]),Arcade负责OAuth、令牌刷新和每次调用的范围管理。客户端和LLM从未看到令牌。
  • 供应商中立。任何MCP客户端、任何大型语言模型、任何代理框架(LangChain、Mastra、Pydantic AI、CrewAI、Google ADK、OpenAI代理)。
  • arcade evals 用于测试工具调用准确性与真实大型语言模型。
  • arcade deploy 用于Arcade Cloud上的单命令托管。

授权工具呼叫

工具可以声明:

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

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 evals for testing tool-call accuracy against real LLMs.
  • arcade deploy for one-command hosting on Arcade Cloud.

Authorized tool calling

Tools can declare:

  1. Which OAuth scopes they need, and Arcade handles the rest: prompting the end user to authorize, storing and refreshing tokens, scoping them per call
  2. 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()
    ...
在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →