使用说明

项目简介

Coding Assistant Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在增强 Cline 编码助手的功能。它通过分析您的项目代码和文档,提供上下文感知的代码建议,减少代码幻觉,并自动检索项目技术栈的官方文档,从而提升编码体验。

主要功能点

  • 智能代码建议: 基于项目代码上下文和文档知识库,提供更精准的代码补全和建议。
  • 项目文档集成: 自动加载并向量化 'docs' 目录下的文档,或从指定的URL加载文档,构建项目知识库。
  • 技术栈自动检测: 自动识别项目使用的编程语言、框架和库,无需手动配置。
  • 官方文档检索: 根据检测到的技术栈,自动查找并添加官方文档链接到知识库中。
  • 项目路径自动化: 从 'project_path.txt' 文件读取项目路径,简化 Cline 的集成配置。
  • 多文档源支持: 支持从多个文档文件和链接导入知识库,提升知识库的覆盖面。

安装步骤

  1. 克隆仓库

    git clone https://github.com/AviOfLagos/MCP-coding-assistant
  2. 进入项目目录

    cd MCP-coding-assistant
  3. 安装依赖

    npm install
  4. 配置环境变量

    • 在项目根目录下创建 '.env' 文件。
    • 添加 OpenAI API 密钥:
      OPENAI_API_KEY=YOUR_OPENAI_API_KEY

      ⚠️ 注意: 请替换 'YOUR_OPENAI_API_KEY' 为您自己的 OpenAI API 密钥。

  5. 构建项目

    npm run build

服务器配置

要将 Coding Assistant Server 集成到 MCP 客户端(例如 Cline),您需要配置 MCP 服务器的启动信息。以下是 Cline 客户端的 'cline_mcp_settings.json' 配置文件示例,您需要根据实际情况进行调整:

{
  "mcpServers": {
    "coding-assistant": {
      "command": "node",
      "args": ["/path/to/MCP-coding-assistant/build/index.js"],
      "env": {
        "OPENAI_API_KEY": "YOUR_OPENAI_API_KEY" //  请替换为您的 OpenAI API 密钥,或者确保在运行 Cline 的环境中已设置该环境变量
      }
    }
  }
}

⚠️ 注意:

  • 请将 '/path/to/MCP-coding-assistant' 替换为 Coding Assistant Server 仓库在您本地的实际路径
  • 'YOUR_OPENAI_API_KEY' 应该与您在 '.env' 文件中设置的密钥保持一致,或者确保您的 Cline 客户端运行环境中已经设置了 'OPENAI_API_KEY' 环境变量。
  • 'command' 指定了启动服务器的命令 ('node')。
  • 'args' 是传递给 'node' 命令的参数,指向编译后的服务器入口文件 'build/index.js'。
  • 'env' 定义了服务器运行时需要的环境变量,这里设置了 'OPENAI_API_KEY'。

基本使用方法

  1. 启动服务器

    在 Coding Assistant Server 项目目录下,运行以下命令启动 MCP 服务器:

    node build/index.js

    服务器成功启动后,会在控制台输出 'Coding Assistant MCP server running on stdio' 信息。

  2. 配置 Cline 客户端

    按照 服务器配置 章节的说明,配置 Cline 客户端的 'cline_mcp_settings.json' 文件,确保 Cline 能够连接到 Coding Assistant Server。

  3. 设置项目路径

    在 Coding Assistant Server 项目目录下,创建或更新 'project_path.txt' 文件,写入您 当前 Cline 编辑器的项目根目录的绝对路径。例如:

    /path/to/your/project
  4. 在 Cline 中使用

    重启 Cline 或重新加载 MCP 设置,Cline 即可连接到 Coding Assistant Server。您可以在 Cline 中使用 'get_suggestions' 工具获取代码建议,或使用 'add_documentation' 工具添加项目文档。

    示例:使用 'get_suggestions' 工具

    在 Cline 中,您可以调用 'coding-assistant/get_suggestions' 工具,并提供代码上下文,例如:

    {
      "tool_call": {
        "server_name": "coding-assistant",
        "tool_name": "get_suggestions",
        "arguments": {
          "codeContext": {
            "code": "function helloWorld() { ",
            "language": "JavaScript"
          }
        }
      }
    }

    Coding Assistant Server 将会返回基于项目文档和代码上下文的代码建议。

信息

分类

开发者工具