使用说明
项目简介
'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 客户端的功能设计。
信息
分类
开发者工具