项目简介

Ask m' AI 是一个桌面聊天应用,本项目是其可作为独立组件运行的 Model Context Protocol (MCP) 工具服务器部分。它允许其他 MCP 客户端(例如支持 MCP 协议的 LLM 应用)通过标准 JSON-RPC 协议调用服务器托管的工具,从而赋能 LLM 访问系统功能和外部服务。

主要功能点

作为 MCP 服务器,ask-mai 提供了一系列工具供 LLM 调用。这些工具包括:

  • 系统工具: 获取系统信息(如操作系统、架构、CPU 数量、主机名)、环境变量、当前系统时间。
  • 文件操作工具: 执行文件系统操作,例如创建、读取(支持按行或按字符限制)、追加内容到现有文件、删除文件、创建和删除临时文件或目录。同时提供改变文件/目录权限(chmod)、所有者(chown)、访问/修改时间(chtimes)以及获取文件/目录状态(stat)的功能。
  • 命令执行工具: 在服务器运行的系统上执行任意指定的命令,并返回其标准输出和错误。
  • HTTP 调用工具: 执行 HTTP 请求(支持 GET, POST 等方法),允许 LLM 与外部网络服务交互。
  • 自定义工具: 用户可以配置自己的命令或 JavaScript 脚本作为工具,扩展 LLM 的能力范围。

服务器通过 JSON-RPC 协议通信,目前主要支持通过标准输入/输出 (stdio) 作为传输层。

安装步骤

您可以选择以下方法安装 Ask m' AI:

  • 从发布页下载: 访问项目的 GitHub 发布页,下载适合您操作系统和架构的最新预编译二进制文件。找到文件名类似于 'ask-mai-${OS}-${ARCH}-${FEATURE}.${EXTENSION}' 的文件下载。
  • 从源代码构建: 如果您已经安装了 Go 语言和 Wails 框架(Ask m' AI 桌面应用部分依赖 Wails),您可以克隆仓库并运行 'wails build' 命令来构建应用程序。
  • Arch Linux: Arch Linux 用户可以通过 AUR (Arch User Repository) 使用 yay 或其他 AUR 助手进行安装,命令为 'yay -S ask-mai'。

启动 MCP 服务器

要将 Ask m' AI 作为 MCP 服务器运行,您需要使用特定的启动参数:

  1. 使用命令参数: 运行下载或构建的 'ask-mai' 二进制文件,后跟参数 'ask-mai-mcp-server'。 例如(在 Linux 或 macOS 上,假设二进制文件名为 'ask-mai'):
    ./ask-mai ask-mai-mcp-server
    例如(在 Windows 上,假设二进制文件名为 'ask-mai.exe'):
    ask-mai.exe ask-mai-mcp-server
  2. 重命名二进制文件: 将 'ask-mai' 二进制文件重命名为 'ask-mai-mcp-server',然后直接运行即可。 例如:
    ./ask-mai-mcp-server

服务器启动后,将通过标准输入和标准输出通道与 MCP 客户端通信。

MCP 客户端配置说明

要连接到此 MCP 服务器并使用其工具,您的 MCP 客户端应用程序需要进行相应的配置。通常,MCP 客户端会配置一个 MCP 服务器连接,指定如何启动和通信。对于 Ask m' AI MCP 服务器,由于其默认通过标准输入/输出运行,客户端通常会配置一个 'command' 类型的连接。

以下是 MCP 客户端配置中用于连接 Ask m' AI MCP 服务器的关键信息(这是对客户端配置的描述,请根据您的具体客户端应用程序的用户界面或配置文件格式进行设置):

  • 服务器名称 (Server Name): 为此连接指定一个唯一的名称,供客户端应用内部识别(例如:'AskMaiTools')。
  • 传输类型 (Transport Type): 设置为 'command' 或 'stdio'(取决于客户端选项)。
  • 命令 (Command): 启动 Ask m' AI MCP 服务器的二进制文件路径。
  • 参数 (Arguments): 传递给命令的参数列表,必须包含用于启动服务器模式的参数,即 '"ask-mai-mcp-server"'。
  • 环境变量 (Environment) (可选): 一个键值对(字符串映射)列表,用于设置服务器进程的环境变量。
  • 超时设置 (Timeouts) (可选): 配置连接建立、工具列表获取和工具执行的超时时间。

例如,在某些 MCP 客户端中,配置界面或文件可能允许您设置类似如下的信息(请注意,这仅是概念性描述,并非实际需要输入的代码):

  • 服务器名称: '我的AskMai工具箱'
  • 命令路径: '/usr/local/bin/ask-mai' (或您实际安装的路径)
  • 命令参数: '["ask-mai-mcp-server"]'
  • 环境变量: 'ASK_MAI_LOG_LEVEL=info' (示例)
  • 连接超时: 10秒
  • 执行超时: 2分钟

完成客户端配置后,客户端应用通常会尝试连接到 Ask m' AI MCP 服务器,发现并列出可用的工具。

基本使用方法

启动 Ask m' AI MCP 服务器后,打开您配置好的 MCP 客户端应用程序。客户端会通过配置的连接方式与服务器建立连接。一旦连接成功,客户端将能够通过 MCP 标准请求(如 'list_tools' 获取工具列表,'call_tool' 调用具体工具)来利用 Ask m' AI 服务器提供的各项功能。您可以在客户端应用中通过与 LLM 交互,指示 LLM 调用这些工具来执行任务。

信息

分类

AI与计算