gemini-bridge
Gemini Bridge
Легковесный MCP-сервер (Model Context Protocol), позволяющий ИИ-ассистентам для программирования взаимодействовать с Google Gemini AI через официальный CLI. Работает с Claude Code, Cursor, VS Code и другими MCP-совместимыми клиентами. Разработан для простоты, надежности и бесшовной интеграции.
✨ Возможности
Прямая интеграция с Gemini CLI: Нулевые затраты на API при использовании официального Gemini CLI
Три MCP-инструмента: Базовые запросы, анализ файлов и возможности веб-поиска
Работа без сохранения состояния: Нет сессий, кэширования или сложного управления состоянием
Готовность к продакшену: Надежная обработка ошибок с настраиваемыми 60-секундными таймаутами
Минимальные зависимости: Требуются только
mcp>=1.0.0и Gemini CLIПростое развертывание: Поддержка как uvx, так и традиционной установки через pip
Универсальная MCP-совместимость: Работает с любым MCP-совместимым ИИ-ассистентом для программирования
Современный Python: Использует pathlib и современные подсказки типов (Python 3.10+)
Related MCP server: MCP Gemini API Server
🚀 Быстрый старт
Предварительные требования
Установите Gemini CLI:
npm install -g @google/gemini-cliАвторизуйтесь в Gemini:
gemini auth loginПроверьте установку:
gemini --version
Установка
🎯 Рекомендуется: Установка через PyPI
# Install from PyPI
pip install gemini-bridge
# Add to Claude Code with uvx (recommended)
claude mcp add gemini-bridge -s user -- uvx gemini-bridgeАльтернатива: Из исходного кода
# Clone the repository
git clone https://github.com/shelakh/gemini-bridge.git
cd gemini-bridge
# Build and install locally
uvx --from build pyproject-build
pip install dist/*.whl
# Add to Claude Code
claude mcp add gemini-bridge -s user -- uvx gemini-bridgeУстановка для разработки
# Clone and install in development mode
git clone https://github.com/shelakh/gemini-bridge.git
cd gemini-bridge
pip install -e .
# Add to Claude Code (development)
claude mcp add gemini-bridge-dev -s user -- python -m src🌐 Поддержка нескольких клиентов
Gemini Bridge работает с любым MCP-совместимым ИИ-ассистентом для программирования — один и тот же сервер поддерживает несколько клиентов через различные методы конфигурации.
Поддерживаемые MCP-клиенты
Claude Code ✅ (По умолчанию)
Cursor ✅
VS Code ✅
Windsurf ✅
Cline ✅
Void ✅
Cherry Studio ✅
Augment ✅
Roo Code ✅
Zencoder ✅
Любой MCP-совместимый клиент ✅
Примеры конфигурации
# Recommended installation
claude mcp add gemini-bridge -s user -- uvx gemini-bridge
# Development installation
claude mcp add gemini-bridge-dev -s user -- python -m srcГлобальная конфигурация (~/.cursor/mcp.json):
{
"mcpServers": {
"gemini-bridge": {
"command": "uvx",
"args": ["gemini-bridge"],
"env": {}
}
}
}Специфичная для проекта (.cursor/mcp.json в вашем проекте):
{
"mcpServers": {
"gemini-bridge": {
"command": "uvx",
"args": ["gemini-bridge"],
"env": {}
}
}
}Перейдите в: Settings → Cursor Settings → MCP → Add new global MCP server
Конфигурация (.vscode/mcp.json в вашей рабочей области):
{
"servers": {
"gemini-bridge": {
"type": "stdio",
"command": "uvx",
"args": ["gemini-bridge"]
}
}
}Альтернатива: Через расширения
Откройте представление расширений (Ctrl+Shift+X)
Найдите MCP-расширения
Добавьте пользовательский сервер с командой:
uvx gemini-bridge
Добавьте в конфигурацию MCP Windsurf:
{
"mcpServers": {
"gemini-bridge": {
"command": "uvx",
"args": ["gemini-bridge"],
"env": {}
}
}
}Откройте Cline и нажмите MCP Servers в верхней навигации
Выберите вкладку Installed → Advanced MCP Settings
Добавьте в
cline_mcp_settings.json:
{
"mcpServers": {
"gemini-bridge": {
"command": "uvx",
"args": ["gemini-bridge"],
"env": {}
}
}
}Перейдите в: Settings → MCP → Add MCP Server
{
"mcpServers": {
"gemini-bridge": {
"command": "uvx",
"args": ["gemini-bridge"],
"env": {}
}
}
}Перейдите в Settings → MCP Servers → Add Server
Заполните данные сервера:
Name:
gemini-bridgeType:
STDIOCommand:
uvxArguments:
["gemini-bridge"]
Сохраните конфигурацию
Использование интерфейса:
Нажмите на меню-гамбургер → Settings → Tools
Нажмите кнопку + Add MCP
Введите команду:
uvx gemini-bridgeИмя: Gemini Bridge
Ручная конфигурация:
"augment.advanced": {
"mcpServers": [
{
"name": "gemini-bridge",
"command": "uvx",
"args": ["gemini-bridge"],
"env": {}
}
]
}Перейдите в Settings → MCP Servers → Edit Global Config
Добавьте в
mcp_settings.json:
{
"mcpServers": {
"gemini-bridge": {
"command": "uvx",
"args": ["gemini-bridge"],
"env": {}
}
}
}Перейдите в меню Zencoder (...) → Tools → Add Custom MCP
Добавьте конфигурацию:
{
"command": "uvx",
"args": ["gemini-bridge"],
"env": {}
}Нажмите кнопку Install
Для установок на базе pip:
{
"command": "gemini-bridge",
"args": [],
"env": {}
}Для разработки/локального тестирования:
{
"command": "python",
"args": ["-m", "src"],
"env": {},
"cwd": "/path/to/gemini-bridge"
}Для установки в стиле npm (если необходимо):
{
"command": "npx",
"args": ["gemini-bridge"],
"env": {}
}Универсальное использование
После настройки с любым клиентом используйте те же два инструмента:
Задавайте общие вопросы: "Какие шаблоны аутентификации используются в этой кодовой базе?"
Анализируйте конкретные файлы: "Проверь эти файлы аутентификации на наличие проблем с безопасностью"
Реализация сервера идентична — отличается только конфигурация клиента!
⚙️ Конфигурация
Настройка таймаута
По умолчанию Gemini Bridge использует 60-секундный таймаут для всех операций CLI. Для более длительных запросов (большие файлы, сложный анализ) вы можете настроить собственный таймаут с помощью переменной окружения GEMINI_BRIDGE_TIMEOUT.
Примеры конфигурации:
# Add with custom timeout (120 seconds)
claude mcp add gemini-bridge -s user --env GEMINI_BRIDGE_TIMEOUT=120 -- uvx gemini-bridge{
"mcpServers": {
"gemini-bridge": {
"command": "uvx",
"args": ["gemini-bridge"],
"env": {
"GEMINI_BRIDGE_TIMEOUT": "120"
}
}
}
}Опции таймаута:
По умолчанию: 60 секунд (если не настроено)
Диапазон: Любое положительное целое число (секунды)
Переопределение для вызова: Укажите
timeout_secondsдля любого инструмента для разового расширенияРекомендуется: 120-300 секунд для анализа больших файлов
Некорректные значения: Возврат к 60 секундам с предупреждением
🛠️ Доступные инструменты
consult_gemini
Прямой CLI-мост для простых запросов.
Параметры:
query(строка): Вопрос или промпт для отправки в Geminidirectory(строка): Рабочая директория для запросаmodel(строка, опционально): Модель для использования - "flash", "pro", "flash-lite", "2.5-lite", "3-pro", "3-flash", "3.1-pro", "3.1-flash-lite" или "auto" (по умолчанию: "flash")timeout_seconds(целое число, опционально): Переопределение таймаута выполнения для этого запроса
Пример:
consult_gemini(
query="Find authentication patterns in this codebase",
directory="/path/to/project",
model="flash"
)consult_gemini_with_files
CLI-мост с вложениями файлов для детального анализа.
Параметры:
query(строка): Вопрос или промпт для отправки в Geminidirectory(строка): Рабочая директория для запросаfiles(список): Список путей к файлам относительно директорииmodel(строка, опционально): Модель для использования - "flash", "pro", "flash-lite", "2.5-lite", "3-pro", "3-flash", "3.1-pro", "3.1-flash-lite" или "auto" (по умолчанию: "flash")timeout_seconds(целое число, опционально): Переопределение таймаута выполнения для этого запросаmode(строка, опционально): Либо "inline" (по умолчанию) для потоковой передачи содержимого файлов, либо "at_command", чтобы позволить Gemini CLI самостоятельно разрешать ссылки@path
Пример:
consult_gemini_with_files(
query="Analyze these auth files and suggest improvements",
directory="/path/to/project",
files=["src/auth.py", "src/models.py"],
model="pro",
timeout_seconds=180
)Совет: При сканировании больших деревьев переключитесь на mode="at_command", чтобы Gemini CLI самостоятельно обрабатывал раскрытие путей (globbing) и усечение файлов.
web_search
Задавайте Gemini вопросы с контекстом веб-поиска. Использует автоматический веб-поиск Gemini CLI, когда модель определяет, что это необходимо. Функциональность "как есть" — не гарантируется для каждого запроса.
Параметры:
query(строка): Поисковый запрос или вопрос для поиска в сетиdirectory(строка): Рабочая директория для выполнения командыmodel(строка, опционально): Модель для использования - "flash", "pro", "flash-lite", "2.5-lite", "3-pro", "3-flash", "3.1-pro", "3.1-flash-lite" или "auto" (по умолчанию: "flash")timeout_seconds(целое число, опционально): Переопределение таймаута выполнения для этого запроса
Пример:
web_search(
query="latest Python version and new features",
model="flash"
)📋 Примеры использования
Базовый анализ кода
# Simple research query
consult_gemini(
query="What authentication patterns are used in this project?",
directory="/Users/dev/my-project"
)Детальный обзор файла
# Analyze specific files
consult_gemini_with_files(
query="Review these files and suggest security improvements",
directory="/Users/dev/my-project",
files=["src/auth.py", "src/middleware.py"],
model="pro"
)Анализ нескольких файлов
# Compare multiple implementation files
consult_gemini_with_files(
query="Compare these database implementations and recommend the best approach",
directory="/Users/dev/my-project",
files=["src/db/postgres.py", "src/db/sqlite.py", "src/db/redis.py"],
mode="at_command"
)Веб-поиск
# Get current information from the web
web_search(
query="latest Python version and new features in 3.13",
model="flash"
)Меры предосторожности для больших файлов
Встроенные передачи ограничены ~256 КБ на файл и ~512 КБ на запрос, чтобы избежать зависаний.
Файлы слишком большого размера усекаются до фрагментов начала/конца с предупреждением в ответе MCP.
Настраивайте ограничения с помощью переменных окружения (
GEMINI_BRIDGE_MAX_INLINE_TOTAL_BYTESи т.д.) или отдавайте предпочтениеmode="at_command"для больших полезных нагрузок.
🏗️ Архитектура
Основной дизайн
CLI-First: Прямые вызовы подпроцессов к команде
geminiБез сохранения состояния: Каждый вызов инструмента независим, без состояния сессии
Адаптивный таймаут: По умолчанию 60 секунд, но переопределяется для каждого запроса или через переменную окружения
Ограничения вложений: Режим inline обеспечивает легкие ограничения; режим
@делегирует работу инструментам Gemini CLIПростая обработка ошибок: Понятные сообщения об ошибках с подходом быстрого отказа
Структура проекта
gemini-bridge/
├── src/
│ ├── __init__.py # Entry point
│ ├── __main__.py # Module execution entry point
│ └── mcp_server.py # Main MCP server implementation
├── .github/ # GitHub templates and workflows
├── pyproject.toml # Python package configuration
├── README.md # This file
├── CONTRIBUTING.md # Contribution guidelines
├── CODE_OF_CONDUCT.md # Community standards
├── SECURITY.md # Security policies
├── CHANGELOG.md # Version history
└── LICENSE # MIT license🔧 Разработка
Локальное тестирование
# Install in development mode
pip install -e .
# Run directly
python -m src
# Test CLI availability
gemini --versionИнтеграция с Claude Code
Сервер автоматически интегрируется с Claude Code при правильной настройке через протокол MCP.
🔍 Устранение неполадок
CLI недоступен
# Install Gemini CLI
npm install -g @google/gemini-cli
# Authenticate
gemini auth login
# Test
gemini --versionПроблемы с подключением
Проверьте, правильно ли авторизован Gemini CLI
Проверьте сетевое подключение
Убедитесь, что конфигурация MCP Claude Code верна
Проверьте, находится ли команда
geminiв вашем PATH
Распространенные сообщения об ошибках
"CLI not available": Gemini CLI не установлен или отсутствует в PATH
"Authentication required": Выполните
gemini auth login"Timeout after 60 seconds": Запрос выполнялся слишком долго, попробуйте разбить его на части
🤝 Участие в разработке
Мы приветствуем вклад сообщества! Пожалуйста, ознакомьтесь с нашими Руководством по участию для получения подробной информации о том, как начать.
Краткое руководство по участию
Сделайте форк репозитория
Создайте ветку для функции
Внесите изменения
Добавьте тесты, если применимо
Отправьте pull request
📄 Лицензия
Этот проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.
🔄 История версий
Подробную историю версий см. в CHANGELOG.md.
🆘 Поддержка
Проблемы: Сообщайте об ошибках или запрашивайте функции через GitHub Issues
Обсуждения: Присоединяйтесь к обсуждению в сообществе
Документация: Дополнительная документация может быть создана в директории
docs/
Фокус: Простой, надежный мост между Claude Code и Gemini AI через официальный CLI.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/eLyiN/gemini-bridge'
If you have feedback or need assistance with the MCP directory API, please join our Discord server