Unichat

by amidabuddha

31 stars
9.8k downloads
Not rated
GitHub

About

A unified interface for various chat AI models including OpenAI, MistralAI, Anthropic, and Google AI, requiring vendor API keys.

Details

Author
amidabuddha
Repository
amidabuddha/unichat-mcp-server
GitHub stars
31
Downloads
9,814
License
MIT License
Categories
Communication, AI, Other, Productivity, Developer Tools, Design, Workplace, File Management, Community, API, Infrastructure, Frontend

- Sends requests to OpenAI, Anthropic, and OpenAI‑compatible providers.
- Supports custom API endpoints via UNICHAT_BASE_URL.
- Includes one tool: unichat (requires messages argument).
- Provides four code‑oriented prompts: review, document, explain, rework.
- Works with any model supported by the Unichat library.
- Deployable via Smithery or as a published PyPI package.

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 Unichat
    Command (node, npx, python, etc.) uv
    Arguments
    • Argument 1 --directory
    • Argument 2 {{your source code local directory}}/unichat-mcp-server
    • Argument 3 run
    • Argument 4 unichat-mcp-server
    Environment
    • UNICHAT_MODEL SELECTED_UNICHAT_MODEL
    • UNICHAT_API_KEY YOUR_UNICHAT_API_KEY

    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

To install Unichat for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install unichat-mcp-server --client claude

A hosted deployment is available on Fronteir AI.

unichat

Send a request to unichat. Takes 'messages' as required string arguments and returns a response.

code_review

Review code for best practices, potential issues, and improvements. Arguments: code (string, required): The code to review.

document_code

Generate documentation for code including docstrings and comments. Arguments: code (string, required): The code to comment.

explain_code

Explain how a piece of code works in detail. Arguments: code (string, required): The code to explain.

code_rework

Apply requested changes to the provided code. Arguments: changes (string, optional): The changes to apply; code (string, required): The code to rework.

The server implements one tool:
- unichat: Send a request to unichat
- Takes "messages" as required string arguments
- Returns a response

Claude Desktop / Cursor

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

{
    "mcpServers": {
        "unichat": {
            "env": {
                "UNICHAT_MODEL": "SELECTED_UNICHAT_MODEL",
                "UNICHAT_API_KEY": "YOUR_UNICHAT_API_KEY"
            },
            "args": [
                "--directory",
                "{{your source code local directory}}/unichat-mcp-server",
                "run",
                "unichat-mcp-server"
            ],
            "command": "uv"
        }
    }
}

Linux

{
    "env": {
        "UNICHAT_MODEL": "SELECTED_UNICHAT_MODEL",
        "UNICHAT_API_KEY": "YOUR_UNICHAT_API_KEY"
    },
    "args": [
        "unichat-mcp-server"
    ],
    "command": "uvx"
}

Macos

{
    "env": {
        "UNICHAT_MODEL": "SELECTED_UNICHAT_MODEL",
        "UNICHAT_API_KEY": "YOUR_UNICHAT_API_KEY"
    },
    "args": [
        "--directory",
        "{{your source code local directory}}/unichat-mcp-server",
        "run",
        "unichat-mcp-server"
    ],
    "command": "uv"
}

Windows

{
    "env": {
        "UNICHAT_MODEL": "SELECTED_UNICHAT_MODEL",
        "UNICHAT_API_KEY": "YOUR_UNICHAT_API_KEY"
    },
    "args": [
        "unichat-mcp-server"
    ],
    "command": "uvx"
}

Unichat MCP Server in Python

Also available in TypeScript -- <h4 align="center"> <a href="https://mseep.ai/app/amidabuddha-unichat-mcp-server"> MseeP.ai Security Assessment Badge </a> </h4> <h4 align="center"> <a href="https://github.com/amidabuddha/unichat-mcp-server/blob/main/LICENSE.md"> Released under the MIT license. </a> <a href="https://archestra.ai/mcp-catalog/amidabuddha__unichat-mcp-server"> Trust Score </a> <a href="https://smithery.ai/server/unichat-mcp-server"> Smithery Server Installations </a> </h4> <h4 align="center"> <a href="https://mcphub.com/mcp-servers/amidabuddha/unichat-mcp-server"> Hosted at MCPHub </a> </h4>

Send requests to OpenAI, Anthropic, and OpenAI-compatible providers using MCP protocol via tool or predefined prompts. For OpenAI-compatible providers such as MistralAI, xAI, Google AI, DeepSeek, Alibaba, or Inception, set UNICHAT_BASE_URL to the provider's compatible API endpoint.
Vendor API key required

Tools

The server implements one tool:
- unichat: Send a request to unichat
- Takes "messages" as required string arguments
- Returns a response

Prompts

- code_review
- Review code for best practices, potential issues, and improvements
- Arguments:
- code (string, required): The code to review"
- document_code
- Generate documentation for code including docstrings and comments
- Arguments:
- code (string, required): The code to comment"
- explain_code
- Explain how a piece of code works in detail
- Arguments:
- code (string, required): The code to explain"
- code_rework
- Apply requested changes to the provided code
- Arguments:
- changes (string, optional): The changes to apply"
- code (string, required): The code to rework"

Quickstart

Install

Claude Desktop

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json

Supported Models:
> A list of currently supported models to be used as "SELECTED_UNICHAT_MODEL" may be found here. Please make sure to add the relevant vendor API key as "YOUR_UNICHAT_API_KEY"

Example:

"env": {
"UNICHAT_MODEL": "gpt-5.4-mini",
"UNICHAT_API_KEY": "YOUR_OPENAI_API_KEY"
}

For OpenAI-compatible providers with custom endpoints:

"env": {
"UNICHAT_MODEL": "PROVIDER_MODEL",
"UNICHAT_API_KEY": "YOUR_PROVIDER_API_KEY",
"UNICHAT_BASE_URL": "https://provider.example.com/v1"
}

When UNICHAT_BASE_URL is set, the server accepts the configured UNICHAT_MODEL without checking it against Unichat's built-in model list.

Development/Unpublished Servers Configuration

"mcpServers": {
"unichat-mcp-server": {
"command": "uv",
"args": [
"--directory",
"{{your source code local directory}}/unichat-mcp-server",
"run",
"unichat-mcp-server"
],
"env": {
"UNICHAT_MODEL": "SELECTED_UNICHAT_MODEL",
"UNICHAT_API_KEY": "YOUR_UNICHAT_API_KEY"
}
}
}

Published Servers Configuration

"mcpServers": {
"unichat-mcp-server": {
"command": "uvx",
"args": [
"unichat-mcp-server"
],
"env": {
"UNICHAT_MODEL": "SELECTED_UNICHAT_MODEL",
"UNICHAT_API_KEY": "YOUR_UNICHAT_API_KEY"
}
}
}

Installing via Smithery

To install Unichat for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install unichat-mcp-server --client claude

Development

Building and Publishing

To prepare the package for distribution:

1. Remove older builds:

rm -rf dist

2. Sync dependencies and update lockfile:

uv sync

3. Build package distributions:

uv build

This will create source and wheel distributions in the dist/ directory.

4. Publish to PyPI:

uv publish --token {{YOUR_PYPI_API_TOKEN}}

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging
experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

npx @modelcontextprotocol/inspector uv --directory {{your source code local directory}}/unichat-mcp-server run unichat-mcp-server

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

Hosted deployment

A hosted deployment is available on Fronteir AI.

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.