Multichat MCP server

Enables parallel communication with multiple unichat-based servers, allowing users to query different language models simultaneously and compare their responses through organized message routing and storage.
Back to servers
Setup instructions
Provider
kurror
Release date
Mar 21, 2025
Language
TypeScript

This MCP (Model Context Protocol) server allows communication with multiple unichat-based MCP servers simultaneously. It acts as a middleman that queries different language models and combines their responses, providing more comprehensive results through its multichat tool.

Installation

Prerequisites:

  • Node.js and npm installed on your system

Steps:

  1. Navigate to the MCP servers directory:

    cd C:\Users\kurror\AppData\Roaming\Roo-Code\MCP
    
  2. Clone or create the multichat-mcp directory

  3. Place the server files in the multichat-mcp directory

  4. Install dependencies:

    npm install
    
  5. Build the TypeScript code:

    npm run build
    

Configuration

Add the multichat-mcp server to your cline_mcp_settings.json file (located at C:\Users\kurror\AppData\Roaming\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json):

{
  "mcpServers": {
    "multichat": {
      "command": "node",
      "args": [
        "C:\\Users\\kurror\\AppData\\Roaming\\Roo-Code\\MCP\\multichat-mcp\\build\\index.js"
      ],
      "env": {}
    }
  }
}

Using the Multichat Tool

Starting Servers

For proper operation, you need to start each server in a separate terminal window:

  1. Start unichat servers in individual terminal windows:

    cd C:\Users\kurror\AppData\Roaming\Roo-Code\MCP\unichat-ts-mcp-server
    $env:UNICHAT_MODEL="gpt-4o"  # Set your desired model
    $env:UNICHAT_API_KEY="your_api_key"  # Your actual API key
    node ./build/index.js
    
  2. Start the multichat server in a separate terminal:

    cd C:\Users\kurror\AppData\Roaming\Roo-Code\MCP\multichat-mcp
    node ./build/index.js
    

Sending Requests from Roo/Cline

To send messages to multiple unichat servers:

<use_mcp_tool>
<server_name>multichat</server_name>
<tool_name>multichat</tool_name>
<arguments>
{
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant."
    },
    {
      "role": "user",
      "content": "What is your opinion about async programming?"
    }
  ],
  "servers": ["Lacayo 1", "openrouter-chat"],
  "outputDir": "test_output"
}
</arguments>
</use_mcp_tool>

Parameters:

  • messages: Array of messages in standard unichat format (objects with role and content)
  • servers: Array of unichat server names to query
  • outputDir: Directory where responses will be saved

Sending Requests via Command Line

You can also send requests directly using PowerShell:

cd C:\Users\kurror\AppData\Roaming\Roo-Code\MCP\multichat-mcp
$request = @{
    jsonrpc = "2.0"
    id = 1
    method = "tools/call"
    params = @{
        name = "multichat"
        arguments = @{
            messages = @(
                @{role = "system"; content = "You are a helpful assistant."},
                @{role = "user"; content = "Hello, world!"}
            )
            servers = @("Lacayo 1", "openrouter-chat")
            outputDir = "my-test-output"
        }
    }
} | ConvertTo-Json -Depth 10

$request | Out-File -FilePath "request.json" -Encoding utf8
Get-Content "request.json" | node ./build/index.js

This creates a directory responses/my-test-output containing the responses from each server.

Reading Saved Responses

To read a saved response file:

<use_mcp_tool>
<server_name>multichat</server_name>
<tool_name>read_response</tool_name>
<arguments>
{
  "outputDir": "test_output",
  "server": "Lacayo 1"
}
</arguments>
</use_mcp_tool>

Parameters:

  • outputDir: Directory where responses are saved
  • server: Name of the server whose response you want to read

Troubleshooting

Common Issues

  • Timeouts: Ensure all unichat servers are running in separate terminals before sending the multichat request.
  • Invalid session directory: Check that the outputDir is correct and that previous multichat commands succeeded.
  • No response files: Verify file system permissions and check server logs for error messages.
  • Method not found: Ensure you're using the correct method names (tools/call, not tool/call).

Testing Individual Servers

Test unichat servers directly to ensure they're functioning:

<use_mcp_tool>
<server_name>Lacayo 1</server_name>
<tool_name>unichat</tool_name>
<arguments>
{
  "messages": [
    {
      "role": "user",
      "content": "Hello, are you working?"
    }
  ]
}
</arguments>
</use_mcp_tool>

Remember to rebuild the multichat-mcp server with npm run build after making any code changes.

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "multichat" '{"command":"node","args":["C:\\Users\\kurror\\AppData\\Roaming\\Roo-Code\\MCP\\multichat-mcp\\build\\index.js"],"env":[]}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "multichat": {
            "command": "node",
            "args": [
                "C:\\Users\\kurror\\AppData\\Roaming\\Roo-Code\\MCP\\multichat-mcp\\build\\index.js"
            ],
            "env": []
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "multichat": {
            "command": "node",
            "args": [
                "C:\\Users\\kurror\\AppData\\Roaming\\Roo-Code\\MCP\\multichat-mcp\\build\\index.js"
            ],
            "env": []
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later