VLearnVibium

How to Set Up Vibium MCP in Gemini CLI

Set up Vibium MCP in Gemini CLI so Google's terminal AI can drive a real browser — navigate, click, type, and screenshot — with one command or a JSON config.

By Pramod Dutta··4 min read·Verified with Vibium 26.2
▶ Animated overview · made with Remotion

You can connect Vibium's built-in MCP server to Gemini CLI with a single command, giving Google's terminal AI a real browser. Vibium is an AI-native browser automation engine built on WebDriver BiDi and shipped as one Go binary that auto-downloads Chrome for Testing — created by Jason Huggins, co-creator of Selenium and Appium. Because the MCP server lives inside Vibium, setup is just gemini mcp add vibium npx -y vibium mcp. After a restart, Gemini CLI can navigate pages, click, type, and screenshot the web as part of its normal tool use. Gemini CLI's free tier needs only a Google account — no credit card — so the whole stack costs nothing to try. This guide covers the one-line install, the manual JSON alternative, verification, and troubleshooting.

What do you need before you start?

You need three things, all free:

  • Gemini CLI installed (installation guide).
  • A Google account for Gemini's free tier (about 60 requests/min, 1,000/day).
  • Node.js 18+, which provides the npx command Vibium is launched with.

You do not need to install Chrome separately — Vibium downloads Chrome for Testing automatically the first time it launches a browser.

How do you add Vibium to Gemini CLI?

The fastest path is the built-in gemini mcp add command. It registers Vibium's MCP server under the name vibium:

gemini mcp add vibium npx -y vibium mcp

That single line is all most setups need. The npx -y vibium mcp part is the standard Vibium MCP server command — the same invocation used in Claude Code and Cursor; only the registration wrapper changes between clients.

Can you configure it with JSON instead?

Yes. Gemini CLI reads MCP servers from a settings.json file, so you can skip the CLI and edit config directly. Use ~/.gemini/settings.json for a global setup, or .gemini/settings.json inside a project to scope it to one repo:

{
  "mcpServers": {
    "vibium": {
      "command": "npx",
      "args": ["-y", "vibium", "mcp"]
    }
  }
}

To change where screenshots land (default: ~/Pictures/Vibium/), add the flag to args:

{
  "mcpServers": {
    "vibium": {
      "command": "npx",
      "args": ["-y", "vibium", "mcp", "--screenshot-dir", "./screenshots"]
    }
  }
}

Passing "--screenshot-dir", "" (an empty string) disables file saving and returns screenshots as base64 inline only.

How do you verify and test the connection?

First, confirm Gemini CLI sees the server. List the configured MCP servers:

gemini mcp list

You should see vibium in the output. Tool discovery happens on startup, so if you added the server while Gemini was running, start a fresh session.

Then test it. Start Gemini CLI and ask:

Take a screenshot of https://example.com

Gemini will call Vibium's MCP tools in sequence — browser_launch, browser_navigate, browser_screenshot, and browser_quit — opening a real Chrome window, loading the page, capturing it, and closing the session. The first run may take a little longer while Chrome for Testing downloads.

What if it does not connect?

A "client is not connected" error usually means the server command did not start cleanly. Work through these checks:

  • Verify the server runs on its own. Execute npx -y vibium mcp directly. You should see it start and wait for input; press Ctrl+C to exit. If this fails, the problem is Vibium or Node, not Gemini.
  • Force a fresh Chrome install if the browser will not launch: npx -y vibium install.
  • Use absolute paths if you pointed at a local binary and a relative path is not resolving.
  • Enable verbose logs with gemini --debug to see exactly where the handshake breaks.

To remove the server later, run gemini mcp remove vibium or delete the vibium entry from settings.json.

Why give Gemini CLI a browser?

A terminal AI with browser access can do more than write code — it can check the result. It can open the page it just generated, read the live DOM, and confirm a flow works, all from the same chat. That feedback loop is the point of Vibium's BiDi-first, MCP-built-in design. Vibium is Jason Huggins' free, open-source project (vibium.com); learnvibium.com is an independent hub and did not create it.

Next steps

Frequently asked questions

How do I add Vibium MCP to Gemini CLI?

Run 'gemini mcp add vibium npx -y vibium mcp' in your terminal. This registers Vibium's built-in MCP server with Gemini CLI. Restart Gemini, then ask it to take a screenshot of a URL — it will launch a real browser and complete the task.

Where does Gemini CLI store MCP server config?

Gemini CLI reads MCP servers from settings.json — globally at ~/.gemini/settings.json, or per project at .gemini/settings.json in your repo. Each entry lists a command and args. You can add Vibium with the CLI or by editing this file directly.

Do I need a paid Google account for Gemini CLI plus Vibium?

No. Gemini CLI has a free tier (around 60 requests per minute and 1,000 per day) that needs only a Google account, no credit card. Vibium itself is free and open source, and downloads Chrome for Testing automatically on first use.

Vibium is created by Jason Huggins. This is an independent tutorial — see the official Vibium site and GitHub repo for canonical docs.

Related guides