关于 mcp-nlp
mcp-nlp 是一个基于 FastMCP 的 MCP 服务,提供文本距离和相似度工具,适用于需要比较文本序列并查看可用指标的 MCP 客户端。
主要功能
- 01计算文本距离和相似度
- 02选择算法和指标
- 03列出支持的指标
- 04通过 streamable HTTP 或 SSE 运行
- 05可配置 API 密钥认证
适用场景
- 01比较源文本与参考文本
- 02为文本比较选择指标
- 03查看可用的距离指标
MCP 相关
该服务向 MCP 客户端提供文本比较和指标列表工具。它支持 streamable HTTP 和 SSE 传输,README 也介绍了 stdio 配置。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
mcp-nlp
MCP-NLP 是一款 FastMCP 应用,旨在通过 Model Context Protocol(MCP)提供 NLP(自然语言处理)功能。
- FastMCP Framework v2:一个现代化框架,可快速使用 Pythonic 方式构建 MCP 服务。
- Model Context Protocol (MCP):一种用于管理和控制 LLM 上下文的协议。
- NLP 模块
textdistance:用于计算文本距离指标的模块
前提条件
开始之前,请确保已安装以下内容:
安装
-
克隆此仓库:
git clone https://github.com/tivaliy/mcp-nlp.git cd mcp-nlp -
安装依赖(使用
uv):uv sync
配置
身份验证模式
MCP-NLP 服务支持两种身份验证模式:
-
无身份验证模式(默认):
- 无需 API 密钥即可访问服务
- 设置环境变量
API_KEY_ENABLED=False
-
API 密钥身份验证:
- 请求标头中必须包含有效的 API 密钥
- 设置环境变量
API_KEY_ENABLED=True和API_KEY=your-secret-key - 默认标头名称为
X-API-Key(可通过API_KEY_NAME自定义)
.env 文件示例:
# Authentication configuration
API_KEY_ENABLED=True
API_KEY=not-a-secret
# API_KEY_NAME=X-API-Key # Optional: customize header name
可用工具
MCP-NLP 服务目前提供以下 MCP 工具:
文本距离模块
使用各种算法计算文本序列之间的相似度/距离:
-
#textdistance_measure:- 用途:测量两个字符串序列之间的文本距离
- 参数:
source(必填):源文本字符串reference(必填):用于比较的参考文本字符串algorithm(可选):使用的算法(默认:levenshtein)metric(可选):使用的指标(默认:normalized_similarity)
- 返回值:表示计算所得距离/相似度的浮点数
-
#textdistance_list_metrics:- 用途:列出文本距离算法支持的所有指标
- 参数:无
- 返回值:可用指标列表:
distance、similarity、normalized_distance、normalized_similarity、maximum
-
支持的指标:
distance:原始距离分数similarity:原始相似度分数normalized_distance:归一化到 0-1 范围的距离normalized_similarity:归一化到 0-1 范围的相似度(默认)maximum:该算法可能取得的最大值
-
默认算法:
Levenshtein
使用方法
本地运行
在本地运行应用:
-
启动 FastMCP 应用:
mcp-nlp --transport streamable-http -
访问 MCP 服务端点
http://127.0.0.1:8000/mcp(使用streamable-http传输时)
使用 Docker 运行 MCP 服务
在 Docker 容器中运行 MCP 服务:
-
构建 Docker 镜像:
docker build -t mcp-nlp . -
运行 Docker 容器:
docker run --rm -e TRANSPORT=streamable-http -p 8000:8000 mcp-nlp -
访问 MCP 服务端点
http://127.0.0.1:8000/mcp(使用streamable-http传输时)
使用 Docker 容器运行时,请务必将 TRANSPORT 环境变量设为 streamable-http 或 sse。
VS Code 集成
在 VS Code 中使用 MCP-NLP 服务:
-
确保 MCP-NLP 服务正在运行
-
将服务配置添加到 VS Code 的
settings.json中(使用stdio传输):{ "servers": { "mcp-nlp": { "type": "stdio", "command": "${workspaceFolder}/.venv/bin/mcp-nlp", "env": { "API_KEY_ENABLED": "false" } } } } -
在 VS Code 中启用 MCP:
"chat.mcp.enabled": true, "github.copilot.advanced": { "mcp.enabled": true } -
现在即可通过 GitHub Copilot 在 VS Code 中直接使用 MCP-NLP 工具
MCP | Model Context Protocol | FastMCP | NLP
许可证
此项目采用 MIT License 授权。详情请参阅 LICENSE 文件。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。