- Yandex Tracker Mcp Server
Yandex Tracker Mcp Server
Yandex Tracker MCP Server
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with Yandex Tracker APIs. This server provides secure, authenticated access to Yandex Tracker issues, queues, comments, worklogs, and search functionality with optional Redis caching for improved performance.
Features
- Complete Queue Management: List and access all available Yandex Tracker queues with pagination support and tag retrieval
- User Management: Retrieve user account information, including login details, email addresses, license status, and organizational data
- Issue Operations: Retrieve detailed issue information, comments, related links, worklogs, and attachments
- Field Management: Access global fields, queue-specific local fields, statuses, and issue types
- Advanced Query Language: Full Yandex Tracker Query Language support with complex filtering, sorting, and date functions
- Performance Caching: Optional Redis caching layer for improved response times
- Security Controls: Configurable queue access restrictions and secure token handling
- Multiple Transport Options: Support for stdio and SSE transports
- Organization Support: Compatible with both standard and cloud organization IDs
Organization ID Configuration
Choose one of the following based on your Yandex organization type:
- Yandex Cloud Organization: Use
TRACKER_CLOUD_ORG_IDenv var later for Yandex Cloud-managed organizations - Yandex 360 Organization: Use
TRACKER_ORG_IDenv var later for Yandex 360 organizations
You can find your organization ID in the Yandex Tracker URL or organization settings.
Available MCP Tools
The server exposes the following tools through the MCP protocol:
Queue Management
-
queues_get_all: List all available Yandex Tracker queues- Returns paginated queue information
- Respects
TRACKER_LIMIT_QUEUESrestrictions
-
queue_get_local_fields: Get local fields for a specific queue- Parameters:
queue_id(string, queue key like "SOMEPROJECT") - Returns queue-specific custom fields with id, name, and key
- Respects
TRACKER_LIMIT_QUEUESrestrictions
- Parameters:
-
queue_get_tags: Get all tags for a specific queue- Parameters:
queue_id(string, queue key like "SOMEPROJECT") - Returns list of available tags in the specified queue
- Respects
TRACKER_LIMIT_QUEUESrestrictions
- Parameters:
-
queue_get_versions: Get all versions for a specific queue- Parameters:
queue_id(string, queue key like "SOMEPROJECT") - Returns list of available versions in the specified queue with details like name, description, dates, and status
- Respects
TRACKER_LIMIT_QUEUESrestrictions
- Parameters:
User Management
-
users_get_all: Get information about user accounts registered in the organization- Parameters:
per_page(optional): Number of users per page (default: 50)page(optional): Page number to return (default: 1)
- Returns paginated list of users with login, email, license status, and organizational details
- Includes user metadata such as external status, dismissal status, and notification preferences
- Parameters:
-
user_get: Get information about a specific user by login or UID- Parameters:
user_id(string, user login like "john.doe" or UID like "12345") - Returns detailed user information including login, email, license status, and organizational details
- Supports both user login names and numeric user IDs for flexible identification
- Parameters:
Field Management
get_global_fields: Get all global fields available in Yandex Tracker- Returns complete list of global fields that can be used in issues
- Includes field schema, type information, and configuration
Status and Type Management
-
get_statuses: Get all available issue statuses- Returns complete list of issue statuses that can be assigned
- Includes status IDs, names, and type information
-
get_issue_types: Get all available issue types- Returns complete list of issue types for creating/updating issues
- Includes type IDs, names, and configuration details
Issue Operations
-
issue_get: Retrieve detailed issue information by ID- Parameters:
issue_id(string, format: "QUEUE-123") - Returns complete issue data including status, assignee, description, etc.
- Parameters:
-
issue_get_url: Generate web URL for an issue- Parameters:
issue_id(string) - Returns:
https://tracker.yandex.ru/{issue_id}
- Parameters:
-
issue_get_comments: Fetch all comments for an issue- Parameters:
issue_id(string) - Returns chronological list of comments with metadata
- Parameters:
-
issue_get_links: Get related issue links- Parameters:
issue_id(string) - Returns links to related, blocked, or duplicate issues
- Parameters:
-
issue_get_worklogs: Retrieve worklog entries- Parameters:
issue_ids(array of strings) - Returns time tracking data for specified issues
- Parameters:
-
issue_get_attachments: Get attachments for an issue- Parameters:
issue_id(string, format: "QUEUE-123") - Returns list of attachments with metadata for the specified issue
- Parameters:
Search and Discovery
-
issues_find: Search issues using Yandex Tracker Query Language- Parameters:
query(required): Query string using Yandex Tracker Query Language syntaxpage(optional): Page number for pagination (default: 1)
- Returns up to 500 issues per page
- Parameters:
-
issues_count: Count issues matching a query using Yandex Tracker Query Language- Parameters:
query(required): Query string using Yandex Tracker Query Language syntax
- Returns the total count of issues matching the specified criteria
- Supports all query language features: field filtering, date functions, logical operators, and complex expressions
- Useful for analytics, reporting, and understanding issue distribution without retrieving full issue data
- Parameters:
Configuration
Environment Variables
# Required - Yandex Tracker API token
TRACKER_TOKEN=your_yandex_tracker_oauth_token
# Organization Configuration (choose one)
TRACKER_CLOUD_ORG_ID=your_cloud_org_id # For Yandex Cloud organizations
TRACKER_ORG_ID=your_org_id # For Yandex 360 organizations
# API Configuration (optional)
TRACKER_BASE_URL=https://api.tracker.yandex.net # Default: https://api.tracker.yandex.net
# Security - Restrict access to specific queues (optional)
TRACKER_LIMIT_QUEUES=PROJ1,PROJ2,DEV # Comma-separated queue keys
# Server Configuration
HOST=0.0.0.0 # Default: 0.0.0.0
PORT=8000 # Default: 8000
TRANSPORT=stdio # Options: stdio, streamable-http, sse
# Redis Caching (optional but recommended for production)
CACHE_ENABLED=true # Default: false
CACHE_REDIS_ENDPOINT=localhost # Default: localhost
CACHE_REDIS_PORT=6379 # Default: 6379
CACHE_REDIS_DB=0 # Default: 0
License
This project is licensed under the terms specified in the LICENSE file.
Support
For issues and questions:
- Review Yandex Tracker API documentation
- Submit issues at https://github.com/aikts/yandex-tracker-mcp/issues
Server Config
{
"mcpServers": {
"yandex-tracker": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"TRACKER_TOKEN",
"-e",
"TRACKER_CLOUD_ORG_ID",
"-e",
"TRACKER_ORG_ID",
"ghcr.io/aikts/yandex-tracker-mcp:latest"
],
"env": {
"TRACKER_TOKEN": "your_tracker_token_here",
"TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
"TRACKER_ORG_ID": "your_org_id_here"
}
}
}
}