YouTrack MCP Server
Model Context Protocol (MCP) server for YouTrack integration.
Installation
pip install youtrack-mcp
Usage
Using with uv
"youtrack-mcp": {
"command": "uv",
"args": [
"run",
"youtrack-mcp"
],
"env": {
"YOUTRACK_URL": "https://your-instance.youtrack.cloud",
"YOUTRACK_TOKEN": "your-token",
"MCP_SERVER_NAME": "YouTrack MCP Server",
"MCP_LOG_LEVEL": "INFO"
}
}
Environment Variables
YOUTRACK_URL- URL of your YouTrack instanceYOUTRACK_TOKEN- YouTrack API access tokenMCP_SERVER_NAME- MCP server nameMCP_LOG_LEVEL- Logging level (DEBUG, INFO, WARNING, ERROR)
License
MIT
Features
- Issue search
- Detailed issue information
- Update issues (status, assignee, etc.)
- Add comments to issues
- Standardized interface via MCP Python SDK
- Support for stdio and SSE transports
- Integration with Claude Desktop and other MCP-compatible clients
Requirements
- Python 3.10 or higher
- Access to YouTrack with API token
- Installed MCP Python SDK
Development Setup
1. Clone the repository
git clone [repository-url]
cd youtrack_mcp
2. Install dependencies
pip install -r requirements.txt
3. Setup connection to YouTrack
Create a .env file in the root directory of the project with the following variables:
YOUTRACK_URL=https://your-instance.youtrack.cloud
YOUTRACK_TOKEN=your-permanent-token
MCP_SERVER_NAME=YouTrack MCP Server
MCP_LOG_LEVEL=INFO
Or specify these parameters when starting the server via command line arguments.
Running MCP Server
Development and debugging
# Run in development mode with interactive web interface
mcp dev server.py
# With additional dependencies
mcp dev server.py --with pandas --with numpy
Direct run
# Run via MCP module
python server.py
# With additional parameters
python server.py --youtrack-url https://your-instance.youtrack.cloud --youtrack-token your-token --read-only
Command line parameters
--read-only- Run in read-only mode (blocks write operations)--youtrack-url- URL of your YouTrack instance--youtrack-token- API token for YouTrack
Integration with Claude Desktop
Step 1: Install server
# Install server in Claude Desktop
mcp install server.py
# With custom name
mcp install server.py --name "YouTrack MCP"
# With environment variables
mcp install server.py -v YOUTRACK_URL=https://your-instance.youtrack.cloud -v YOUTRACK_TOKEN=your-token
mcp install server.py -f .env
Step 2: Activate server
- Open Claude Desktop
- Go to Settings -> MCP Servers
- Make sure "YouTrack MCP Server" is listed and activated
Available Tools
The server provides the following tools for working with YouTrack:
youtrack_search_issues- Search for issuesyoutrack_get_issue- Get detailed information about an issueyoutrack_update_issue- Update an issueyoutrack_add_comment- Add a comment to an issue
Usage Examples
Search for issues:
{
"type": "tool_call",
"name": "youtrack_search_issues",
"parameters": {
"query": "project: YourProject",
"top": 10
}
}
Get issue information:
{
"type": "tool_call",
"name": "youtrack_get_issue",
"parameters": {
"issue_id": "YourProject-123"
}
}
Add a comment:
{
"type": "tool_call",
"name": "youtrack_add_comment",
"parameters": {
"issue_id": "YourProject-123",
"comment_text": "New comment for the issue"
}
}
Access resources:
{
"type": "resource_request",
"uri": "server://info"
}
Architecture
The MCP server is built using the official Python SDK for Model Context Protocol, ensuring full compatibility with the MCP specification.
Main components:
server.py- MCP server with tool and resource definitionsyoutrack_api.py- Functions for interacting with YouTrack API
Development and extension
To add new tools or resources, use the @mcp.tool() and @mcp.resource() decorators in the server.py file.
Example of adding a new tool:
@mcp.tool()
def youtrack_create_issue(project_id: str, summary: str, description: str = None) -> Dict[str, Any]:
"""
Create a new issue in YouTrack.
Args:
project_id: The ID of the project
summary: Issue summary
description: Optional issue description
"""
# Add implementation here
return {"status": "success", "issue_id": "PROJECT-123"}
Metadata
Release files for youtrack-mcp 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| youtrack_mcp-0.2.0.tar.gz | 14.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| youtrack_mcp-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 30.4 kB
Release files / youtrack_mcp-0.2.0.tar.gz
| Download URL | youtrack_mcp-0.2.0.tar.gz |
|---|---|
| Size | 14.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6d0e93a28c59f7cc29726cb829c9ddb8547022bedb3a1b677f5a16f924db5ab8
|
|
BLAKE2b-256 checksum How to use checksums |
f038513f318ba32c5d434d1044156e203f5f9662907327f55dea0ea4fd641c81
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|
Release files / youtrack_mcp-0.2.0-py3-none-any.whl
| Download URL | youtrack_mcp-0.2.0-py3-none-any.whl |
|---|---|
| Size | 15.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8d0acfdec9c8b16a29ac2d90042dfb7c5ef9c586606853e5a117b28315ff433a
|
|
BLAKE2b-256 checksum How to use checksums |
589b30089bb4f525fbf71c570ae2ec22454d79b7e97c45437ebe2bcdd4aae939
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|