使用说明
项目简介
Sauropod 是一个本地AI代理平台,它被设计为本地AI代理的后端服务,并实现了 Model Context Protocol (MCP) 协议,能够作为 MCP 服务器运行。Sauropod 旨在简化本地AI应用的管理和扩展,支持通过工作流编排任务,并集成多种工具和模型。
主要功能点
- 资源管理 (Resources): 通过工作流 (Workflows) 和 任务 (Tasks) 的形式管理和编排 AI 资源,用户可以定义和管理复杂的自动化流程。
- 工具注册和执行 (Tools): 支持通过 MCP 协议集成外部工具,允许 LLM 客户端安全地调用和执行这些工具,扩展 AI 代理的功能。Sauropod 自身也内置了一些核心工具,例如 'fetch' (HTTP请求) 和 'notify' (发送通知)。
- Prompt 模板 (Prompts): 通过任务 (Tasks) 中的模板功能,支持用户自定义 Prompt,灵活控制 LLM 的交互模式。
- MCP 服务器: 实现了 MCP 协议,可以作为 MCP 服务器与支持 MCP 协议的客户端进行通信,提供上下文服务。
- 本地AI代理平台: 作为一个本地平台,Sauropod 允许用户在本地运行和管理 AI 代理,数据和处理过程都在本地完成,保障数据安全和隐私。
- 工作流引擎: 内置工作流引擎,支持用户创建和执行复杂的自动化工作流程,连接不同的任务和工具。
- 可扩展性: 通过 MCP 协议,Sauropod 可以轻松集成各种支持 MCP 的工具和服务,实现功能扩展。
安装步骤
- 环境依赖: 确保已安装 Clang, Node.js, Rust 和 Cargo, libssl, make, pkg-config 等依赖(具体版本要求请参考仓库 README)。
- 构建: 从源代码构建 Sauropod 服务器,在仓库根目录下执行 'make release' 命令。
- 运行: 构建成功后,在 'target/optimized-release/' 目录下可以找到 'sauropod-server' 可执行文件,直接运行即可启动服务器。
服务器配置
Sauropod 服务器的配置文件为 TOML 格式,默认位于 '~/.config/sauropod/config.toml'。MCP 客户端需要配置 MCP 服务器的连接信息,以下是一个配置示例,展示了如何配置连接到远程 MCP 服务器,以及如何配置 Sauropod 启动并管理一个子进程 MCP 服务器:
MCP 客户端配置示例 (JSON 格式):
{ "mcpServers": [ { "type": "remote", "name": "remote-mcp-server", "url": "http://localhost:1234" }, { "type": "subprocess", "name": "local-mcp-server", "command": ["docker", "run", "-it", "--rm", "markitdown-mcp:latest"] // command: 启动 MCP 服务器的命令,例如 Docker 命令,或者本地可执行文件的路径和参数 // args: 命令参数,以数组形式提供 } ] }
配置说明:
- 'mcpServers': 配置 MCP 服务器连接信息的数组。
- 'type': 连接类型,'remote' 表示连接到远程 MCP 服务器,'subprocess' 表示启动并管理子进程 MCP 服务器。
- 'name': MCP 服务器的名称,用于在客户端标识不同的 MCP 服务器连接。
- 'url': 当 'type' 为 'remote' 时,指定远程 MCP 服务器的 URL 地址。
- 'command': 当 'type' 为 'subprocess' 时,指定启动 MCP 服务器的命令,例如 Docker 命令或本地可执行文件路径。
- 'args': 当 'type' 为 'subprocess' 时,指定传递给启动命令的参数,以字符串数组形式提供。
基本使用方法
- 启动 Sauropod 服务器: 运行 'sauropod-server' 可执行文件启动 Sauropod 服务器。
- 配置 MCP 客户端: 在 MCP 客户端应用中,配置 'mcpServers' 连接信息,指定要连接的 Sauropod MCP 服务器(远程或子进程)。
- 使用 MCP 客户端: MCP 客户端可以通过 MCP 协议与 Sauropod 服务器通信,利用 Sauropod 提供的资源管理、工具执行和 Prompt 模板等功能,构建各种 AI 应用。
- 管理工作流和任务: 通过 Sauropod 提供的 Web UI 或 API 接口,可以创建、编辑、运行和管理工作流 (Workflows) 和 任务 (Tasks),编排复杂的 AI 自动化流程。
信息
分类
AI与计算