retro
QRetro: ретроспективы и planning poker команды прямо из ассистента
Что умеет
- Смотреть доски ретроспектив и их сводки
- Создавать и завершать action items
- Запускать игры planning poker и добавлять задачи
- Продвигать или отклонять предложенные действия
Какие данные видит
Ассистент работает с досками и командами, к которым у пользователя есть доступ в QRetro.
Нужен ли аккаунт
Не нужен: сервер работает без входа
MCP-сервер QRetro даёт доступ к командным ретроспективам и planning poker: можно смотреть доски, action items, инсайты и запускать покер-оценку задач. Подходит скрам-мастерам и командам, которые ведут ретро в цифровом формате.
Как подключить
Как подключить retro к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://mcp.qretro.com
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить retro к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://mcp.qretro.com
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить retro к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://mcp.qretro.com
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (29)
Технические названия из tools/list. Нужны только разработчикам.
| retro.teams.list | Returns the list of teams the user belongs to. boards_count is the total number of boards in a team, finished and unfinished alike — use retro.boards.list to tell them apart. |
| retro.team.members.list | Returns the members of a team with their id, name and role (owner, admin, facilitator, member). Use the id as assign_to in retro.actions.create, retro.actions.update and retro.board.suggested_actions.promote. This is the team roster, the same one people see in team settings — it says nothing about who wrote which card. Pass team_id when several teams are available; with a single team it can be omitted. |
| retro.boards.list | Returns retrospectives (boards) of a team, newest first. Unfinished boards are included unless finished_only is set — otherwise check the is_finished flag. Filters by period via since/until. Pass team_id when several teams are available; with a single team it can be omitted. |
| retro.actions.list | Returns action items across all retrospectives at once — the answer to "what did we agree on and never finish". Covers every team available unless team_id narrows it down; filters by status, assignee and date. Use this instead of walking boards one by one with retro.board.actions.list. |
| retro.board.messages.list | Returns all participant messages (cards) for a retrospective board, organized by template columns (e.g. "What went well", "What didn't go well"). Includes text, sentiment, category, grouping, and vote counts. |
| retro.board.messages.update | Updates the text of an existing board message created by the current MCP user. |
| retro.board.messages.delete_own | Deletes a single board message. Access is strictly governed by API policies: users can delete their own messages, or any message if they have board update rights (requires mcp:write scope for the latter). |
| retro.board.summary.get | Returns the summary of a retrospective with participant info and metadata. Works for unfinished boards too — summary is null until the retro is wrapped up, so check is_finished. |
| retro.board.actions.list | Returns action items from a retrospective board, including status, priority, assignee, and due date. |
| retro.board.insights.list | Returns insights (clusters) and suggested actions for a retrospective board. Insights include topic clusters with sentiment, urgency, and category analysis. |
| retro.board.health.get | Returns the health check of a retrospective: score per category on a 0-10 scale, alignment between participants, turnout, and the same score across the previous retrospectives of the team. Returns health_check: null when the team did not run a health check on this board. |
| retro.board.roti.get | Returns ROTI (Return on Time Invested) voting metrics for a retrospective board, including average score, distribution, and trend across previous retrospectives. |
| retro.boards.search | Search across retrospectives by keyword: board summaries, action items and participant cards. Cards hidden by private writing during an ongoing retro are excluded. Optionally filter by team. |
| retro.actions.create | Creates a new action item on a retrospective board. Requires mcp:write scope. |
| retro.actions.update | Updates an existing action item: text, priority, due date, or assignee. Requires mcp:write scope. |
| retro.actions.complete | Marks an action item as completed. Requires mcp:write scope. |
| retro.board.suggested_actions.promote | Turns a pending suggested action from retro.board.insights.list into a real action item on the board and marks the suggestion accepted, keeping the wording and the link to its cluster. Requires mcp:write scope. |
| retro.board.suggested_actions.reject | Rejects a pending suggested action from retro.board.insights.list: the suggestion moves to rejected and no action item is created. Requires mcp:write scope. |
| poker.sources.list | Returns the issue trackers connected to a team (Jira, Linear) and what each of them can do: search for tasks, list iterations (sprints, cycles), write estimates back. Call this first — the other poker tools depend on what is connected. An empty list means tasks can only be added manually with poker.game.tasks.add. |
| poker.iterations.list | Returns the iterations of a connected issue tracker — Jira sprints (active and upcoming), and whatever a future tracker calls the same thing. Filter by name with query, for example "AFT 50". Pass the ref of the iteration you want to poker.game.tasks.import to pull its tasks into a game. Trackers without iteration support (currently Linear) return an empty list — search by text instead. |
| poker.games.list | Returns the planning poker games of a team, newest first, with how many tasks each of them has and how many already carry an estimate. Personal games outside a team are not exposed over MCP. |
| poker.game.get | Returns one planning poker game: its estimation scale, progress, the task currently on the table and the link participants use to join. Use poker.game.tasks.list for the tasks themselves. |
| poker.game.tasks.list | Returns the tasks of a poker game with their estimate, individual votes, tracker key and link. needs_sync tells whether the agreed estimate still differs from the one stored in the tracker — feed those tasks to poker.game.task.sync. Filter with estimated to see what is done or what is left. |
| poker.games.create | Creates a planning poker game for a team and returns the link participants join with. Pick a ready-made scale — fibonacci, modified_fibonacci, tshirts, powers_of_two — or pass your own values in scale_values. Requires mcp:write scope. |
| poker.game.tasks.add | Adds tasks to a poker game by hand — for work that lives outside an issue tracker, or when no tracker is connected. To pull tasks from Jira or Linear use poker.game.tasks.import instead. Requires mcp:write scope. |
| poker.game.tasks.import | Pulls tasks from a connected issue tracker into a poker game. Give it either iteration_ref from poker.iterations.list to take a whole sprint, or query to search by text and issue key. Tasks already in the game are skipped. Only the team owner can change a game. Requires mcp:write scope. |
| poker.game.task.select | Puts a task on the table: everyone looking at the game sees it as the one being estimated right now. Only the team owner can change a game. Requires mcp:write scope. |
| poker.game.task.reveal | Reveals the cards of a task and computes its estimate from the votes cast — this is the only way an estimate appears, there is no way to set a number directly. Pass reveal=false to hide the cards again and drop the estimate, which also clears the votes for a re-vote. Only the team owner can change a game. Requires mcp:write scope. |
| poker.game.task.sync | Writes the agreed estimate back to the issue tracker — Jira story points, Linear estimate. Works only for tasks imported from a tracker and only when the integration was connected with write permissions; poker.sources.list shows whether it was. Only the team owner can change a game. Requires mcp:write scope. |