使用说明

项目简介

wrale_mcp-server-make 是一个 Model Context Protocol (MCP) 服务器,旨在为大型语言模型 (LLM) 提供执行 Makefile 命令的能力。通过此服务器,LLM 可以安全、可控地运行和解释项目构建过程,从而辅助软件开发任务。

主要功能点

  • Makefile 执行: 允许 LLM 通过调用 'make' 工具执行 Makefile 中定义的目标 (targets)。
  • 安全控制: 在安全、受控的环境下执行 'make' 命令,捕获输出并处理错误。
  • 上下文感知: 支持指定 Makefile 路径和工作目录,确保 LLM 在正确的项目上下文中执行构建任务。
  • 标准 MCP 协议: 遵循 Model Context Protocol 标准,易于与兼容的 LLM 客户端集成。
  • 工具注册: 注册名为 'make' 的工具,LLM 客户端可以通过此工具调用 Makefile 功能。

安装步骤

  1. 使用 uv (推荐):
    uv pip install mcp-server-make
  2. 使用 pip:
    pip install mcp-server-make

服务器配置

要将 'mcp-server-make' 服务器与 MCP 客户端(例如 Claude Desktop)集成,您需要在客户端的配置文件中添加服务器配置信息。以下是一个 Claude Desktop 客户端配置示例 ('claude_desktop_config.json'):

{
  "mcpServers": {
    "make": {
      "command": "uvx",
      "args": [
        "mcp-server-make",
        "--make-path", "/absolute/path/to/Makefile",  // 请替换为您的 Makefile 文件的绝对路径
        "--working-dir", "/absolute/path/to/working/dir" // 请替换为您的工作目录的绝对路径
      ]
    }
  }
}

配置参数说明:

  • '"make"': 服务器名称,可以自定义,用于在客户端中标识该服务器。
  • '"command": "uvx"': 运行服务器的命令。如果使用 'pip' 安装,可以替换为 'command: "python"',并相应调整 'args' 中的启动脚本路径。
  • '"args"': 传递给服务器启动命令的参数列表。
    • '"mcp-server-make"': 服务器启动脚本名称。
    • '"--make-path", "/absolute/path/to/Makefile"': 指定 Makefile 文件的路径。请务必替换为实际的 Makefile 绝对路径。
    • '"--working-dir", "/absolute/path/to/working/dir"': 指定服务器的工作目录。请务必替换为实际的工作目录绝对路径。 如果不指定,默认使用包含 Makefile 的目录。

基本使用方法

  1. 启动服务器: 根据客户端配置,客户端会自动启动 'mcp-server-make' 服务器。您也可以在终端中手动运行命令启动服务器:
    uvx mcp-server-make --make-path /path/to/Makefile --working-dir /path/to/working/dir
  2. 与 LLM 交互: 在配置好 MCP 服务器的 LLM 客户端中,您可以指示 LLM 使用 'make' 工具执行 Makefile 目标。例如,您可以向 LLM 发送指令:“请运行 'make test' 命令”。
  3. LLM 调用工具: LLM 客户端会根据指令,调用 'mcp-server-make' 服务器提供的 'make' 工具,并传递目标名称作为参数。服务器执行 'make' 命令并将结果返回给 LLM 客户端。

可用工具

  • 'make': 运行 Makefile 目标。
    • 参数:
      • 'target' (string, 必需): 要执行的 Makefile 目标名称。

信息

分类

开发者工具