mcpField
U
Uniquity Mcp Server

Uniquity Mcp Server

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

关于 Uniquity Mcp Server

这是一个 Node.js MCP 服务,通过标准接口向 MCP Host 和 AI Agent 提供 UniquityReporter 分析功能。它可分析 GitHub 仓库相似度,并将 Markdown 报告输出到标准输出。

主要功能

  1. 01GitHub 仓库相似度分析
  2. 02输出 Markdown 报告
  3. 03列出工具及其规格
  4. 04配置模型与日志

适用场景

  1. 01分析 GitHub 仓库
  2. 02获取可用工具的规格
  3. 03调整分析模型或日志设置

MCP 相关

通过 MCP 工具提供 UniquityReporter 分析功能,包括仓库分析和工具列表查询。它通过标准输入和输出与 Host 通信。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"Uniquity": {
"command": "npx",
"args": [
"-y",
"uniquity-mcp"
],
"env": {
"GITHUB_TOKEN": "<GITHUB_TOKEN>",
"OPENAI_API_KEY": "<OPENAI_API_KEY>",
"TAVILY_API_KEY": "<TAVILY_API_KEY>"
}
}
}
}
启动命令npx -y uniquity-mcp
需要配置的环境变量
GITHUB_TOKEN密钥
OPENAI_API_KEY密钥
TAVILY_API_KEY密钥

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmuniquity-mcp

工具

1

收录的工具列表 · 更新于 3 周前

参数类型必填说明
repositoryUrlstring是要分析的 Git 仓库 URL。
openaiModelstring否可选:要使用的 OpenAI 模型(例如 gpt-4o-mini)。
logEnabledenum否可选:启用或禁用详细日志记录。'on' 表示启用,'off' 表示禁用。on | off

详细介绍

Uniquity MCP 服务

smithery badge

概述

Uniquity MCP 服务可通过 MCP(Model Context Protocol)向外部工具和 AI Agent 提供 UniquityReporter 的功能。

UniquityReporter:UniquityReporter

  • 支持 MCP Host 或 AI Agent 调用 UniquityReporter 的分析功能。
  • 将核心逻辑与接口分离,以提高可维护性和可扩展性。
  • 通过标准化协议,支持从各种客户端使用。

发布说明

  • 0.1.0
    • 初始版本

MCP Host 设置

必需和可选的环境变量
  • 必需(必须由 MCP Host 传入)
    • GITHUB_TOKEN:GitHub API 令牌
    • OPENAI_API_KEY:OpenAI API 密钥
    • TAVILY_API_KEY:Tavily API 密钥
  • 可选(未指定时,将使用 config/config.js 中的默认值)
    • openaiModel:要使用的 OpenAI 模型名称(例如,o3-mini、gpt-4.1-nano 等)
    • logEnabled:启用/禁用日志输出(on/off)
MCP Host 配置示例
{
  "uniquity-mcp": {
    "command": "npx",
    "args": [
      "-y",
      "uniquity-mcp@latest"
    ],
    "env": {
      "GITHUB_TOKEN": "{apikey}",
      "OPENAI_API_KEY": "{apikey}",
      "TAVILY_API_KEY": "{apikey}"
    }
  }
}
  • 必须在 env 设置中提供密钥。
  • 此 MCP 不支持保存报告和日志文件。
  • 如果需要保存文件,请在 Host 端将标准输出保存到文件。

提供的工具列表(MCP 服务)

1. analyze_repository
  • 说明:为指定的 GitHub 仓库生成相似度分析报告。报告始终以 Markdown 格式返回到标准输出。
  • 返回值:Markdown 格式的报告正文(标准输出)
参数类型必需说明
repositoryUrlstring是要分析的 GitHub 仓库 URL
openaiModelstring否要使用的 OpenAI 模型名称(例如,o3-mini、gpt-4.1-nano 等)
logEnabledstring否启用/禁用日志输出(on/off,默认值:off)
2. list_tools
  • 说明:返回 MCP 服务提供的工具列表及其规格(参数和返回值)。
  • 返回值:MCP 服务中可用工具的数组(每个工具均包含名称、说明、parameterSchema 和 returnSchema)
参数类型必需说明
无

这样,MCP Host 和客户端便能清楚了解“有哪些可用工具”以及“如何调用它们”。

注意事项
  • MCP 服务仅支持标准输出。
  • openaiModel 和 logEnabled 可以作为工具参数动态指定。
  • 可省略可选值;省略时将使用 UniquityReporter 的默认值。
依赖包(uniquity-reporter)的版本管理
  • package.json 中 uniquity-reporter 的依赖版本指定为 ^1.4.4。

    • 这允许自动跟进次要版本和补丁版本更新,但不会自动跟进主要版本更新(例如 2.x)。
    • 如果希望“始终使用最新版本”,请更新并发布 MCP 服务自身的版本,并建议用户使用 npx uniquity-mcp@latest。
  • 关于 npx 缓存行为的说明

    • npx 会缓存已获取的软件包及其依赖。
    • 如果希望始终使用最新版本的软件包及其依赖,请像 MCP Host 配置示例中那样明确指定 "uniquity-mcp@latest",并建议用户为确保安全而清除缓存(例如 npx clear-npx-cache)。
  • 如果依赖包有规格变更或重大更新,请及时升级 MCP 服务版本,并在发布说明或 README 中公告。

架构概览

  • 此仓库仅管理 MCP 服务的实现,核心逻辑依赖 uniquity-reporter npm 包。
  • 接收来自 MCP Host 的请求,调用 UniquityReporter CLI,并返回结果。
  • 使用基于标准输入/输出(stdin/stdout)的进程间通信。
  • 报告始终输出到标准输出,不会保存到文件。

架构图

graph LR
    subgraph MCP Host
        Client[Client Application]
    end

    subgraph MCP Server
        Server[Uniquity MCP Server]
        Server -->|Command Execution| UniquityReporter[UniquityReporter CLI]
    end

    subgraph External Services
        GitHub[GitHub API]
        OpenAI[OpenAI API]
        Tavily[Tavily API]
    end

    Client -- MCP Protocol --> Server
    Server -- JSON Response --> Client
    UniquityReporter -- Repository Analysis --> GitHub
    UniquityReporter -- Code Analysis --> OpenAI
    UniquityReporter -- Web Search --> Tavily

技术栈

  • 运行时:Node.js 18+
  • 主要软件包:
    • @modelcontextprotocol/sdk:MCP 协议实现
    • uniquity-reporter:核心分析引擎
    • winston:日志记录
    • dotenv:环境变量管理
  • 开发工具:
    • TypeScript
    • ESLint
    • Prettier
    • Jest(测试)
项目结构
uniquity-mcp/
├── uniquity-mcp/           # Main Project
│   ├── src/
│   │   └── index.js       # Entry Point
│   └── package.json
├── .github/              # GitHub Actions Configuration
└── README.md             # This File

开发指南

安装
通过 Smithery 安装

如需通过 Smithery 自动为 Claude Desktop 安装 uniquity-mcp:

npx -y @smithery/cli install @KunihiroS/uniquity-mcp --client claude
安装依赖项
# Install dependency packages
pnpm install

# Install including development dependencies
pnpm install --dev
构建
pnpm run build
在开发模式下启动
pnpm run dev
使用方法
启动 MCP 服务
# After building
node dist/index.js

# Or run directly
pnpm start
启动开发服务器
# Start in development mode (with hot reload)
pnpm run dev

# Build and then run
pnpm run build
pnpm start

许可证

MIT 许可证

作者

KunihiroS

评论

支持 Markdown

第一次接触 MCP?

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

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