YouTrack MCP
A Model Context Protocol (MCP) server for YouTrack integration, providing a standardized interface for LLMs to interact with YouTrack's issue tracking, agile management, and knowledge base features.
README
YouTrack MCP TypeScript Server
A Model Context Protocol (MCP) server for YouTrack integration, providing a standardized interface for LLMs to interact with YouTrack's issue tracking, agile management, and knowledge base features.
Features
-
Issue Management
- Create, read, update, delete issues
- Add comments and attachments
- Search issues with advanced filtering
- Track issue time and estimation
-
Agile & Sprint Management
- Create and manage sprints
- Assign issues to sprints
- Track sprint progress
-
State Management & Workflows
- Transition issues through states
- Start working on issues with automatic assignment
- Complete issues with proper resolution
-
Knowledge Base Integration
- Create and manage articles
- Link issues to knowledge base articles
- Search knowledge base content
-
Project Management
- List and filter projects
- Get project details and customization options
Installation
# Clone the repository
git clone https://github.com/itsalfredakku/youtrack-mcp.git
cd youtrack-mcp-ts
# Install dependencies
npm install
# Build the project
npm run build
Configuration
Copy the example environment file and configure it with your YouTrack instance details:
cp .env.example .env
Edit the .env file with your specific configuration:
# YouTrack instance URL (without trailing slash)
YOUTRACK_URL=https://your-instance.youtrack.cloud
# YouTrack permanent token
# Generate from: Profile > Account Security > Tokens
YOUTRACK_TOKEN=your-permanent-token-here
# Optional: Default project ID
PROJECT_ID=PROJECT-1
# Optional: Enable webhooks (true/false)
ENABLE_WEBHOOKS=false
# Optional: Webhook server port (default: 3000)
WEBHOOK_PORT=3000
# Optional: Webhook secret for signature verification
WEBHOOK_SECRET=your-webhook-secret
# Optional: Log level (error, warn, info, debug)
LOG_LEVEL=info
# Optional: Cache TTL in milliseconds (default: 300000 = 5 minutes)
CACHE_TTL=300000
# Optional: Enable cache (true/false, default: true)
CACHE_ENABLED=true
Usage
Starting the Server
# Start the MCP server
npm start
# Start in development mode with auto-reload
npm run dev
Interacting with the Server
The YouTrack MCP server exposes tools following the Model Context Protocol. LLM applications can discover and use these tools to interact with YouTrack.
Example: Creating an Issue
{
"tool": "create_issue",
"params": {
"projectId": "PROJECT-1",
"summary": "Implement new feature",
"description": "We need to implement the new feature as described in the specs.",
"type": "Task",
"priority": "Normal"
}
}
Example: Searching Issues
{
"tool": "search_issues",
"params": {
"query": "project: PROJECT-1 #bug state: Open",
"limit": 10
}
}
Example: Starting Work on an Issue
{
"tool": "start_working_on_issue",
"params": {
"issueId": "PROJECT-1-123",
"comment": "Starting implementation of this feature",
"estimatedTime": "2d"
}
}
Available Tools
The server provides 60+ tools for interacting with YouTrack. Here are some of the most commonly used:
Issue Management
create_issue- Create a new issueget_issue- Get issue detailsupdate_issue- Update an issueadd_issue_comment- Add a comment to an issuesearch_issues- Search for issues
Agile & Sprint Management
list_sprints- List all sprintscreate_sprint- Create a new sprintassign_issue_to_sprint- Add an issue to a sprintget_sprint_issues- Get all issues in a sprint
State Management
start_working_on_issue- Begin work on an issuechange_issue_state- Change an issue's statecomplete_issue- Mark an issue as completed
Knowledge Base
create_article- Create a knowledge base articleupdate_article- Update an articleget_article- Get article detailssearch_articles- Search knowledge base articles
Project Management
list_projects- List all accessible projectsget_project_details- Get project information
Development
Prerequisites
- Node.js 18.x or later
- npm 8.x or later
- A YouTrack instance with API access
Development Workflow
# Install dependencies
npm install
# Start in development mode with auto-reload
npm run dev
# Run linting
npm run lint
# Run type checking
npm run type-check
# Build the project
npm run build
Project Structure
src/index.ts- Main entry pointsrc/youtrack-client.ts- YouTrack API clientsrc/tools/- Individual MCP tool implementationssrc/utils/- Utility functions and helperssrc/types/- TypeScript type definitionssrc/config/- Configuration management
Testing
# Run all tests
npm test
# Run specific test suites
npm run test:queries
npm run test:issues
Troubleshooting
Common Issues
-
Authentication errors: Verify your YouTrack token has the necessary permissions and hasn't expired.
-
Project not found: Ensure the project ID exists and is accessible to your account.
-
API rate limiting: YouTrack may impose rate limits. Consider implementing retry logic for critical operations.
-
State transition errors: Some state transitions may be prohibited by your YouTrack workflow configuration.
Logs
Logs are stored in the logs directory:
combined.log- All log entrieserror.log- Error-level logs only
Set the LOG_LEVEL environment variable to control logging verbosity (error, warn, info, debug).
Contributing
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgements
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.