Uniquity Mcp Server

by KunihiroS

288 downloads
Not rated
GitHub

About

Uniquity MCP Server is a server that makes the functions of UniquityReporter available to external tools and AI agents via MCP (Model Context Protocol).

Details

Author
KunihiroS
Downloads
288
Categories
Other

- Generates similarity analysis reports for GitHub repositories.
- Returns reports in Markdown format via standard output.
- Supports dynamic selection of OpenAI models and log output.
- Provides a list_tools endpoint for discovering available tools.
- Relies on UniquityReporter as its core analysis engine.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Uniquity Mcp Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Configure the MCP host with the required environment variables (GITHUB_TOKEN, OPENAI_API_KEY, TAVILY_API_KEY) and run via npx -y uniquity-mcp@latest. Use the provided tools (analyze_repository, list_tools) to generate similarity analysis reports for GitHub repositories in Markdown format.

analyze_repository

Analyzes a Git repository and generates a report using Uniquity Reporter. The analysis is performed with repo=off mode, meaning no local repository copy is created or persisted.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "uniquity mcp server": {
            "uniquity-mcp": {
                "command": "npx",
                "args": [
                    "-y",
                    "uniquity-mcp@latest"
                ],
                "env": {
                    "GITHUB_TOKEN": "{apikey}",
                    "OPENAI_API_KEY": "{apikey}",
                    "TAVILY_API_KEY": "{apikey}"
                }
            }
        }
    }
}

McpServers

{
    "uniquity-mcp": {
        "command": "npx",
        "args": [
            "-y",
            "uniquity-mcp@latest"
        ],
        "env": {
            "GITHUB_TOKEN": "{apikey}",
            "OPENAI_API_KEY": "{apikey}",
            "TAVILY_API_KEY": "{apikey}"
        }
    }
}

Uniquity MCP Server

Overview

Uniquity MCP Server is a server that makes the functions of UniquityReporter available to external tools and AI agents via MCP (Model Context Protocol).

> UniquityReporter: UniquityReporter

- Enables the analysis functions of UniquityReporter to be called from MCP Host or AI agents.
- Separates core logic and interface to improve maintainability and extensibility.
- Makes it available from various clients through a standardized protocol.

Release Note

- 0.1.0
- Initial version

MCP Host Settings

Required and Optional Environment Variables

- Required (Must be passed from MCP Host) - GITHUB_TOKEN: Token for GitHub API - OPENAI_API_KEY: OpenAI API key - TAVILY_API_KEY: Tavily API key - Optional (If not specified, the default values in config/config.js will be used) - openaiModel: Name of the OpenAI model to use (e.g., o3-mini, gpt-4.1-nano, etc.) - logEnabled: Enable/disable log output (on/off)

Example MCP Host Configuration

{
  "uniquity-mcp": {
    "command": "npx",
    "args": [
      "-y",
      "uniquity-mcp@latest"
    ],
    "env": {
      "GITHUB_TOKEN": "{apikey}",
      "OPENAI_API_KEY": "{apikey}",
      "TAVILY_API_KEY": "{apikey}"
    }
  }
}
- Secrets in env settings are required. - This MCP does not support report and log file saving. - If file saving is required, save the standard output to a file on the Host side.

List of Provided Tools (MCP Server)

1. analyze_repository

- Description: Generates a similarity analysis report for the specified GitHub repository. The report is always returned in Markdown format to standard output. - Return Value: Report body in Markdown format (standard output)

| Argument | Type | Required | Description |
|-----------------|---------|----------|--------------------------------------------------|
| repositoryUrl | string | Yes | GitHub repository URL to analyze |
| openaiModel | string | No | Name of the OpenAI model to use (e.g., o3-mini, gpt-4.1-nano, etc.) |
| logEnabled | string | No | Enable/disable log output (on/off, default: off) |

2. list_tools

- Description: Returns a list of tools provided by the MCP Server and their specifications (arguments and return values). - Return Value: Array of tools available in the MCP Server (including name, description, parameterSchema, returnSchema for each tool)

| Argument | Type | Required | Description |
|----------|------|----------|-------------|
| None | | | |

---

This makes it clear to MCP Hosts and clients "what tools are available" and "how to call them."

Notes

- MCP Server supports standard output only. - openaiModel and logEnabled can be dynamically specified as tool arguments. - Optional values can be omitted, and if omitted, the default values of UniquityReporter will be used.

Version Management of Dependency Package (uniquity-reporter)

- The dependency of uniquity-reporter in package.json is specified as ^1.4.4.
- This allows minor and patch updates to be automatically followed, but major version updates (such as 2.x) will not be automatically followed.
- If you want to guarantee "always the latest," perform version updates and releases of the MCP Server itself, and recommend users to use npx uniquity-mcp@latest.

- Note on npx Cache Behavior
- npx caches the retrieved packages and dependencies.
- If you want to always use the latest version of the package and dependencies, explicitly specify "uniquity-mcp@latest" as in the MCP Host configuration example, and guide users to clear the cache (npx clear-npx-cache, etc.) for safety.

- If there are specification changes or significant updates to the dependency package, promptly version up the MCP Server and announce it in the release notes or README.

Architecture Overview

- This repository manages only the implementation of the MCP Server and depends on the uniquity-reporter npm package for core logic.
- Receives requests from MCP Host, calls UniquityReporter CLI, and returns the results.
- Uses standard input/output (stdin/stdout) based inter-process communication.
- Reports are always output to standard output and are not saved to files.

Architecture Diagram

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

Technology Stack

- Runtime: Node.js 18+
- Main Packages:
- @modelcontextprotocol/sdk: MCP protocol implementation
- uniquity-reporter: Core analysis engine
- winston: Logging
- dotenv: Environment variable management
- Development Tools:
- TypeScript
- ESLint
- Prettier
- Jest (Testing)

Project Structure

uniquity-mcp/
├── uniquity-mcp/           # Main Project
│   ├── src/
│   │   └── index.js       # Entry Point
│   └── package.json
├── .github/              # GitHub Actions Configuration
└── README.md             # This File

Development Guide

Installation

Installing Dependencies

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.