@osanoai/multicli
v1.5.32
Published
MCP server for Multiple CLI coding agent integration (Claude + Gemini + Codex)
Maintainers
Readme
Multi-CLI MCP
An MCP server that lets Claude, Gemini, Codex, and OpenCode call each other as tools.
Claude: "Hey Gemini, what do you think about this code?"
Gemini: "It's mass. 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
curl -fsSL https://raw.githubusercontent.com/osanoai/multicli/main/install.sh | bashDetects which AI CLIs you have installed and configures Multi-CLI for all of them automatically. No config files, no API keys, no environment variables. If it's on your PATH, it works.
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 Gemini, Codex, or OpenCode for help
- Gemini can delegate to Claude, Codex, or OpenCode
- Codex can consult Claude, Gemini, or OpenCode
- OpenCode can call Claude, Gemini, 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, Gemini, Codex, and OpenCode wrote the code. Claude, Gemini, Codex, and OpenCode maintain it. Every night, a CI job queries the latest stable release of each CLI for its current model list, diffs the results against what's in the repo, and automatically publishes a new version if anything changed. New model releases get picked up within 24 hours. Deprecated models get cleaned out. The repo stays current without anyone touching it.
Because all install commands use @latest, your MCP client pulls the newest version every time it starts — no manual updates, no stale model lists, no maintenance.
Most MCP tools go stale within weeks. This one is self-maintaining by design.
Prerequisites
You need Node.js >= 20 and at least two of these CLIs installed:
| CLI | Install |
|-----|---------|
| Claude Code | npm install -g @anthropic-ai/claude-code |
| Gemini CLI | npm install -g @google/gemini-cli |
| Codex CLI | npm install -g @openai/codex |
| OpenCode | curl -fsSL https://opencode.ai/install | bash |
Why two? Because one AI talking to itself is a monologue, not a collaboration.
Manual Installation
Prefer to install per-client yourself? Each command is one line.
Claude Code
claude mcp add --scope user Multi-CLI -- npx -y @osanoai/multicli@latestAdd 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.
Gemini CLI
gemini mcp add --scope user Multi-CLI npx -y @osanoai/multicli@latest{
"mcpServers": {
"Multi-CLI": {
"command": "npx",
"args": ["-y", "@osanoai/multicli@latest"]
}
}
}Codex CLI
codex mcp add Multi-CLI -- npx -y @osanoai/multicli@latestcodex --mcp-config mcp.jsonWhere 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 uses standard stdio transport. If your client supports MCP, point it at:
npx -y @osanoai/multicli@latestAvailable Tools
Once connected, your AI client gains access to tools for the other CLIs (never its own):
| Tool | Description |
|------|-------------|
| List-Gemini-Models | List available Gemini models and their strengths |
| Ask-Gemini | Ask-Gemini a question or give it a task |
| Fetch-Chunk | Retrieve chunked responses from Gemini |
| Gemini-Help | Get Gemini CLI help info |
| 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 |
Usage Examples
Once installed, just talk naturally to your AI:
"Ask-Gemini 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 Gemini 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 clientTroubleshooting
"No usable AI CLIs detected" Make sure at least one other CLI is installed and on your PATH:
which gemini && which codex && which claude && which opencodeNo 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?
- Check that Node.js >= 20 is installed
- Run
npx @osanoai/multicli@latestdirectly to see if it starts - Restart your AI client completely
Development
git clone https://github.com/osanoai/multicli.git
cd multicli
npm install
npm run build
npm run dev