快速差异MCP服务器
  
一个高性能的模型上下文协议服务器,提供文本差异比较功能。该服务器使大型语言模型(LLMs)能够高效地比较两段文本,并以标准的统一差异格式接收它们之间的差异。
核心逻辑采用Rust语言实现,以达到最高速度,相较于标准的Python库,性能有了显著提升。服务器同时提供了高性能的Rust实现和Python原生接口 difflib 以供比较和灵活使用。
可用工具
diff_tool_rust_similar- 使用高性能的Rust实现来比较两个多行字符串(该similarCrate 的 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 CLI进行配置
在您的(内容/列表/设置等)中添加以下内容 ~/.gemini/settings.json 文件,替换 /path/to/fast-diff-mcp 加上你克隆仓库的绝对路径。
Using uv (from source)
{
"mcpServers": {
"diff": {
"command": "uv",
"args": ["run", "server.py"],
"options": {
"cwd": "/path/to/fast-diff-mcp"
}
}
}
}为Claude.app进行配置
在你的Claude设置中添加以下内容,替换(原有设置) /path/to/fast-diff-mcp 加上你克隆仓库的绝对路径。
Using uv (from source)
{
"mcpServers": {
"diff": {
"command": "uv",
"args": ["run", "server.py"],
"options": {
"cwd": "/path/to/fast-diff-mcp"
}
}
}
}为VS Code进行配置
将以下JSON代码块添加到您的用户设置(JSON)文件或 .vscode/mcp.json 在你的工作区中创建文件。记得替换 /path/to/fast-diff-mcp 使用正确的绝对路径。
请注意,该mcp使用时需要密钥mcp.json文件。
Using uv (from source)
{
"mcp": {
"servers": {
"diff": {
"command": "uv",
"args": ["run", "server.py"],
"options": {
"cwd": "/path/to/fast-diff-mcp"
}
}
}
}
}基准测试/标杆管理
这个仓库包含一个脚本,用于对Rust实现与Python实现的性能进行基准测试 difflib。
要运行基准测试,请在项目根目录下执行以下命令:
uv run benchmark.py使用 Docker 部署到 Google Cloud Run
此项目经过优化,可利用其内置的多阶段构建功能部署到无服务器平台,如Google Cloud Run Dockerfile。
最直接的部署方式是使用 gcloud CLI(命令行界面),它将在一个步骤中构建容器并将其部署。
先决条件:
- Google Cloud SDK(软件开发工具包) 已安装并验证(
gcloud auth login)。 - 一个已启用计费且已激活Cloud Run API的Google Cloud项目。
要部署,请运行以下命令:
# 1. Set your project, region, and service name
export PROJECT_ID="your-google-cloud-project-id"
export REGION="us-central1"
export SERVICE_NAME="fast-diff-mcp"
# 2. Configure gcloud to use your project
gcloud config set project $PROJECT_ID
# 3. Deploy from source
# gcloud will build the image and deploy it to Cloud Run
gcloud run deploy $SERVICE_NAME \
--allow-unauthenticated \
--region=$REGION \
--source .几分钟后, gcloud 将为您的服务提供一个公共URL。
贡献
欢迎提交拉取请求!我们鼓励大家贡献力量,共同改进这个服务器。无论您是想添加新功能、修复漏洞,还是改进文档,您的意见都非常重要。
许可证
Fast Diff MCP Server 根据 Apache License 2.0 授权。如需更多详情,请参阅 LICENSE 项目存储库中的文件。
