Integration

YouTrack integration

YouTrack is JetBrains' issue tracker and project management tool, in the cloud (youtrack.cloud) or on your own server. Search, count, create, update and delete issues, apply commands, set custom fields, comment, react, link, tag, move between projects, log time and attach files; manage knowledge base articles, agile boards and sprints, tags and saved searches; read issue history, users, groups, projects, link types and the allowed values of custom fields, and add versions and builds to their bundles. Every read needs the fields parameter: YouTrack returns only ids otherwise. Other administration (global settings, licence, backups, roles, permissions, project and custom field setup, user and group management) and VCS changes are not exposed. Authentication: your YouTrack address and a permanent token, sent as a Bearer token.

Ask it in chat

Say what should happen.
The workflow builds itself.

When this happens, do that in YouTrack.Built from the 117 YouTrack tools below, on the connection you add once.

What you can do with YouTrack

Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.

Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.

Tag, 12 operations

  • add_article_tagAdd article tagPOSTTag an article with an existing tag: send the tag's database id as id (from list_tags).
  • add_issue_tagAdd issue tagPOSTTag an issue with an existing tag: send the tag's database id as id (from list_tags). The user must own the tag or be allowed to use it.
  • create_tagCreate tagPOSTCreate a tag. Send name; optionally color, sharing groups and untagOnResolve.
  • delete_tagDelete tagDELETEDelete a tag for good; it disappears from every issue and article that carries it.
  • get_tagGet tagGETRead a tag: name, owner, color, sharing and untagOnResolve.
  • list_article_tagsList article tagsGETList the tags on a knowledge base article.
  • list_issue_tagsList issue tagsGETList the tags on an issue that the token's user can see.
  • list_tagsList tagsGETList the tags the token's user can see: name, owner, color and sharing. A tag id is what add_issue_tag takes.
  • list_user_tagsList user tagsGETList the tags that belong to a user.
  • remove_article_tagRemove article tagDELETERemove a tag from an article (the tag itself is kept).
  • remove_issue_tagRemove issue tagDELETERemove a tag from an issue (the tag itself is kept).
  • update_tagUpdate tagPOSTChange a tag's name, color, sharing or untagOnResolve. Only the attributes sent change. Needs ownership or the tag's edit group.

Comment, 10 operations

  • add_article_commentAdd article commentPOSTAdd a comment to a knowledge base article. Send text.
  • add_issue_commentAdd issue commentPOSTAdd a comment to an issue; YouTrack sends its usual notifications unless muteUpdateNotifications is true. Send text.
  • delete_article_commentDelete article commentDELETEDelete a comment on an article, for good.
  • delete_issue_commentDelete issue commentDELETEDelete a comment of an issue completely from the database. Own comments need Delete Comment, others' Delete Not Own Comment.
  • get_article_commentGet article commentGETRead one comment of an article: text, author, dates and visibility.
  • get_issue_commentGet issue commentGETRead one comment of an issue: text, author, dates, visibility and attachments.
  • list_article_commentsList article commentsGETList the comments on a knowledge base article: text, author, dates and visibility.
  • list_issue_commentsList issue commentsGETList the comments of an issue that the token can see: text, author, created and updated times, visibility and attachments.
  • update_article_commentUpdate article commentPOSTChange the text, pin or visibility of a comment on an article. Only the attributes sent change.
  • update_issue_commentUpdate issue commentPOSTChange a comment's text, pin or visibility. Only the attributes sent change. Own comments need Update Comment, others' Update Not Own Comment.

Issue, 10 operations

  • add_issue_linkAdd issue linkPOSTLink another issue to this one with one link type and direction: send the other issue's database id as id. issueLinkId comes from list_issue_links.
  • create_issueCreate issuePOSTCreate an issue in a project: send project ({"id": "0-0"}) and summary, optionally description and customFields. Returns only the id unless fields is sent.
  • delete_issueDelete issueDELETEDelete an issue for good, with its comments, attachments and work items. This cannot be undone. Requires the Delete Issue permission.
  • get_issueGet issueGETRead one issue: summary, description, readable id, project, reporter, created, updated and resolved times, custom field values and links, as selected by fields.
  • list_issuesList issuesGETSearch issues with a YouTrack query (for example "project: SP #Unresolved for: me"), newest update first. Returns the fields named in fields; send fields or only ids come back.
  • list_linked_issuesList linked issuesGETList the issues linked to an issue through one link type and direction (issueLinkId from list_issue_links, such as 80-1s).
  • list_project_issuesList project issuesGETList the issues of one project, newest update first.
  • list_tag_issuesList tag issuesGETList the issues that carry a tag.
  • remove_issue_linkRemove issue linkDELETERemove the link between this issue and another one, for one link type and direction. The issues themselves are kept.
  • update_issueUpdate issuePOSTChange an issue: summary, description, visibility or custom field values. Only the attributes sent are changed. Returns only the id unless fields is sent.

Attachment, 7 operations

  • delete_article_attachmentDelete article attachmentDELETEDelete a file attached to an article, for good.
  • delete_issue_attachmentDelete issue attachmentDELETEDelete a file attached to an issue, for good. The author can always delete it; others need the Delete Attachment permission.
  • get_article_attachmentGet article attachmentGETRead one attachment of an article: name, size, MIME type, author, dates and its signed download url.
  • get_issue_attachmentGet issue attachmentGETRead one attachment of an issue: name, size, MIME type, author, dates and its signed download url (relative to your YouTrack address).
  • list_article_attachmentsList article attachmentsGETList the files attached to an article: name, size, MIME type, author, dates and url (a signed relative link under your YouTrack address).
  • list_issue_attachmentsList issue attachmentsGETList the files attached to an issue: name, size, MIME type, author, dates and url (a signed relative link under your YouTrack address).
  • upload_issue_attachmentUpload issue attachmentPOSTAttach a file to an existing issue (multipart upload). Returns the created attachments; send fields (for example id,name,size,url) to read them.

Custom field, 7 operations

  • get_custom_fieldGet custom fieldGETRead one custom field definition: name, field type and settings.
  • get_issue_custom_fieldGet issue custom fieldGETRead one custom field of an issue and its current value.
  • get_project_custom_fieldGet project custom fieldGETRead one custom field of a project: its field, bundle (the allowed values), default values and settings.
  • list_custom_fieldsList custom fieldsGETList every custom field defined in YouTrack: name, field type, and the number of projects using it.
  • list_issue_custom_fieldsList issue custom fieldsGETList the custom fields of an issue (Priority, State, Assignee, Fix versions...) with their current value. Use an entry's id with update_issue_custom_field.
  • list_project_custom_fieldsList project custom fieldsGETList the custom fields of a project (name, type, bundle of allowed values, default values, can be empty). Use it before setting customFields on issues.
  • update_issue_custom_fieldUpdate issue custom fieldPOSTSet one custom field of an issue: value {"name": "Normal"} for an enum or state field, {"login": "jane.doe"} for a user field, a list for a multi-value field.

Value, 7 operations

  • add_build_bundle_valueAdd build bundle valuePOSTAdd a build to a build bundle, so it can be chosen in fields such as Fixed in build. Send name. Needs Update Project in the projects using the bundle.
  • add_version_bundle_valueAdd version bundle valuePOSTAdd a version to a version bundle, so it can be chosen in Fix versions and similar fields. Send name. Needs Update Project in the projects using the bundle.
  • list_build_bundle_valuesList build bundle valuesGETList the builds in a build bundle (the choices of a field such as Fixed in build). Bundle id from list_project_custom_fields.
  • list_enum_bundle_valuesList enum bundle valuesGETList the values of an enum bundle (the choices of a field such as Priority or Type). The bundle id comes from list_project_custom_fields (bundle.id).
  • list_owned_field_bundle_valuesList owned field bundle valuesGETList the values of an owned-field bundle (such as Subsystem), each with its owner. Bundle id from list_project_custom_fields.
  • list_state_bundle_valuesList state bundle valuesGETList the values of a state bundle (the states of a State field), with whether each one counts as resolved. Bundle id from list_project_custom_fields.
  • list_version_bundle_valuesList version bundle valuesGETList the versions in a version bundle (Fix versions, Affected versions), with release flags and dates. Bundle id from list_project_custom_fields.

Work item, 7 operations

  • add_issue_work_itemAdd issue work itemPOSTLog time on an issue: send duration ({"minutes": 90} or {"presentation": "1h 30m"}), optionally date, text and type.
  • delete_issue_work_itemDelete issue work itemDELETEDelete a time entry (work item) of an issue, for good.
  • get_issue_work_itemGet issue work itemGETRead one time entry (work item) of an issue: duration, date, author, creator, type and text.
  • get_work_itemGet work itemGETRead one time entry (work item): duration, date, author, creator, type, text and issue.
  • list_issue_work_itemsList issue work itemsGETList the time entries (work items) of an issue: duration, date, author, type and text.
  • list_work_itemsList work itemsGETList time entries (work items) across issues, filtered by issue query, dates, author or creator. Durations are in minutes.
  • update_issue_work_itemUpdate issue work itemPOSTChange a time entry of an issue: duration, date, text or type. Only the attributes sent change.

Article, 6 operations

  • create_articleCreate articlePOSTCreate a knowledge base article in a project: send project ({"id": "81-1"}) and summary, optionally content (Markdown).
  • delete_articleDelete articleDELETEDelete a knowledge base article for good. This cannot be undone. Requires the Delete Article permission.
  • get_articleGet articleGETRead one knowledge base article: summary, content, readable id, project, reporter and dates, as selected by fields.
  • list_articlesList articlesGETList the knowledge base articles the token can read: summary, readable id, project, reporter, dates, as selected by fields.
  • list_project_articlesList project articlesGETList the knowledge base articles of one project.
  • update_articleUpdate articlePOSTChange an article's summary, content, visibility or parent. Only the attributes sent change.

Saved query, 6 operations

  • create_saved_searchCreate saved searchPOSTSave a search: send name and query (YouTrack search syntax); optionally share it with groups.
  • delete_saved_searchDelete saved searchDELETEDelete a saved search for good.
  • get_saved_searchGet saved searchGETRead a saved search: name, query, owner and sharing.
  • list_saved_searchesList saved searchesGETList the saved searches the token's user can see: name, query, owner and sharing.
  • list_user_saved_searchesList user saved searchesGETList the saved searches a user created.
  • update_saved_searchUpdate saved searchPOSTChange a saved search's name, query or sharing. Only the attributes sent change.

Sprint, 6 operations

  • create_sprintCreate sprintPOSTCreate a sprint on an agile board: send name, optionally goal and start and finish dates (milliseconds).
  • delete_sprintDelete sprintDELETEDelete a sprint from an agile board, for good (its issues are kept).
  • get_sprintGet sprintGETRead one sprint of an agile board (use current as sprintId for the board's current sprint): name, goal, dates, issues.
  • list_issue_sprintsList issue sprintsGETList the agile board sprints an issue is in, with their names, dates and board.
  • list_sprintsList sprintsGETList the sprints of an agile board: name, goal, start and finish dates, archived flag.
  • update_sprintUpdate sprintPOSTChange a sprint (current works as sprintId): name, goal, dates, archived or default flag. Only the attributes sent change.

Agile, 5 operations

  • create_agile_boardCreate agile boardPOSTCreate an agile board: send name and projects ([{"id": "0-0"}]); template picks the board type (scrum, kanban, version, custom, personal).
  • delete_agile_boardDelete agile boardDELETEDelete an agile board for good (its issues are kept).
  • get_agile_boardGet agile boardGETRead the settings of an agile board: name, owner, projects, columns, swimlanes and status.
  • list_agile_boardsList agile boardsGETList the agile boards the token can see: name, owner, projects, sprints and current sprint.
  • update_agile_boardUpdate agile boardPOSTChange an agile board's name, owner, projects, sharing or estimation fields. Only the attributes sent change.

Project, 4 operations

  • get_issue_projectGet issue projectGETRead the project an issue belongs to: id, name and short name.
  • get_projectGet projectGETRead one project: name, short name, description, leader and archived flag. Requires Read Project Basic or Update Project.
  • list_projectsList projectsGETList the projects the token can see: database id (for create_issue), name, short name, leader and archived flag.
  • move_issue_to_projectMove issue to projectPOSTMove an issue to another project: send the target project's database id as id. The issue gets a new readable id in that project.

User, 4 operations

  • get_userGet userGETRead one user: login, full name, email (personal data), banned and guest flags.
  • list_project_team_usersList project team usersGETList every user in a project's team, including members of groups added to the team: logins and names (personal data).
  • list_user_group_membersList user group membersGETList all members of a user group, including members of its sub-groups: logins and names (personal data).
  • list_usersList usersGETList the YouTrack users: login, full name, email (personal data), whether banned or guest, as selected by fields.

Activity, 3 operations

  • get_activityGet activityGETRead one activity item: its category, author, timestamp, target and the values added and removed.
  • list_activitiesList activitiesGETRead recent activity across issues (created issues, comments, field changes...) for the categories asked for; issueQuery narrows to matching issues.
  • list_issue_activitiesList issue activitiesGETRead the history of one issue (created, comments, field changes, links and more) for the activity categories asked for. Send categories and fields.

Reaction, 3 operations

  • add_issue_comment_reactionAdd issue comment reactionPOSTAdd a reaction from the token's user to a comment, for example reaction=thanks.
  • list_issue_comment_reactionsList issue comment reactionsGETList the reactions (emoji such as thanks) added to a comment, with their authors.
  • remove_issue_comment_reactionRemove issue comment reactionDELETERemove a reaction from a comment. Only the author of the reaction can remove it.

Activities page, 2 operations

  • get_activity_pageGet activity pageGETRead one page of activity across issues, with beforeCursor and afterCursor to page on. Send categories and fields.
  • get_issue_activity_pageGet issue activity pageGETRead one page of an issue's history, with beforeCursor and afterCursor to page on. Send categories (for example CommentsCategory) and fields.

Assist, 2 operations

  • suggest_commandSuggest commandPOSTPreview a command without applying it: returns YouTrack's suggestions and the parsed commands for a query (for example "State F") on the given issues.
  • suggest_search_querySuggest search queryPOSTGet completion suggestions for a search query being typed (for example "project: S"), the way YouTrack's search box does. Changes nothing.

Child article, 2 operations

  • add_child_articleAdd child articlePOSTFile an existing article under this one as a sub-article: send the sub-article's database id as id. Needs Update Article on both articles.
  • list_child_articlesList child articlesGETList the sub-articles of an article.

Group, 2 operations

  • get_user_groupGet user groupGETRead one user group: name, description and member count.
  • list_user_groupsList user groupsGETList the user groups: name, description, number of members. Needs the Read Groups feature, Update Project or Low-Level Admin Read.

Issue link type, 2 operations

  • get_issue_link_typeGet issue link typeGETRead one issue link type: name, outward and inward wording, directed and aggregation flags.
  • list_issue_link_typesList issue link typesGETList the issue link types (Relates, Depend, Duplicate, Subtask...): name, outward and inward wording, directed flag.

Work item type, 2 operations

  • list_project_work_item_typesList project work item typesGETList the work item types (Development, Testing...) available for time entries in a project. Their ids are what add_issue_work_item takes as type.
  • list_work_item_typesList work item typesGETList the work item types defined globally for time tracking (Development, Testing...).

Aggregated user, 1 operation

  • list_user_bundle_usersList user bundle usersGETList every user a user field (such as Assignee) can take, from individual users and groups. Bundle id from list_project_custom_fields.

Command, 1 operation

  • apply_commandApply commandPOSTApply a YouTrack command to issues, as typed in the UI (for example "State Fixed", "for me", "relates to NP-92", "tag Release"). It changes the issues for real.

Count, 1 operation

  • count_issuesCount issuesPOSTCount the issues a YouTrack search query matches, without listing them (send fields=count). A count of -1 means YouTrack has not finished counting: call again after a moment.

Link, 1 operation

  • list_issue_linksList issue linksGETList the link types of an issue (relates to, depends on, subtask of...), each with its direction, its id (such as 80-1s) and the issues linked that way.

Me, 1 operation

  • get_current_userGet current userGETRead the user the token belongs to: login, full name, email and flags. Use it to check the connection.

Parent article, 1 operation

  • get_parent_articleGet parent articleGETRead the parent article of an article (empty for a top-level article).

Time tracking, 1 operation

  • get_issue_time_trackingGet issue time trackingGETRead whether time tracking is enabled for an issue, with its work items when fields asks for them (for example workItems(duration(minutes),date)).

Time tracking settings, 1 operation

  • get_project_time_tracking_settingsGet project time tracking settingsGETRead a project's time tracking settings: whether it is enabled and which fields hold estimation and spent time.

Use YouTrack from Claude Code, Cursor or Codex

Connect YouTrack in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its YouTrack operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect YouTrack

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect YouTrack once

    Add your YouTrack connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. Describe the job in chat

    The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.

YouTrack integration FAQ

What can you do with the YouTrack integration?

LiveContext exposes 117 operations on YouTrack, covering tag, comment, issue and attachment.

Popular integrations

Browse the whole catalog