VOOZH about

URL: https://glama.ai/mcp/servers/modelcontextprotocol/git?locale=ru-RU

⇱ git MCP сервер by modelcontextprotocol | Glama


mcp-server-git: Git MCP сервер

Обзор

Сервер протокола Model Context Protocol для взаимодействия с репозиториями Git и автоматизации. Этот сервер предоставляет инструменты для чтения, поиска и манипулирования репозиториями Git с помощью больших языковых моделей.

Обратите внимание, что mcp-server-git в настоящее время находится на ранней стадии разработки. Функциональность и доступные инструменты могут изменяться и расширяться по мере того, как мы продолжаем разрабатывать и улучшать сервер.

Инструменты

  1. git_status

    • Показывает состояние рабочего дерева

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

    • Возвращает: Текущее состояние рабочего каталога в виде текстового вывода

  2. git_diff_unstaged

    • Показывает изменения в рабочем каталоге, которые еще не добавлены в индекс (staged)

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

      • context_lines (число, необязательно): Количество строк контекста для отображения (по умолчанию: 3)

    • Возвращает: Вывод diff для незафиксированных изменений

  3. git_diff_staged

    • Показывает изменения, подготовленные для коммита

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

      • context_lines (число, необязательно): Количество строк контекста для отображения (по умолчанию: 3)

    • Возвращает: Вывод diff для подготовленных изменений

  4. git_diff

    • Показывает различия между ветками или коммитами

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

      • target (строка): Целевая ветка или коммит для сравнения

      • context_lines (число, необязательно): Количество строк контекста для отображения (по умолчанию: 3)

    • Возвращает: Вывод diff, сравнивающий текущее состояние с целевым

  5. git_commit

    • Записывает изменения в репозиторий

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

      • message (строка): Сообщение коммита

    • Возвращает: Подтверждение с хешем нового коммита

  6. git_add

    • Добавляет содержимое файлов в область подготовки (staging area)

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

      • files (строка[]): Массив путей к файлам для добавления

    • Возвращает: Подтверждение добавления файлов

  7. git_reset

    • Отменяет подготовку всех изменений

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

    • Возвращает: Подтверждение операции сброса

  8. git_log

    • Показывает журналы коммитов с дополнительной фильтрацией по дате

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

      • max_count (число, необязательно): Максимальное количество отображаемых коммитов (по умолчанию: 10)

      • start_timestamp (строка, необязательно): Начальная метка времени для фильтрации коммитов. Принимает формат ISO 8601 (например, '2024-01-15T14:30:25'), относительные даты (например, '2 weeks ago', 'yesterday') или абсолютные даты (например, '2024-01-15', 'Jan 15 2024')

      • end_timestamp (строка, необязательно): Конечная метка времени для фильтрации коммитов. Принимает формат ISO 8601 (например, '2024-01-15T14:30:25'), относительные даты (например, '2 weeks ago', 'yesterday') или абсолютные даты (например, '2024-01-15', 'Jan 15 2024')

    • Возвращает: Массив записей коммитов с хешем, автором, датой и сообщением

  9. git_create_branch

    • Создает новую ветку

    • Входные данные:

      • repo_path (строка): Путь к репозиторию Git

      • branch_name (строка): Имя новой ветки

      • base_branch (строка, необязательно): Базовая ветка для создания (по умолчанию текущая ветка)

    • Возвращает: Подтверждение создания ветки

  10. git_checkout

  • Переключает ветки

  • Входные данные:

    • repo_path (строка): Путь к репозиторию Git

    • branch_name (строка): Имя ветки для переключения

  • Возвращает: Подтверждение переключения ветки

  1. git_show

  • Показывает содержимое коммита

  • Входные данные:

    • repo_path (строка): Путь к репозиторию Git

    • revision (строка): Ревизия (хеш коммита, имя ветки, тег) для отображения

  • Возвращает: Содержимое указанного коммита

  1. git_branch

  • Список веток Git

  • Входные данные:

    • repo_path (строка): Путь к репозиторию Git.

    • branch_type (строка): Список локальных веток ('local'), удаленных веток ('remote') или всех веток ('all').

    • contains (строка, необязательно): SHA коммита, который должна содержать ветка. Не передавайте ничего в этот параметр, если SHA коммита не указан.

    • not_contains (строка, необязательно): SHA коммита, который ветка НЕ должна содержать. Не передавайте ничего в этот параметр, если SHA коммита не указан.

  • Возвращает: Список веток

Related MCP server: GitLab MCP Server

Установка

Использование uv (рекомендуется)

При использовании uv специальная установка не требуется. Мы будем использовать uvx для прямого запуска mcp-server-git.

Использование PIP

Альтернативно вы можете установить mcp-server-git через pip:

pip install mcp-server-git

После установки вы можете запустить его как скрипт с помощью:

python -m mcp_server_git

Конфигурация

Использование с Claude Desktop

Добавьте это в ваш claude_desktop_config.json:

"mcpServers": {
 "git": {
 "command": "uvx",
 "args": ["mcp-server-git", "--repository", "path/to/git/repo"]
 }
}
  • Примечание: замените '/Users/username' на путь, к которому вы хотите предоставить доступ этому инструменту

"mcpServers": {
 "git": {
 "command": "docker",
 "args": ["run", "--rm", "-i", "--mount", "type=bind,src=/Users/username,dst=/Users/username", "mcp/git"]
 }
}
"mcpServers": {
 "git": {
 "command": "python",
 "args": ["-m", "mcp_server_git", "--repository", "path/to/git/repo"]
 }
}

Использование с VS Code

Для быстрой установки используйте одну из кнопок установки в один клик ниже...

👁 Установить с помощью UV в VS Code
👁 Установить с помощью UV в VS Code Insiders

👁 Установить с помощью Docker в VS Code
👁 Установить с помощью Docker в VS Code Insiders

Для ручной установки вы можете настроить MCP сервер одним из этих способов:

Способ 1: Пользовательская конфигурация (рекомендуется) Добавьте конфигурацию в ваш файл конфигурации MCP на уровне пользователя. Откройте палитру команд (Ctrl + Shift + P) и выполните MCP: Open User Configuration. Это откроет ваш файл mcp.json, куда вы можете добавить конфигурацию сервера.

Способ 2: Конфигурация рабочей области Альтернативно вы можете добавить конфигурацию в файл .vscode/mcp.json в вашей рабочей области. Это позволит вам делиться конфигурацией с другими.

Для получения дополнительной информации о конфигурации MCP в VS Code см. официальную документацию MCP для VS Code.

{
 "servers": {
 "git": {
 "command": "uvx",
 "args": ["mcp-server-git"]
 }
 }
}

Для установки через Docker:

{
 "mcp": {
 "servers": {
 "git": {
 "command": "docker",
 "args": [
 "run",
 "--rm",
 "-i",
 "--mount", "type=bind,src=${workspaceFolder},dst=/workspace",
 "mcp/git"
 ]
 }
 }
 }
}

Использование с Zed

Добавьте в ваш settings.json в Zed:

"context_servers": [
 "mcp-server-git": {
 "command": {
 "path": "uvx",
 "args": ["mcp-server-git"]
 }
 }
],
"context_servers": {
 "mcp-server-git": {
 "command": {
 "path": "python",
 "args": ["-m", "mcp_server_git"]
 }
 }
},

Использование с Zencoder

  1. Перейдите в меню Zencoder (...)

  2. В выпадающем меню выберите Agent Tools

  3. Нажмите Add Custom MCP

  4. Добавьте имя (например, git) и конфигурацию сервера ниже, и обязательно нажмите кнопку Install

{
 "command": "uvx",
 "args": ["mcp-server-git", "--repository", "path/to/git/repo"]
}

Отладка

Вы можете использовать инспектор MCP для отладки сервера. Для установок через uvx:

npx @modelcontextprotocol/inspector uvx mcp-server-git

Или, если вы установили пакет в определенный каталог или разрабатываете его:

cd path/to/servers/src/git
npx @modelcontextprotocol/inspector uv run mcp-server-git

Запуск tail -n 20 -f ~/Library/Logs/Claude/mcp*.log покажет журналы сервера и может помочь вам отладить любые проблемы.

Разработка

Если вы занимаетесь локальной разработкой, есть два способа протестировать ваши изменения:

  1. Запустите инспектор MCP для тестирования изменений. См. Отладка для инструкций по запуску.

  2. Протестируйте с помощью настольного приложения Claude. Добавьте следующее в ваш claude_desktop_config.json:

Docker

{
 "mcpServers": {
 "git": {
 "command": "docker",
 "args": [
 "run",
 "--rm",
 "-i",
 "--mount", "type=bind,src=/Users/username/Desktop,dst=/projects/Desktop",
 "--mount", "type=bind,src=/path/to/other/allowed/dir,dst=/projects/other/allowed/dir,ro",
 "--mount", "type=bind,src=/path/to/file.txt,dst=/projects/path/to/file.txt",
 "mcp/git"
 ]
 }
 }
}

UVX

{
"mcpServers": {
 "git": {
 "command": "uv",
 "args": [
 "--directory",
 "/<path to mcp-servers>/mcp-servers/src/git",
 "run",
 "mcp-server-git"
 ]
 }
 }
}

Сборка

Сборка Docker:

cd src/git
docker build -t mcp/git .

Лицензия

Этот MCP сервер лицензирован по лицензии MIT. Это означает, что вы можете свободно использовать, изменять и распространять программное обеспечение в соответствии с условиями лицензии MIT. Для получения дополнительной информации, пожалуйста, ознакомьтесь с файлом LICENSE в репозитории проекта.

A
license - permissive license
B
quality
B
maintenance

Maintenance

Maintainers
18dResponse time
5wRelease cycle
7Releases (12mo)
Commit activity
Issues opened vs closed

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/modelcontextprotocol/git'

If you have feedback or need assistance with the MCP directory API, please join our Discord server