使用说明

项目简介

'mcp-server-diff-typescript' 是一个基于 Model Context Protocol (MCP) 的服务器,使用 TypeScript 开发,专注于提供文本差异对比功能。它通过实现 MCP 协议,使得 LLM 应用能够方便地调用服务器提供的 'get-unified-diff' 工具,获取两个文本字符串之间的 unified diff 格式的差异结果。这对于需要进行文本版本比较、代码差异分析或内容变更追踪的应用场景非常有用。

主要功能点

  • get-unified-diff 工具: 核心功能,用于生成两个文本字符串的 unified diff。
  • 精确差异检测: 使用 'diff' 包进行文本差异的精确计算。
  • 标准 Unified Diff 格式: 返回符合 unified diff 规范的结果,易于解析和理解。
  • 上下文支持: 生成的 diff 结果包含变更内容周围的 3 行上下文,方便用户理解变更的语境。

安装步骤

根据您的使用场景,选择以下安装方式:

1. 全局安装 (推荐 Claude Desktop 等客户端使用): 如果您希望将此 MCP 服务器作为一个独立的、全局可访问的工具,可以使用 npm 全局安装:

npm install -g mcp-server-diff-typescript

2. 项目依赖安装 (如果您希望在自己的项目中使用): 如果您想将此 MCP 服务器集成到您自己的项目中,可以作为项目依赖安装:

npm install mcp-server-diff-typescript

然后,您可以根据需要在您的项目代码中引入和使用。

服务器配置

要将 'mcp-server-diff-typescript' 服务器配置到 MCP 客户端(例如 Claude Desktop),您需要编辑客户端的配置文件。以 Claude Desktop 为例,配置文件通常是 'claude_desktop_config.json',其路径取决于您的操作系统:

  • MacOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
  • Windows: '%APPDATA%/Claude/claude_desktop_config.json'

在 'claude_desktop_config.json' 文件中,找到或创建 '"mcpServers"' 字段,并添加以下配置信息:

配置信息 (JSON 格式):

"mcpServers": {
  "mcp-server-diff-typescript": {
    "command": "npx", // 使用 npx 命令来运行全局安装的 mcp-server-diff-typescript
    "args": [
      "-y",
      "mcp-server-diff-typescript" // 运行 mcp-server-diff-typescript
    ]
  }
}

如果您选择从本地克隆仓库并构建,可以使用以下配置 (不推荐客户端使用): 首先,您需要手动克隆仓库、安装依赖并构建项目:

git clone https://github.com/MCP-Mirror/tatn_mcp-server-diff-typescript.git
cd tatn_mcp-server-diff-typescript
npm install
npm run build

然后,在 'claude_desktop_config.json' 中配置:

"mcpServers": {
  "mcp-server-diff-typescript": {
    "command": "node", // 使用 node 命令来运行服务器
    "args": [
      "/path/to/tatn_mcp-server-diff-typescript/build/index.js" //  指向构建后的服务器入口文件,请替换为您的实际路径
    ]
  }
}

注意: 请将 '/path/to/tatn_mcp-server-diff-typescript' 替换为您本地仓库的实际路径。 推荐使用 'npx' 方式进行配置,更加简洁方便。

基本使用方法

配置完成后,MCP 客户端(如 Claude Desktop)将能够检测到 'mcp-server-diff-typescript' 服务器。您可以通过客户端的功能(通常是工具调用或插件机制)来调用 'get-unified-diff' 工具。

调用 'get-unified-diff' 工具时,您需要提供两个参数:

  • 'oldString': 原始文本字符串。
  • 'newString': 新的文本字符串。

服务器将返回一个 JSON 响应,其中包含 unified diff 格式的文本结果。客户端可以解析和展示这个 diff 结果,帮助用户理解文本之间的差异。

例如,在 Claude Desktop 中,您可能会通过类似指令或提示语的方式,指示 Claude 调用 'get-unified-diff' 工具,并提供需要比较的两个文本内容。具体的调用方式取决于 MCP 客户端的功能设计。

信息

分类

开发者工具