Claude-Code-Gemini-Fallback-Providers-Full-Setup-Guide-Windows-Linux-

Samad Profile
Samad
AI Agents Developer

Profile Views β€”

πŸš€ Claude Code + Gemini + Fallback Providers β€” Full Setup Guide

Works on: Windows (PowerShell) + Linux/macOS (bash/zsh)

Includes: Claude-Code, Claude-Code-Router (CCR), Gemini, OpenAI, Qwen, Grok, OpenRouter & MCP Server Guide


πŸ“Œ 1. Requirements

πŸš€ Claude Code + Gemini + Fallback Providers β€” Full Setup Guide

Works on: Windows (PowerShell) + Linux/macOS (bash/zsh)

Includes: Claude-Code, Claude-Code-Router (CCR), Gemini, OpenAI, Qwen, Grok, OpenRouter & MCP Server Guide


πŸ“Œ 1. Requirements

πŸš€ Claude Code + Gemini + Fallback Providers β€” Full Setup Guide

Works on: Windows (PowerShell) + Linux/macOS (bash/zsh)

Includes: Claude-Code, Claude-Code-Router (CCR), Gemini, OpenAI, Qwen, Grok, OpenRouter & MCP Server Guide


πŸ“Œ 1. Requirements


🟦 2. Windows Setup (PowerShell)

βœ… STEP 1 β€” Install tools

npm install -g @anthropic-ai/claude-code
npm install -g @musistudio/claude-code-router

βœ… STEP 2 β€” Create config folders

mkdir "$env:USERPROFILE\.claude-code-router"
mkdir "$env:USERPROFILE\.claude"

βœ… STEP 3 β€” Create config.json

notepad "$env:USERPROFILE\.claude-code-router\config.json"

Paste the following minimal Gemini config:

{
  "LOG": true,
  "LOG_LEVEL": "info",
  "HOST": "127.0.0.1",
  "PORT": 3456,
  "API_TIMEOUT_MS": 600000,
  "Providers": [
    {
      "name": "gemini",
      "api_base_url": "https://generativelanguage.googleapis.com/v1beta/models/",
      "api_key": "$GOOGLE_API_KEY",
      "models": ["gemini-2.5-flash", "gemini-2.0-flash"],
      "transformer": { "use": ["gemini"] }
    }
  ],
  "Router": {
    "default": "gemini,gemini-2.5-flash",
    "background": "gemini,gemini-2.5-flash",
    "think": "gemini,gemini-2.5-flash",
    "longContext": "gemini,gemini-2.5-flash",
    "longContextThreshold": 60000
  }
}

Save & close.

βœ… STEP 4 β€” Add your Google API Key

[System.Environment]::SetEnvironmentVariable('GOOGLE_API_KEY', 'YOUR_KEY_HERE', 'User')

Restart PowerShell β†’ verify:

echo $env:GOOGLE_API_KEY

🟧 3. Linux / macOS Setup

Install tools

npm install -g @anthropic-ai/claude-code @musistudio/claude-code-router

Create folders

mkdir -p ~/.claude-code-router ~/.claude

Create config.json

cat > ~/.claude-code-router/config.json << 'EOF'
{
  "LOG": true,
  "LOG_LEVEL": "info",
  "HOST": "127.0.0.1",
  "PORT": 3456,
  "API_TIMEOUT_MS": 600000,
  "Providers": [
    {
      "name": "gemini",
      "api_base_url": "https://generativelanguage.googleapis.com/v1beta/models/",
      "api_key": "$GOOGLE_API_KEY",
      "models": ["gemini-2.5-flash", "gemini-2.0-flash"],
      "transformer": { "use": ["gemini"] }
    }
  ],
  "Router": {
    "default": "gemini,gemini-2.5-flash",
    "background": "gemini,gemini-2.5-flash",
    "think": "gemini,gemini-2.5-flash",
    "longContext": "gemini,gemini-2.5-flash",
    "longContextThreshold": 60000
  }
}
EOF

Add API Key

zsh:

echo 'export GOOGLE_API_KEY="YOUR_KEY_HERE"' >> ~/.zshrc
source ~/.zshrc

bash:

echo 'export GOOGLE_API_KEY="YOUR_KEY_HERE"' >> ~/.bashrc
source ~/.bashrc

🌐 4. Multi-Provider Fallback Setup (Optional)

Replace your config with this to enable Gemini + OpenAI + Qwen + Grok + OpenRouter:

{
  "LOG": true,
  "LOG_LEVEL": "info",
  "HOST": "127.0.0.1",
  "PORT": 3456,
  "API_TIMEOUT_MS": 600000,

  "Providers": [
    {
      "name": "gemini",
      "api_base_url": "https://generativelanguage.googleapis.com/v1beta/models/",
      "api_key": "$GOOGLE_API_KEY",
      "models": ["gemini-2.5-flash","gemini-2.0-flash"],
      "transformer": { "use": ["gemini"] }
    },
    {
      "name": "openai",
      "api_base_url": "https://api.openai.com/v1",
      "api_key": "$OPENAI_API_KEY",
      "models": ["gpt-5", "gpt-4o-mini"],
      "transformer": { "use": ["openai"] }
    },
    {
      "name": "qwen",
      "api_base_url": "https://api.qwen.ai",
      "api_key": "$QWEN_API_KEY",
      "models": ["qwen-2.5", "qwen-3-coder"],
      "transformer": { "use": ["qwen"] }
    },
    {
      "name": "grok",
      "api_base_url": "https://api.x.ai",
      "api_key": "$XAI_API_KEY",
      "models": ["grok-4.1-fast", "grok-3"],
      "transformer": { "use": ["grok"] }
    },
    {
      "name": "openrouter",
      "api_base_url": "https://openrouter.ai/api/v1/chat/completions",
      "api_key": "$OPENROUTER_API_KEY",
      "models": ["google/gemini-2.5-pro-preview","anthropic/claude-3.5-sonnet"],
      "transformer": { "use": ["openrouter"] }
    }
  ],

  "Router": {
    "default": "gemini,gemini-2.5-flash",
    "background": "openai,gpt-4o-mini",
    "think": "openai,gpt-5",
    "fallback": [
      "openai,gpt-4o-mini",
      "openrouter,google/gemini-2.5-pro-preview",
      "grok,grok-4.1-fast"
    ],
    "longContext": "grok,grok-4.1-fast",
    "longContextThreshold": 60000
  }
}

Add extra keys (Windows)

[System.Environment]::SetEnvironmentVariable('OPENAI_API_KEY','sk-xxxx','User')
[System.Environment]::SetEnvironmentVariable('QWEN_API_KEY','qwen-xxxx','User')
[System.Environment]::SetEnvironmentVariable('XAI_API_KEY','xai-xxxx','User')
[System.Environment]::SetEnvironmentVariable('OPENROUTER_API_KEY','or-xxxx','User')

▢️ 5. Daily Usage

Terminal 1 β€” Start router

ccr start

or Linux:

ccr start

Wait for:

βœ” Service started successfully

Terminal 2 β€” Use Claude

ccr code

or:

eval "$(ccr activate)"
claude

Test:

hi

🧩 6. MCP Server Setup (Optional)

Install MCP SDK

python -m venv .venv
source .venv/bin/activate
pip install modelcontextprotocol

Example MCP server (mcp_server.py)

from modelcontextprotocol import FastMCP

mcp = FastMCP()

@mcp.tool()
async def list_files(path: str = "."):
    import os
    return "
".join(os.listdir(path))

if __name__ == "__main__":
    mcp.run(transport="stdio")

Run:

python mcp_server.py

πŸ” 7. Security Checklist


πŸŽ‰ Setup Complete!

You now have:

Profile Views