Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Multi CLI

БесплатноНе проверен

An MCP server that bridges multiple AI clients (Claude, Gemini, Codex, OpenCode) so they can call each other as tools.

GitHubEmbed

Описание

An MCP server that bridges multiple AI clients (Claude, Gemini, Codex, OpenCode) so they can call each other as tools.

README

npm version Tests Scan GitHub release Node TypeScript

An MCP server that lets Claude, Antigravity, Codex, and OpenCode call each other as tools.

Claude:      "Hey Antigravity, what do you think about this code?"
Antigravity: "It's messy. Let me ask Codex for a second opinion."
Codex:       "You're both wrong. Here's the fix."
OpenCode:    "I checked with three providers. They all agree with Codex."

One-Line Install (macOS / Linux)

curl -fsSL https://raw.githubusercontent.com/osanoai/multicli/main/install.sh | bash

Detects which AI CLIs you have installed and configures Multi-CLI for them automatically.

  • Claude Code is configured to use a per-user local HTTP service on 127.0.0.1
  • Antigravity CLI, Codex CLI, and OpenCode keep using local config by default
  • The installer may update client config files on your behalf

What It Does

Multi-CLI sits between your AI clients and bridges them via the Model Context Protocol. Install it once, and whichever AI you're talking to gains the ability to call the others.

  • Claude can ask Antigravity, Codex, or OpenCode for help
  • Antigravity can delegate to Claude, Codex, or OpenCode
  • Codex can consult Claude, Antigravity, or OpenCode
  • OpenCode can call Claude, Antigravity, or Codex (across 75+ providers)
  • Each client's own tools are hidden (no talking to yourself, that's weird)
  • Auto-detects which CLIs you have installed — only shows what's available

The Meta Part

This tool was built by the very AIs it connects.

Claude, Codex, Gemini, and OpenCode wrote the code. Claude, Codex, Gemini, and OpenCode maintain it. Every night, a CI job queries the latest stable release of the static-catalog CLIs for current model lists, diffs the results against what's in the repo, and automatically publishes a new version if anything changed. Antigravity models are discovered live through agy models because that command depends on local sign-in and account access.

The stdio install paths use @latest, so those clients pick up new releases automatically. Claude Code's managed HTTP service intentionally runs from a stable installed runtime instead of a transient npx cache; rerun the installer or multicli service refresh --configure-claude after upgrading.

Most MCP tools go stale within weeks. This one is self-maintaining by design.


Prerequisites

You need Node.js >= 20 and at least one of these CLIs installed:

CLI Install
Claude Code npm install -g @anthropic-ai/claude-code
Antigravity CLI Install Antigravity so agy is on your PATH
Codex CLI npm install -g @openai/codex
OpenCode `curl -fsSL https://opencode.ai/install

Multi-CLI is most useful with two or more CLIs installed. With only one, the install still works, but there may be nothing to bridge yet.


Manual Installation

Prefer to install per-client yourself? Each command is one line.

Claude Code

Recommended for Claude Code stability:

npm install -g @osanoai/multicli
multicli service install --configure-claude

This installs a per-user background service that listens only on 127.0.0.1, configures Claude Code to use Multi-CLI over HTTP, and keeps the underlying server alive even if Claude drops a stdio subprocess.

The managed service installs as a per-user login/background service:

  • macOS: launchd LaunchAgent
  • Ubuntu/Debian: systemd --user
  • Windows: Scheduled Task at user logon

Security model:

  • Listens only on 127.0.0.1
  • Uses Authorization: Bearer <token> for every HTTP MCP request
  • Stores generated service artifacts in a user-owned service directory

Operational notes:

  • multicli service install refuses transient npx runtimes; use a global install or a stable local checkout
  • Generated service state includes an env file you can edit if your local AI CLIs require additional credentials or PATH entries
  • On Linux, the default systemd --user service follows your login session; enable linger yourself only if you intentionally want it to stay up after logout

Legacy stdio installation is still available:

claude mcp add --scope user Multi-CLI -- npx -y @osanoai/multicli@latest
Claude Desktop (JSON config)

Add to ~/Library/Application Support/Claude/claude_desktop_config.json on macOS:

{
  "mcpServers": {
    "Multi-CLI": {
      "command": "npx",
      "args": ["-y", "@osanoai/multicli@latest"]
    }
  }
}

Restart Claude Desktop completely after saving.


Antigravity CLI

mkdir -p ~/.gemini/config
node -e 'const fs=require("fs"),p=process.env.HOME+"/.gemini/config/mcp_config.json";let c={};if(fs.existsSync(p)){c=JSON.parse(fs.readFileSync(p,"utf8")||"{}")}c.mcpServers={...(c.mcpServers||{}),"Multi-CLI":{command:"npx",args:["-y","@osanoai/multicli@latest"]}};fs.writeFileSync(p,JSON.stringify(c,null,2)+"\n")'
Manual config (~/.gemini/config/mcp_config.json)
{
  "mcpServers": {
    "Multi-CLI": {
      "command": "npx",
      "args": ["-y", "@osanoai/multicli@latest"]
    }
  }
}

Codex CLI

codex mcp add Multi-CLI -- npx -y @osanoai/multicli@latest
Manual config (~/.codex/config.toml) or pass --mcp-config
codex --mcp-config mcp.json

Where mcp.json contains:

{
  "mcpServers": {
    "Multi-CLI": {
      "command": "npx",
      "args": ["-y", "@osanoai/multicli@latest"]
    }
  }
}

OpenCode

OpenCode's mcp add command is interactive, so add Multi-CLI to ~/.config/opencode/opencode.json directly:

{
  "mcp": {
    "Multi-CLI": {
      "type": "local",
      "command": ["npx", "-y", "@osanoai/multicli@latest"]
    }
  }
}

If the file already exists, merge the "Multi-CLI" entry into the existing "mcp" object.


Any Other MCP Client

Multi-CLI supports both stdio and Streamable HTTP.

For stdio-capable clients, point them at:

npx -y @osanoai/multicli@latest

For a managed local HTTP service, install Multi-CLI globally and run:

multicli service install

The service listens on 127.0.0.1 only and exposes /mcp plus /health.


Available Tools

Once connected, your AI client gains access to tools for the other CLIs (never its own):

Tool Description
List-Antigravity-Models List available Antigravity models from agy models
Ask-Antigravity Ask Antigravity a question or give it a task
Fetch-Antigravity-Chunk Retrieve chunked responses from Antigravity changeMode
Antigravity-Help Get Antigravity CLI help info
List-Gemini-Models Deprecated alias for List-Antigravity-Models
Ask-Gemini Deprecated alias for Ask-Antigravity; executes through agy
Fetch-Chunk Deprecated alias for Fetch-Antigravity-Chunk
Gemini-Help Deprecated alias for Antigravity-Help
List-Codex-Models List available Codex models
Ask-Codex Ask-Codex a question or give it a task
Codex-Help Get Codex CLI help info
List-Claude-Models List available Claude models
Ask-Claude Ask-Claude a question or give it a task
Claude-Help Get Claude Code CLI help info
List-OpenCode-Models List available OpenCode models from all configured providers
Ask-OpenCode Ask-OpenCode a question or give it a task
OpenCode-Help Get OpenCode CLI help info

Task-Capable Ask Tools

The Ask-* tools still work as normal synchronous MCP tools, but they now also advertise optional task-based execution for MCP clients that support tasks.

  • Task-capable clients can run long Ask-* calls using MCP tasks to avoid long blocking tool requests
  • Older clients keep using the same Ask-* tools synchronously with no config changes
  • List-*, *-Help, and Fetch-Chunk remain normal synchronous tools

Usage Examples

Once installed, just talk naturally to your AI:

"Ask-Antigravity what it thinks about this architecture"
"Have Codex review this function for performance issues"
"Get Claude's opinion on this error message"
"Use OpenCode to get a second opinion from Llama"

Or get a second opinion on anything:

"I want three perspectives on how to refactor this module —
 ask Antigravity and Codex what they'd do differently"

How It Works

┌─────────────┐     MCP (stdio)      ┌──────────────┐     CLI calls    ┌─────────────┐
│  Your AI    │ ◄──────────────────► │  Multi-CLI   │ ───────────────► │ Other AIs   │
│  Client     │                      │   server     │                  │ (CLI tools) │
└─────────────┘                      └──────────────┘                  └─────────────┘

1. Your AI client connects to Multi-CLI via MCP
2. Multi-CLI detects which CLIs are installed on your system
3. It registers tools for the OTHER clients (hides tools for the calling client)
4. When a tool is called, Multi-CLI executes the corresponding CLI command
5. Results flow back through MCP to your AI client

For Claude Code, Multi-CLI can also run as a local background HTTP service:

┌─────────────┐     MCP (HTTP)       ┌──────────────┐     CLI calls    ┌─────────────┐
│ Claude Code │ ◄──────────────────► │  Multi-CLI   │ ───────────────► │ Other AIs   │
│   Client    │    127.0.0.1 only    │   service    │                  │ (CLI tools) │
└─────────────┘                      └──────────────┘                  └─────────────┘

Troubleshooting

"No usable AI CLIs detected" Make sure at least one other CLI is installed and on your PATH:

which agy && which codex && which claude && which opencode

No tools showing up? If only your own CLI is installed, Multi-CLI hides it (no self-calls). Install a different CLI to enable cross-model collaboration.

MCP server not responding?

  1. Check that Node.js >= 20 is installed
  2. Run npx -y @osanoai/multicli@latest directly to see if the stdio server starts
  3. Restart your AI client completely

Claude Code disconnecting after successful calls? Use the managed background service instead of the legacy stdio integration:

npm install -g @osanoai/multicli
multicli service install --configure-claude
multicli service doctor

Helpful service commands:

  • multicli service status
  • multicli service doctor
  • multicli service logs
  • multicli service refresh
  • multicli service uninstall

Need to tune timeouts or cleanup behavior? Multi-CLI supports these optional environment variables:

  • MULTICLI_TRANSPORT (stdio or http)
  • MULTICLI_ASK_TIMEOUT_MS
  • MULTICLI_HELP_TIMEOUT_MS
  • MULTICLI_CLI_DETECT_TIMEOUT_MS
  • MULTICLI_KILL_GRACE_MS
  • MULTICLI_HTTP_HOST (defaults to 127.0.0.1)
  • MULTICLI_HTTP_PORT (defaults to 37420)
  • MULTICLI_HTTP_PATH (defaults to /mcp)
  • MULTICLI_HTTP_AUTH_TOKEN (required for direct HTTP mode)
  • MULTICLI_HTTP_SESSION_IDLE_MS
  • MULTICLI_LOG_PATH (defaults to ~/.multicli/logs/multicli.log)
  • MULTICLI_LOG_LEVEL (error, info, or debug; defaults to debug for the file log)
  • MULTICLI_STDERR_LOG_LEVEL (silent, error, info, or debug; defaults to error)
  • MULTICLI_SERVICE_ROOT_DIR
  • MULTICLI_SERVICE_LOG_PATH
  • MULTICLI_SERVICE_ENV_PATH
  • MULTICLI_SERVICE_MANIFEST_PATH

The server writes structured JSON-line logs to a single file destination, rotates them automatically for long-running service mode, and includes full prompt bodies for Ask-* requests so disconnects and crashes can be reconstructed after the fact.


Development

git clone https://github.com/osanoai/multicli.git
cd multicli
npm install
npm run build
npm run dev

from github.com/osanoai/multicli

Установить Multi CLI в Claude Desktop, Claude Code, Cursor

Рекомендуется · одна команда, все IDE
unyly install multi-cli-mcp

Ставит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.

Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh

Или настроить вручную

Выполни в терминале:

claude mcp add multi-cli-mcp -- npx -y @osanoai/multicli

FAQ

Multi CLI MCP бесплатный?

Да, Multi CLI MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Multi CLI?

Нет, Multi CLI работает без API-ключей и переменных окружения.

Multi CLI — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Multi CLI в Claude Desktop, Claude Code или Cursor?

Открой Multi CLI на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Multi CLI with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории ai