一个高性能的模型上下文协议服务器,提供文本差异比较功能。此服务器使大语言模型能够高效地比较两段文本,并以标准统一的差异格式接收结果。
核心逻辑使用 Rust 实现,以获得最大速度,相比标准 Python 库提供了显著的性能提升。该服务器同时暴露了高性能的 Rust 实现和 Python 的原生 difflib,以供比较和灵活性选择。
diff_tool_rust_similar - 使用高性能的 Rust 实现(similar 包的 Myers 差异算法)来比较两个多行字符串。这是推荐用于性能的工具。
original_text (字符串,必需):原始文本内容。modified_text (字符串,必需):修改后的文本内容。diff_tool_python_difflib - 使用标准 Python difflib 库(Ratcliff/Obershelp 算法)来比较两个多行字符串。适用于比较或需要 difflib 特定行为的情况。
original_text (字符串,必需):原始文本内容。modified_text (字符串,必需):修改后的文本内容。该项目是一个带有 Rust 扩展的 Python 包,因此需要编译步骤。推荐从仓库的本地克隆安装并运行它。
克隆仓库:
git clone https://github.com/kweinmeister/fast-diff-mcp.git
cd fast-diff-mcp
安装依赖项并编译扩展: 此命令设置虚拟环境并将包安装为可编辑模式。
uv pip install -e .
运行服务器: 在项目目录根部运行:
uv run server.py
要使用此服务器与 MCP 客户端一起工作,必须配置客户端以从您克隆的本地仓库运行服务器。以下命令假设您是从克隆的 fast-diff-mcp 目录根部运行它们的。
在您的 ~/.gemini/settings.json 文件中添加以下内容,将 /path/to/fast-diff-mcp 替换为您克隆仓库的实际绝对路径。
{
"mcpServers": {
"diff": {
"command": "uv",
"args": ["run", "server.py"],
"options": {
"cwd": "/path/to/fast-diff-mcp"
}
}
}
}
</details>
在您的 Claude 设置中添加以下内容,将 /path/to/fast-diff-mcp 替换为您克隆仓库的实际绝对路径。
{
"mcpServers": {
"diff": {
"command": "uv",
"args": ["run", "server.py"],
"options": {
"cwd": "/path/to/fast-diff-mcp"
}
}
}
}
</details>
在您的用户设置(JSON)文件或工作区中的 .vscode/mcp.json 文件中添加以下 JSON 块。记得将 /path/to/fast-diff-mcp 替换为正确的绝对路径。
<details> <summary>使用 uv(从源码)</summary>注意,当使用
mcp.json文件时,需要mcp键。
{
"mcp": {
"servers": {
"diff": {
"command": "uv",
"args": ["run", "server.py"],
"options": {
"cwd": "/path/to/fast-diff-mcp"
}
}
}
}
}
</details>
此仓库包括一个脚本,用于测试 Rust 实现相对于 Python 的 difflib 的性能。
要运行性能测试,请在项目根目录执行以下命令:
uv run benchmark.py
此项目优化了使用其包含的多阶段 Dockerfile 部署到无服务器平台如 Google Cloud Run。
最直接的部署方式是使用 gcloud CLI,这将在一步内构建容器并部署。
先决条件:
gcloud auth login)。要部署,请运行以下命令:
# 1. 设置您的项目、区域和服务名称
export PROJECT_ID="your-google-cloud-project-id"
export REGION="us-central1"
export SERVICE_NAME="fast-diff-mcp"
# 2. 配置 gcloud 使用您的项目
gcloud config set project $PROJECT_ID
# 3. 从源码部署
# gcloud 将构建镜像并将其部署到 Cloud Run
gcloud run deploy $SERVICE_NAME \
--allow-unauthenticated \
--region=$REGION \
--source .
几分钟后,gcloud 将为您提供服务的公共 URL。
欢迎提交拉取请求!我们鼓励贡献以帮助改进此服务器。无论您想添加新功能、修复错误还是改进文档,您的意见都是宝贵的。
Fast Diff MCP Server 根据 Apache 许可证 2.0 授权。更多详情,请参阅项目仓库中的 LICENSE 文件。