使用说明

项目简介

humanus.cpp 是一个基于 C++ 开发的轻量级框架,灵感来源于 OpenManus 和 mem0,并集成了模型上下文协议 (MCP)。它旨在为构建本地 LLM Agent 提供快速、模块化的基础,可以作为有效的 MCP 服务器实现。

主要功能点

  • MCP 协议支持: 原生支持模型上下文协议 (MCP),能够作为 MCP 服务器与客户端进行标准化工具交互。
  • 资源管理 (内存): 集成向量数据库 (HNSW) 用于上下文检索,有效管理和利用 LLM Agent 的记忆。
  • 工具注册与执行: 支持注册和执行多种工具 (如 python_execute, filesystem, playwright 等),允许 LLM 调用外部功能。
  • Prompt 模板: 支持自定义 Prompt 模板,优化 LLM 交互体验。
  • C++ 实现: 核心逻辑使用高效的 C++ 实现,优化速度和资源占用。
  • 轻量级设计: 依赖少,架构简洁,适合资源受限环境。
  • 跨平台兼容: 支持 Linux, macOS 和 Windows。

安装步骤

  1. 克隆仓库
    git clone https://github.com/WHU-MYTH-Lab/humanus.cpp
  2. 初始化子模块
    git submodule update --init
  3. 创建 build 目录
    cmake -B build
  4. 编译项目
    cmake --build build --config Release

服务器配置

humanus.cpp 提供了多种可执行程序,可以作为 MCP 服务器使用。以下是针对不同服务器的 MCP 客户端配置示例,以 JSON 格式描述:

1. 'humanus_server' (Agent 服务器)

'humanus_server' 运行 Agent 并通过 SSE 协议提供 MCP 服务。客户端需要配置服务器的 URL。

{
  "mcpServers": {
    "humanus": {
      "url": "http://localhost:8896/sse"
    }
  }
}

2. 'mcp_server' (工具服务器)

'mcp_server' 专注于提供工具服务,可以通过 stdio 或其他 MCP 支持的协议与客户端连接。以下是使用 stdio 的配置示例,客户端需要配置服务器的启动命令 'command' 和参数 'args'。

{
  "mcpServers": {
    "humanus_tools": {
      "command": "./build/bin/mcp_server",  // Unix/MacOS 示例,Windows 下为 ".\\build\\bin\\Release\\mcp_server.exe"
      "args": ["8895"]                     // 端口号
    }
  }
}

参数说明:

  • 'command': MCP 服务器的启动命令,需要根据操作系统和构建路径调整。
  • 'args': 传递给服务器的参数,例如端口号。

注意:

  • 实际的 'command' 和 'args' 需要根据您的操作系统、构建目录以及服务器的具体运行方式进行调整。
  • 上述配置示例假设 MCP 服务器和客户端运行在同一台机器上,如果不在同一机器,'url' 或 'command' 中需要使用服务器的 IP 地址或域名。

基本使用方法

  1. 启动服务器: 根据需要运行 'mcp_server' 或 'humanus_server' 等可执行程序。
  2. 配置 MCP 客户端: 在 MCP 客户端 (例如 Cursor 编辑器) 中,根据上述 “服务器配置” 部分的说明,配置连接到 'humanus_server' 或 'mcp_server' 的信息。
  3. 使用客户端: 在 MCP 客户端中,即可与 humanus.cpp 提供的 MCP 服务器进行交互,利用其提供的 Agent 和工具功能。

信息

分类

AI与计算