项目简介

Auggie MCP 服务器旨在为LLM(大型语言模型)客户端提供一种标准化的方式来访问和操作代码仓库。它通过MCP协议将Auggie命令行工具的能力(如仓库问答、代码实现)暴露为可调用的工具,从而赋能LLM客户端进行更智能的代码交互。

主要功能点

  • 代码仓库问答 ('ask_question'): 允许LLM客户端向代码仓库提问,Auggie将利用其上下文引擎分析代码并提供答案。
  • 代码修改与实现 ('implement'): 允许LLM客户端发起代码修改请求,Auggie可以在仓库中实现这些变更。支持干运行模式、指定分支、提交信息等,确保安全和灵活的代码操作。

安装步骤

  1. 安装Python 3.10+ 和 Node.js 18+。 这是运行服务器及其可选包装器的基础环境。
  2. 全局安装Auggie CLI 并确保其在系统PATH中可访问。这是服务器依赖的外部工具。
  3. 克隆本GitHub仓库 到您的本地机器。
  4. 安装Python依赖: 在克隆的仓库根目录中,运行以下命令安装Python模块:
    pip install -r requirements.txt
    或者,推荐使用 'npx' 自动处理依赖(需要Node.js 18+):
    npx -y auggie-mcp --setup-only
    这条命令将自动在项目内创建Python虚拟环境并安装所有必需的Python依赖,无需手动操作。

服务器配置 (客户端集成)

MCP客户端(如Cursor或Claude Desktop)需要配置MCP服务器的启动命令和参数才能与之通信。以下是适用于大多数MCP客户端的JSON配置示例,请根据您的客户端类型和偏好进行调整:

方法一:直接通过Python启动服务器

在您的MCP客户端配置文件中(例如 '~/.cursor/mcp.json' 或 '~/Library/Application Support/Claude/claude_desktop_config.json'),添加以下配置:

{
  "mcpServers": {
    "auggie-mcp": {
      "command": "python3",
      "args": ["/绝对/路径/到/您的/auggie-mcp/auggie_mcp_server.py", "stdio"],
      "env": { "AUGMENT_API_TOKEN": "您的Auggie API令牌" }
    }
  }
}
  • 'mcpServers': 定义了客户端可用的MCP服务器列表。
  • 'auggie-mcp': 您为该MCP服务器指定的名称,可根据需要修改。
  • 'command': 启动MCP服务器的命令,这里是 'python3'。
  • 'args': 传递给 'command' 的参数列表。第一个参数是服务器脚本的绝对路径,第二个参数 'stdio' 指示服务器使用标准输入/输出流进行通信,这是MCP客户端的首选方式。
  • 'env': 一个包含环境变量的字典,例如 'AUGMENT_API_TOKEN' 用于Auggie的认证。请务必替换为您自己的有效令牌。

方法二:通过 'npx' 包装器启动服务器(推荐给用户)

如果您选择使用 'npx' 包装器来管理和启动服务器,配置会更简洁:

{
  "mcpServers": {
    "auggie-mcp": {
      "command": "npx",
      "args": ["-y", "auggie-mcp@latest"],
      "env": { "AUGMENT_API_TOKEN": "您的Auggie API令牌" }
    }
  }
}
  • 'command': 启动命令为 'npx'。
  • 'args': 参数 '-y auggie-mcp@latest' 会自动下载并运行最新版本的 'auggie-mcp' 包装器,它会处理Python环境和服务器启动。
  • 'env': 同样需要设置 'AUGMENT_API_TOKEN'。

基本使用方法

一旦MCP服务器在您的LLM客户端中配置并成功启动,您的LLM客户端将能够自动发现并调用 'ask_question' 和 'implement' 这两个工具。

  • 向LLM提问关于代码仓库的问题: 您可以直接在LLM客户端界面中描述您想了解的代码部分或功能,LLM将通过调用 'ask_question' 工具来获取信息并为您提供答案。
  • 指示LLM修改代码: 当您希望LLM修改代码时,可以通过提示或交互方式告知LLM您的需求,LLM将调用 'implement' 工具来执行代码变更。默认情况下,'implement' 工具以安全模式(干运行)运行,不会实际修改文件。如需允许写入,需要明确指示 'dry_run=false'。

在终端中直接测试(仅用于调试): 如果您想在没有MCP客户端的情况下快速测试服务器功能,可以在终端中手动运行:

  • 启动 'stdio' 模式服务器(用于MCP客户端连接):
    python3 auggie_mcp_server.py stdio
  • 启动 'HTTP' 模式服务器(用于手动调试,可选):
    python3 auggie_mcp_server.py
  • 通过 'npx' 快速启动服务器(自动安装依赖并启动):
    npx -y auggie-mcp

信息

分类

开发者工具