mcpField
M
mcp-nlp

mcp-nlp

本地服务
github.com/tivaliy开发工具065 周前更新

关于 mcp-nlp

mcp-nlp 是一个基于 FastMCP 的 MCP 服务,提供文本距离和相似度工具,适用于需要比较文本序列并查看可用指标的 MCP 客户端。

主要功能

  1. 01计算文本距离和相似度
  2. 02选择算法和指标
  3. 03列出支持的指标
  4. 04通过 streamable HTTP 或 SSE 运行
  5. 05可配置 API 密钥认证

适用场景

  1. 01比较源文本与参考文本
  2. 02为文本比较选择指标
  3. 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:用于计算文本距离指标的模块

前提条件

开始之前,请确保已安装以下内容:

安装

  1. 克隆此仓库:

    git clone https://github.com/tivaliy/mcp-nlp.git
    cd mcp-nlp
    
  2. 安装依赖(使用 uv):

    uv sync
    

配置

身份验证模式

MCP-NLP 服务支持两种身份验证模式:

  1. 无身份验证模式(默认):

    • 无需 API 密钥即可访问服务
    • 设置环境变量 API_KEY_ENABLED=False
  2. 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

使用方法

本地运行

在本地运行应用:

  1. 启动 FastMCP 应用:

    mcp-nlp --transport streamable-http
    
  2. 访问 MCP 服务端点 http://127.0.0.1:8000/mcp(使用 streamable-http 传输时)

使用 Docker 运行 MCP 服务

在 Docker 容器中运行 MCP 服务:

  1. 构建 Docker 镜像:

    docker build -t mcp-nlp .
    
  2. 运行 Docker 容器:

    docker run --rm -e TRANSPORT=streamable-http -p 8000:8000 mcp-nlp
    
  3. 访问 MCP 服务端点 http://127.0.0.1:8000/mcp(使用 streamable-http 传输时)

使用 Docker 容器运行时,请务必将 TRANSPORT 环境变量设为 streamable-http 或 sse。

VS Code 集成

在 VS Code 中使用 MCP-NLP 服务:

  1. 确保 MCP-NLP 服务正在运行

  2. 将服务配置添加到 VS Code 的 settings.json 中(使用 stdio 传输):

    {
        "servers": {
            "mcp-nlp": {
                "type": "stdio",
                "command": "${workspaceFolder}/.venv/bin/mcp-nlp",
                "env": {
                     "API_KEY_ENABLED": "false"
                 }
             }
         }
     }
    
  3. 在 VS Code 中启用 MCP:

    "chat.mcp.enabled": true,
    "github.copilot.advanced": {
      "mcp.enabled": true
    }
    
  4. 现在即可通过 GitHub Copilot 在 VS Code 中直接使用 MCP-NLP 工具

MCP | Model Context Protocol | FastMCP | NLP

许可证

此项目采用 MIT License 授权。详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。