项目简介
Arcade AI 是一个全面的开发平台,旨在简化 AI Agent 工具的创建、部署和管理。它包含核心库、工具开发套件(TDK)、服务器基础设施、评估框架和命令行界面。其 'arcade-serve' 组件作为核心 MCP 服务器实现,能够以统一的接口向大语言模型 (LLM) 客户端提供上下文、工具调用和提示模板。
主要功能点
- AI Agent 工具调用: LLM 客户端可以调用服务器上注册的各种外部功能,极大地扩展其处理复杂任务的能力。
- 模块化工具集成: 允许开发者轻松集成和托管自定义工具包,以满足不同应用场景的需求。
- 标准化通信协议: 通过 JSON-RPC 协议与客户端通信,确保数据交换的规范性和互操作性。
- 多传输协议支持: 支持 Stdio、SSE、WebSocket 等多种传输协议,提供灵活的部署和通信选项。
- 多语言客户端生态: 提供 Python、JavaScript、Go 等多种语言的客户端库,方便不同技术栈进行快速集成开发。
安装步骤
Arcade AI 平台由多个模块组成。作为 MCP 服务器,您主要需要安装 'arcade-serve' 和您希望托管的工具包。
-
推荐的 Python 版本: 确保您的环境中有 Python 3.9 或更高版本。
-
安装核心服务及工具开发套件: 要安装 'arcade-serve' 和 'arcade-tdk'(工具开发套件),您可以使用 pip:
pip install arcade-serve arcade-tdk -
安装具体工具包: Arcade AI 提供了多种预构建的工具包,例如数学工具、Postgres 数据库工具、Zendesk 工具等。您可以根据需要选择安装:
# 安装数学工具包 pip install arcade-math # 安装 Postgres 数据库工具包 pip install arcade-postgres # 安装 Zendesk 工具包 pip install arcade-zendesk # 如果您想安装所有核心库和工具包(包括 CLI 和评估框架): pip install 'arcade-ai[all]'
服务器配置 (MCP客户端使用)
MCP 客户端需要配置 MCP 服务器的连接信息。以下是一个示例 JSON 配置,包含了服务器名称、描述、以及启动 MCP 服务器的 'command'(命令)和 'args'(参数列表)。MCP 客户端将使用这些信息来启动并连接到您的 MCP 服务器。请根据您的实际部署环境调整这些值。
{ "servers": [ { "name": "LocalArcadeMCP", "description": "本地运行的 Arcade MCP 服务器,提供各种 AI 工具。", "command": "python", "args": [ "-m", "arcade_cli.serve", "--mcp", "--host", "127.0.0.1", "--port", "8002", "--debug" ] } ] }
- 'command': 启动 MCP 服务器的命令,例如 'python'。
- 'args': 传递给 'command' 的参数列表。
- '-m arcade_cli.serve': 指定运行 'arcade_cli' 包中的 'serve' 模块。
- '--mcp': 激活 MCP Stdio 服务器模式。
- '--host 127.0.0.1': 指定服务器监听的 IP 地址。
- '--port 8002': 指定服务器监听的端口。
- '--debug': 启用调试模式,提供更详细的日志输出。
基本使用方法
一旦安装了 'arcade-serve' 和所需的工具包,您可以通过以下两种主要方式启动 MCP 服务器:
-
使用 Arcade CLI (推荐): 如果您安装了 'arcade-cli',可以直接使用 CLI 命令启动一个默认托管所有已安装 Arcade 工具包的 MCP 服务器:
arcade serve --mcp --host 127.0.0.1 --port 8002 --debug这个命令会启动一个 MCP Stdio 服务器,自动发现并托管您 Python 环境中所有安装的 Arcade 工具包(例如 'arcade-math', 'arcade-postgres' 等)。
-
通过 Python 脚本手动启动: 创建一个 Python 脚本(例如 'my_mcp_server.py'),手动导入并注册您希望托管的工具包,然后启动 'StdioServer':
# my_mcp_server.py import arcade_math # 导入您想托管的工具包,例如 arcade-math # import arcade_postgres # 根据需要导入其他工具包 from arcade_core.catalog import ToolCatalog from arcade_serve.mcp.stdio import StdioServer import asyncio async def main(): catalog = ToolCatalog() catalog.add_module(arcade_math) # 注册数学工具包 # catalog.add_module(arcade_postgres) # 注册其他工具包 # 创建 MCP Stdio 服务器实例,并传入工具目录 server = StdioServer(catalog) print("Arcade MCP Stdio Server is running. Press Ctrl+C to stop.") await server.run() # 启动服务器 if __name__ == "__main__": asyncio.run(main())然后通过命令行运行此脚本:
python my_mcp_server.py
服务器启动后,您的 MCP 客户端即可根据上述“服务器配置”部分提供的信息连接到此服务器,并使用其托管的工具。
信息
分类
AI与计算