Skip to main content

gemini-cli-mcp-slim

A thin, auditable MCP server wrapping the Gemini CLI.

PyPI version Python versions License: MIT CI

Why

Existing Gemini MCP servers tend to either hide the underlying CLI behind opaque parameters or hard-code the supported flags so new gemini CLI options require code changes. This project takes a different approach:

  • Single file, ~290 lines — auditable in one sitting
  • One third-party dependency (mcp) — minimal supply-chain surface
  • Forward-compatible — any new or uncommon gemini CLI flag is reachable via extra_args without touching this server
  • Configurable binary path — $GEMINI_CMD lets you swap or wrap the gemini binary
  • Workspace-aware — first-class include_directories so you can analyze multiple repositories from one invocation
  • Transparent — every invocation logs the exact argv to stderr

Installation

Requires the gemini CLI to be installed and on $PATH (or pointed to via $GEMINI_CMD).

# Run directly without installing
uvx gemini-cli-mcp-slim

# Install from PyPI
pip install gemini-cli-mcp-slim

# Run from GitHub HEAD
uvx --from git+https://github.com/tksfjt1024/gemini-cli-mcp-slim gemini-cli-mcp-slim

Usage as an MCP server

Claude Code

claude mcp add gemini-cli-mcp-slim uvx gemini-cli-mcp-slim

Or manually in ~/.claude.json:

{
  "mcpServers": {
    "gemini-cli-mcp-slim": {
      "type": "stdio",
      "command": "uvx",
      "args": ["gemini-cli-mcp-slim"]
    }
  }
}

Other MCP clients

Any MCP-compatible client can launch the server via stdio:

uvx gemini-cli-mcp-slim

Tools

consult_gemini

Run a single Gemini CLI invocation with full forward-compatibility.

Parameter Type Description
query (required) string Prompt sent verbatim to the gemini CLI
directory (required) string Working directory (gemini cwd, defines the default workspace root)
model string Model alias (flash, pro) or full model id
approval_mode enum default / auto_edit / yolo / plan
include_directories string[] Extra workspace directories (mapped to gemini --include-directories)
yolo bool Pass --yolo (auto-approve all)
sandbox bool Pass --sandbox
extra_args string[] Raw CLI flags appended verbatim. Use to access new/uncommon gemini flags
env object Extra environment variables for the gemini subprocess
timeout_seconds int Subprocess timeout in seconds (default 600)

consult_gemini_with_files

Same parameters as consult_gemini plus a files: string[] parameter. File paths are appended to the prompt as @path tokens (gemini's file reference syntax). Absolute paths inside directory are converted to relative @-paths.

web_search

Convenience wrapper that prepends a "use your built-in web search" instruction to the query.

Configuration

Environment variable Default Purpose
GEMINI_CMD gemini Path to the gemini CLI binary
GEMINI_CLI_MCP_SLIM_TIMEOUT 600 Default subprocess timeout in seconds
GEMINI_CLI_MCP_SLIM_LOG_LEVEL INFO Logging level for stderr diagnostics

Cross-repository analysis example

The killer feature: analyze multiple repositories from a single MCP invocation.

{
  "name": "consult_gemini",
  "arguments": {
    "query": "Compare the API surface between these services",
    "directory": "/path/to/service-a",
    "include_directories": [
      "/path/to/service-b",
      "/path/to/service-c"
    ],
    "model": "flash",
    "approval_mode": "plan"
  }
}

This launches gemini with --include-directories=/path/to/service-b,/path/to/service-c, giving the model read access to all three workspaces in one session.

Forward-compatibility example

If a future gemini CLI release adds a new flag (say --super-mode), you can use it immediately without updating this server:

{
  "name": "consult_gemini",
  "arguments": {
    "query": "...",
    "directory": "...",
    "extra_args": ["--super-mode", "--some-other-new-flag"]
  }
}

Comparison with alternatives

Project Lines Deps include_directories extra_args passthrough
gemini-cli-mcp-slim (this) ~290 1 (mcp) yes yes
eLyiN/gemini-bridge ~400 1 (mcp) no no
jamubc/gemini-mcp-tool (TS) many no partial

Development

# Install dev dependencies
pip install -e ".[test,dev]"

# Lint
ruff check .

# Test
pytest

License

MIT © tksfjt1024

Metadata

Release files for gemini-cli-mcp-slim 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gemini-cli-mcp-slim 0.1.1
File Size Uploaded Provenance
gemini_cli_mcp_slim-0.1.1.tar.gz 11.5 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for gemini-cli-mcp-slim 0.1.1
File Interpreter ABI Platform
gemini_cli_mcp_slim-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 20.2 kB

Release files / gemini_cli_mcp_slim-0.1.1.tar.gz

Download URL gemini_cli_mcp_slim-0.1.1.tar.gz
Size 11.5 kB
Tags Source
SHA-256 checksum
How to use checksums
61d24db492f1868d8f9e822f88e12c1759c5918922daf5ddf650aa4f8784a865
BLAKE2b-256 checksum
How to use checksums
6bdc60c4ad1257a65da9a454fc02044981fe952dc101f159f939e4cd3a3b908d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 8, 2026.

Transparency log

Release files / gemini_cli_mcp_slim-0.1.1-py3-none-any.whl

Download URL gemini_cli_mcp_slim-0.1.1-py3-none-any.whl
Size 8.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8470329010aa69407af9b4ef9348641788c1dc188c7105bb970c91c58ff1db53
BLAKE2b-256 checksum
How to use checksums
ec7b4e7168d3a069fceff841efb5e190509fd6ba24dc63b848fda5dffdd0c041
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 8, 2026.

Transparency log

Security for gemini-cli-mcp-slim 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for gemini_cli_mcp_slim-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 8, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page