Gemini CLI
Connect Crow to Gemini CLI, Google's AI assistant for the terminal.
Prerequisites
- Node.js 18 or later
- Crow cloned and set up locally (for stdio) or a deployed gateway (for remote)
- Gemini CLI installed (
npm install -g @google/gemini-cli)
Option A: Local (stdio)
Best for development — runs Crow servers directly on your machine. No gateway or network required.
Setup Steps
Clone and set up Crow:
bashgit clone https://github.com/kh0pper/crow.git cd crow npm run setupEdit
~/.gemini/settings.jsonand add Crow servers undermcpServers:json{ "mcpServers": { "crow-memory": { "command": "node", "args": ["/path/to/crow/servers/memory/index.js"], "env": { "CROW_DB_PATH": "/path/to/crow/data/crow.db" } }, "crow-projects": { "command": "node", "args": ["/path/to/crow/servers/research/index.js"], "env": { "CROW_DB_PATH": "/path/to/crow/data/crow.db" } }, "crow-sharing": { "command": "node", "args": ["/path/to/crow/servers/sharing/index.js"], "env": { "CROW_DB_PATH": "/path/to/crow/data/crow.db" } }, "crow-blog": { "command": "node", "args": ["/path/to/crow/servers/blog/index.js"], "env": { "CROW_DB_PATH": "/path/to/crow/data/crow.db" } }, "crow-storage": { "command": "node", "args": ["/path/to/crow/servers/storage/index.js"], "env": { "CROW_DB_PATH": "/path/to/crow/data/crow.db", "MINIO_ENDPOINT": "localhost", "MINIO_PORT": "9000", "MINIO_ACCESS_KEY": "your-access-key", "MINIO_SECRET_KEY": "your-secret-key" } } } }Replace
/path/to/crowwith the absolute path where you cloned Crow. Omitcrow-storageif you are not running MinIO.Restart Gemini CLI — it will detect the MCP servers automatically.
Transport
- Type: stdio
- Auth: None (local process)
Combined server (lighter footprint)
If you prefer a single entry point rather than five separate servers, use the crow-core combined server. It starts with memory tools active and loads other servers on demand:
{
"mcpServers": {
"crow-core": {
"command": "node",
"args": ["/path/to/crow/servers/core/index.js"],
"env": {
"CROW_DB_PATH": "/path/to/crow/data/crow.db"
}
}
}
}Or generate the config automatically:
cd /path/to/crow
npm run mcp-config -- --combinedThen copy the crow-core entry from the generated .mcp.json into ~/.gemini/settings.json.
Option B: Gateway (HTTP)
Connect to a deployed Crow gateway for remote access — useful for Tailscale setups or cloud deployments.
Prerequisites
- Crow gateway deployed and reachable (Cloud Deploy Guide or Tailscale Setup)
Setup Steps
Edit
~/.gemini/settings.json:json{ "mcpServers": { "crow-memory": { "url": "https://your-crow-server/memory/mcp" }, "crow-projects": { "url": "https://your-crow-server/projects/mcp" }, "crow-tools": { "url": "https://your-crow-server/tools/mcp" } } }For a Tailscale-accessible gateway, use the Tailscale address instead:
json{ "mcpServers": { "crow": { "url": "http://100.x.x.x:3001/router/mcp" } } }Start Gemini CLI — it will auto-discover OAuth metadata and prompt for authorization on first use.
Transport
- Type: Streamable HTTP
- Protocol:
2025-03-26 - Auth: OAuth 2.1 (automatic discovery)
Verification
Start Gemini CLI and ask:
Store a memory that Gemini CLI is connected to Crow.Then verify it was saved:
Search my memories for "Gemini".Cross-Platform Context
Crow automatically delivers behavioral context when Gemini CLI connects via MCP — memory protocols, session management, and transparency rules are active from the first message.
For more detailed guidance, ask Gemini to use MCP prompts: session-start, crow-guide (accepts platform: "gemini" argument), project-guide, blog-guide, or sharing-guide.
Memories and projects stored via Gemini CLI are immediately available on all other connected platforms. See the Cross-Platform Guide.
Tips
- Gemini CLI looks for
~/.gemini/settings.jsonglobally — there is no per-project config file like Claude Code's.mcp.json - Run
npm run mcp-configin the Crow directory to generate a full config, then copy the relevant entries intosettings.json - The
crow-storageserver requires MinIO; omit it if you are not using file storage