项目简介

'mcp-server-diff-python' 是一个基于 Model Context Protocol (MCP) 的服务器,专注于提供文本差异比较服务。它利用 Python 的 'difflib' 库,能够高效地生成并返回两个文本字符串的 Unified diff 格式差异结果。

主要功能点

  • 文本差异比较: 提供 'get-unified-diff' 工具,可以比较两个文本字符串,并以 Unified diff 格式返回差异。这个工具对于需要分析文本变更、版本控制或内容对比的场景非常有用。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/tatn/mcp-server-diff-python.git
    cd mcp-server-diff-python
  2. 安装依赖并构建:
    uv sync
    uv build

服务器配置

要将此 MCP 服务器与 MCP 客户端(例如 Claude Desktop)一起使用,您需要在客户端的配置文件中添加服务器配置。以下是 Claude Desktop 的配置示例,您需要根据您的操作系统找到相应的配置文件('claude_desktop_config.json')。

配置示例 (JSON):

"mcpServers": {
  "mcp-server-diff-python": {
    "server name": "mcp-server-diff-python",
    "command": "uvx",
    "args": [
      "mcp-server-diff-python"
    ]
  }
}

或者,如果您选择使用 'uv run' 命令启动服务器,可以使用以下配置:

"mcpServers": {
  "mcp-server-diff-python": {
    "server name": "mcp-server-diff-python",
    "command": "uv",
    "args": [
      "--directory",
      "path\\to\\mcp-server-diff-python",
      "run",
      "mcp-server-diff-python"
    ]
  }
}

配置参数说明:

  • 'server name': 'mcp-server-diff-python' (服务器的名称,客户端使用此名称来标识和调用该服务器)
  • 'command': 'uvx' 或 'uv' (用于启动服务器进程的命令。'uvx' 适用于已构建的可执行文件,'uv' 结合 'run' 参数适用于直接运行项目代码。根据您的环境和偏好选择其中一种配置)
  • 'args': 启动命令的参数列表。
    • 对于 'uvx': '["mcp-server-diff-python"]' (直接运行名为 'mcp-server-diff-python' 的可执行文件,假定该文件在您的 PATH 环境变量中或者在当前工作目录下)
    • 对于 'uv run': '["--directory", "path\to\mcp-server-diff-python", "run", "mcp-server-diff-python"]' (指定项目目录 'path\to\mcp-server-diff-python',并使用 'uv run' 命令在该目录下运行 'mcp-server-diff-python' 脚本。请将 '"path\to\mcp-server-diff-python"' 替换为您的 'mcp-server-diff-python' 仓库在您本地文件系统中的实际路径)

基本使用方法

配置完成后,您的 MCP 客户端(如 Claude Desktop)应该能够识别并连接到 'mcp-server-diff-python' 服务器。客户端可以通过 MCP 协议调用服务器提供的 'get-unified-diff' 工具,并传入 'string_a' 和 'string_b' 两个文本字符串作为参数。服务器将处理请求,比较这两个字符串,并以 Unified diff 格式返回文本差异结果。您可以在客户端界面中查看或进一步处理这些差异信息。

例如,在支持 MCP 协议的 LLM 应用中,您可以指示 LLM 调用 'get-unified-diff' 工具来比较两个文档的版本,从而帮助 LLM 理解文档的变化。

信息

分类

开发者工具