/
pickling
/
mcp-sourcecontrol-python
Обзор
Документация
Войти
/
pickling
/
mcp-sourcecontrol-python
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/mcp_sourcecontrol/tools/list_commits.py
34 строки
1 KB
pickling-21
Python-порт mcp-sourcecontrol: 20 инструментов, stdio и Streamable HTTP
29 июл 2026, 02:18
29 июл 2026, 02:18
bc8bde4
Код
Авторство
О чём код?
"""MCP-инструмент git_list_commits.""" from typing import Annotated from pydantic import Field from ..runtime import current_client from .annotations import READ_ONLY from .define import ToolDefinition from .formatting import to_json from .schemas import ParamLimit, ParamPage, ParamProjectKey, ParamRepositorySlug async def _handler( project: ParamProjectKey, repository: ParamRepositorySlug, branch: Annotated[str | None, Field(description="Branch to list commits from")] = None, since: Annotated[str | None, Field(description="Show commits since a specific date (ISO 8601)")] = None, until: Annotated[str | None, Field(description="Show commits until a specific date (ISO 8601)")] = None, filePath: Annotated[str | None, Field(description="Filter by file path")] = None, page: ParamPage = 1, limit: ParamLimit = 30, ) -> str: result = await current_client().list_commits(project, repository, branch, since, until, filePath, page, limit) return to_json(result) TOOL = ToolDefinition( name="git_list_commits", group="read", description="List commits in a repository. Supports filtering by branch and path.", annotations=READ_ONLY, handler=_handler, )