Skip to main content
Glama
aikts

Yandex Tracker MCP

issue_get_worklogs

Retrieve worklogs for specific issues in Yandex Tracker using their IDs. Input issue IDs in the format '-' to fetch detailed worklog data.

Instructions

Get worklogs of a Yandex Tracker issue by its id

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
issue_idsYesMultiple Issue IDs. Each issue id is in the format '<project>-<id>', like 'SOMEPROJECT-1'

Implementation Reference

  • MCP tool handler and registration for 'issue_get_worklogs'. Supports multiple issue IDs, performs authorization checks, and delegates to the issues service to fetch worklogs.
    @mcp.tool(description="Get worklogs of a Yandex Tracker issue by its id")
    async def issue_get_worklogs(
        ctx: Context[Any, AppContext],
        issue_ids: IssueIDs,
    ) -> dict[str, list[Worklog]]:
        for issue_id in issue_ids:
            check_issue_id(settings, issue_id)
    
        result: dict[str, Any] = {}
        for issue_id in issue_ids:
            worklogs = (
                await ctx.request_context.lifespan_context.issues.issue_get_worklogs(
                    issue_id,
                    auth=get_yandex_auth(ctx),
                )
            )
            result[issue_id] = worklogs or []
    
        return result
  • Core implementation of issue_get_worklogs in the TrackerClient class, making HTTP GET request to Yandex Tracker API endpoint /v3/issues/{issue_id}/worklog and parsing the response.
    async def issue_get_worklogs(
        self, issue_id: str, *, auth: YandexAuth | None = None
    ) -> list[Worklog]:
        async with self._session.get(
            f"v3/issues/{issue_id}/worklog", headers=await self._build_headers(auth)
        ) as response:
            if response.status == 404:
                raise IssueNotFound(issue_id)
            response.raise_for_status()
            return WorklogList.model_validate_json(await response.read()).root
  • Caching wrapper for issue_get_worklogs that caches the result using aiocache.
    async def issue_get_worklogs(
        self, issue_id: str, *, auth: YandexAuth | None = None
    ) -> list[Worklog]:
        return await self._original.issue_get_worklogs(issue_id, auth=auth)
  • Protocol (interface) definition for the issue_get_worklogs method used across clients.
    async def issue_get_worklogs(
        self, issue_id: str, *, auth: YandexAuth | None = None
    ) -> list[Worklog]: ...

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/aikts/yandex-tracker-mcp'

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