A side-by-side look at the OpenProject and Yandex Tracker MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose OpenProject for product management work as a local process; choose Yandex Tracker for product management over a hosted endpoint. You can also run both side by side in one mcpServers block.
OPENPROJECT_URL, OPENPROJECT_API_KEY.search_work_packages, list_work_packages, get_work_package.TRACKER_TOKEN, TRACKER_ORG_ID.find_issues, count_issues, create_issue.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Product Management | Product Management |
| Quality signal | 53/100 · Good | 63/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Remote HTTP/SSE |
| Auth | Not declared | API key required |
| Pricing | Not declared | Not declared |
| Required env vars | OPENPROJECT_URLOPENPROJECT_API_KEY | TRACKER_TOKENTRACKER_ORG_ID |
| Verified owner | Community listing | Community listing |
| GitHub stars | 4 | 1 |
| Directory activity | 0 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 80 | 187 |
| Full listing | View OpenProject | View Yandex Tracker |
search_work_packagesFind work packages by text when you do not know their ids.list_work_packagesList work packages with structured filters — the workhorse read tool.get_work_packageRead one work package in full: description, dates, custom fields, parent and progress.create_work_packageCreate a work package, validated through OpenProject's own form endpoint first.update_work_packageChange any writable field of a work package, with optimistic locking.bulk_update_work_packagesPreview or apply up to 50 updates with per-item diffs, validation and conflict results.delete_work_packagePermanently delete a work package and everything attached to it.list_work_package_commentsRead the comment thread and change history of a work package.add_work_package_commentPost a comment on a work package.edit_work_package_commentRewrite the text of an existing work-package comment.add_work_package_watcherSubscribe a user to a work package's notifications.remove_work_package_watcherUnsubscribe a user from a work package's notifications.find_issuesFind issues in Yandex Tracker. Pass exactly ONE search parameter: "queue" (queue key), "keys" (list of issue keys), "filter" (field->value object), "query" (Tracker query language string, e.g. "Queue: TREK Assignee: me()"), "query2" (query language 2.0 object) or "filterId" (saved filter id). Supports pagination via perPage/page.count_issuesGet the number of issues matching a filter or query.create_issueCreate a new issue in Yandex Tracker. Requires queue key and summary. Text fields support Yandex Flavored Markdown.get_issueGet issue parameters by key or id, e.g. "TREK-123".edit_issueEdit an existing issue (PATCH): only provided fields are changed. For array fields you may pass "add"/"remove"/"set"/"replace" commands via extraFields, e.g. extraFields={"tags": {"add": ["new-tag"]}}.move_issueMove an issue to a different queue. Components, versions and projects are cleared by default (use moveAllFields to keep them). Local fields of the old queue are removed.get_issue_transitionsList workflow transitions available for the issue (with target statuses). Use transition ids with execute_transition.execute_transitionMove an issue to a new status by executing a workflow transition. First get available transitions via get_issue_transitions. Some transitions (e.g. "close") require a resolution via extraFields, e.g. {"resolution": "fixed"}.get_issue_linksList links of an issue (related, dependent, subtask, duplicate, epic links). Pass perPage/page for the paginated variant.release_search_scrollFree scroll-search resources when you stopped paging through a scrolled find_issues result. Body: {"<scrollId>": "<scrollToken>"} for every page you opened.create_issue_linkCreate a link between the current issue and another issue.delete_issue_linkDelete a link between issues by link id (see get_issue_links).Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"openproject": {
"command": "uvx",
"args": [
"openproject-mcp-server"
],
"env": {
"OPENPROJECT_URL": "YOUR_OPENPROJECT_URL_HERE",
"OPENPROJECT_API_KEY": "YOUR_OPENPROJECT_API_KEY_HERE"
}
}
}
}
{
"mcpServers": {
"yandex-tracker": {
"url": "https://api.tracker.yandex.net/v3"
}
}
}