Skip to main content
Glama

Core MCP

MCP-инструменты, которые превращают тикеты Jira в PR через Claude Code. Получают контекст из Jira, GitHub, Notion и Slack, строят структурированные промпты, выполняют git push/PR/CI — всё автономно.

Настройка (5 минут)

1. Установка

git clone https://github.com/adaOctopus/coolplugz-core.git
cd coolplugz-core
npm install

2. Создайте свой .env

cp .env.example .env

Откройте .env и заполните:

Обязательные:

Переменная

Где её взять

GITHUB_TOKEN

github.com/settings/tokens → Создать классический токен → отметьте repo + workflow

SHELL_ENV

Ваше окружение разработки: wsl2, macos, linux, git-bash или powershell

REPOS_ROOT

Абсолютный путь, где находятся ваши репозитории, например /home/you/projects

Необязательные (но рекомендуемые):

Переменная

Где её взять

JIRA_API_TOKEN

id.atlassian.com/manage-profile/security/api-tokens

JIRA_EMAIL

Email вашей учётной записи Atlassian

JIRA_BASE_URL

URL вашего рабочего пространства, например https://yourteam.atlassian.net

NOTION_TOKEN

notion.so/my-integrations → Создать интеграцию → скопировать токен

SLACK_TOKEN

api.slack.com/apps → Создать приложение → Bot Token с правами channels:history, search:read

ANTHROPIC_API_KEY

Включает AI-определение репозитория по тексту тикета и умные черновики ответов в Slack

WSL_DISTRO

Только если SHELL_ENV=wsl2 — имя вашего дистрибутива (например, Ubuntu)

3. Запустите сервер

npm run dev

Вы должны увидеть:

CoolPlugz Core MCP server listening on :3100

4. Подключите к Claude Code (один раз)

claude mcp add coolplugz --transport http http://localhost:3100/mcp

5. Используйте

Откройте Claude Code и скажите:

Show my dashboard
Start PROJ-142

Всё. CoolPlugz сделает остальное.


Related MCP server: github-workflow-mcp

Что происходит при использовании

You: "Start PROJ-142"

CoolPlugz:
  ├── Fetches Jira ticket (description, acceptance criteria, comments)
  ├── Checks GitHub for existing branches/PRs
  ├── Pulls linked Notion specs
  ├── Finds relevant Slack mentions
  ├── Figures out which repo (from ticket links or fuzzy matching)
  ├── Builds a CRISPE implementation prompt
  └── Returns loop metadata → Claude Code knows exactly what to do next

Claude Code: writes the code, runs tests

You: (or Claude Code automatically calls push_branch)

CoolPlugz:
  ├── Pushes via token-authenticated HTTPS (no SSH needed)
  ├── Handles fork detection/creation automatically
  └── Returns next action → verify_and_submit

CoolPlugz (verify_and_submit):
  ├── Verifies push landed on GitHub (via API, not trusting output)
  ├── Opens PR with correct title/body
  ├── Polls CI for up to 5 minutes
  ├── If CI passes + no review comments → auto-marks DONE
  ├── If CI fails → fetches failure logs, tells Claude Code to fix
  └── If review comments → fetches them, tells Claude Code to address

Доступные инструменты

Инструмент

Что делает

get_dashboard

Показывает все ваши задачи со статусами, PR и блокерами

start_task

Получает весь контекст для тикета Jira и возвращает промпт для реализации

push_branch

Пушит вашу ветку на GitHub — обрабатывает аутентификацию, форки, всё

verify_and_submit

Проверяет пуш, создаёт PR, опрашивает CI, автоматически завершает, если всё зелёное

check_comments

Получает нерешённые комментарии к PR для обработки

complete_task

Отмечает задачу выполненной после проверки

get_task_state

Показывает фактическое состояние из хранилища + GitHub API

check_conflicts

Обнаруживает конфликты слияния и даёт шаги для их решения

add_insight

Добавляет пользовательскую инструкцию, которая будет включена во все будущие промпты

morning_report

Генерирует форматированный отчёт о статусе: выполненные задачи, PR, результаты CI, черновики Slack

log_run

Отслеживает начало/конец запуска — питает morning_report реальными данными каждого запланированного запуска

Пользовательские инструкции

Скажите Claude Code добавить инструкции, которые CoolPlugz будет включать в каждый будущий промпт:

"Add an insight: always use pnpm, never npm or yarn"
"Add an insight: this repo uses Tailwind, no inline styles"
"Add an insight for PROJ-142: the auth module uses Passport.js"

Глобальные инсайты применяются ко всем задачам. Инсайты, привязанные к задаче, применяются к одному тикету. Хранятся в ~/.coolplugz/data.json и сохраняются между сессиями.

Как работает конструктор промптов

Каждый start_task строит структурированный промпт по фреймворку CRISPE:

Секция

Что в ней

[C] Capacity

Роль, репозиторий, ветка, настройка рабочего пространства (WSL2/macOS/Linux), локальные пути

[R] Insight

Полное описание тикета, критерии приёмки, комментарии Jira, спецификации Notion, контекст Slack, комментарии к PR

[I] Statement

Конкретная инструкция по реализации

[S] Personality

Стиль кода, соглашения о коммитах (feat(PROJ-142): ...), правила общения

[P] Experiment

Разрешения на автономное выполнение, инструкции по циклу разработки, ограничения безопасности

[F] Fence

Никогда не удалять, не пушить в main, не коммитить секреты

[Q] Quality

Безопасность типов, хирургические изменения, безопасность по умолчанию

[D] Developer insights

Ваши пользовательские инструкции (из add_insight)

[E] Error context

Детали предыдущих ошибок при повторных попытках

Цикл разработки

Каждый ответ инструмента несёт структурированные метаданные вместо чек-листов в свободной форме:

State: EXECUTING → Goal: DONE
Next: push_branch({ jiraKey: "PROJ-142", branch: "proj-142-impl", repo: "org/repo" })

Claude Code читает это и автоматически вызывает следующий инструмент. Конечный автомат:

IDLE → start_task → EXECUTING → push_branch → PUSHED → verify_and_submit
  → CI passed, no comments → DONE ✅
  → CI failed → fix code → push_branch → verify_and_submit (loop)
  → Review comments → fix → push_branch → verify_and_submit (loop)

Промпт автопилота

Когда всё подключено, вставьте этот промпт в Claude Code, чтобы он автоматически выполнял ваши тикеты — проходя по Jira, пиша код, пуша PR и публикуя обновления в Slack:

You are my autonomous dev agent. Use the coolplugz MCP tools to work through my Jira tickets without asking me anything.

Your loop:
1. Call get_dashboard to see all tasks and their status
2. For any task in QUEUED or EXECUTING state, call start_task with its Jira key
3. Follow the loop metadata exactly — the _meta.loop in each response tells you the next tool to call
4. After writing code and running tests, call push_branch to push
5. Call verify_and_submit — it opens the PR, polls CI, and tells you what to do next
6. If CI fails, read the failure logs, fix the code, and push again
7. If there are review comments, call check_comments, address them, push again
8. When done with a task, move to the next one from the dashboard
9. After completing all tasks, post a summary of what you did

Rules:
- Never ask me for confirmation — just do it
- Never push to main — always use feature branches
- Never commit secrets or .env files
- If you get stuck after 3 retries, mark it blocked and move on
- Commit messages follow: feat(TICKET-KEY): description

Запланируйте (работает даже при закрытом ноутбуке)

Вставьте это в Claude Code, чтобы настроить ежедневное расписание для автоматического выполнения тикетов:

Set up a scheduled task using /schedule that runs every weekday:

- 6:00 AM: Morning run
  1. Call log_run with action "start" and trigger "morning" — save the run_id
  2. Call get_dashboard to see all tasks
  3. For every QUEUED ticket, call start_task with its Jira key
  4. Follow the loop metadata for each: code → push_branch → verify_and_submit
  5. If CI fails, fix and retry up to 3 times
  6. When all tasks are processed, call log_run with action "finish", the run_id, and all task_results
  7. Call morning_report with mode "latest" and slack_channels ["standup", "engineering"]
  8. Show me the full report output

- 12:00 PM: Midday check
  1. Call log_run with action "start" and trigger "midday"
  2. Call get_dashboard — for any task stuck in EXECUTING or CI_FAILED, retry it
  3. For tasks with review comments, call check_comments, address them, push again
  4. Call log_run with action "finish" with results
  5. Call morning_report with mode "latest"

- 5:00 PM: End of day
  1. Call log_run with action "start" and trigger "evening"
  2. Call get_dashboard and process any remaining tasks
  3. Call log_run with action "finish" with results
  4. Call morning_report with mode "today" and slack_channels ["standup", "engineering", "product"]
  5. Show me the full report — I want to see what got done today

Rules for all runs:
- Use the coolplugz MCP tools
- Never ask for confirmation — just do it
- Never push to main — always feature branches
- Never commit secrets or .env files
- If stuck after 3 retries, mark blocked and move on
- Commit messages: feat(TICKET-KEY): description
- Always call log_run start/finish so morning_report has real data

Просмотр отчёта в любое время

Вы также можете вызвать отчёт вручную в Claude Code:

Call morning_report with mode "today" and slack_channels ["standup", "engineering"]

Режимы:

  • latest — показывает результаты последнего запуска (по умолчанию)

  • today — показывает все задачи, обновлённые сегодня

  • full — показывает всё в хранилище

Справочник переменных окружения

Обязательные

Переменная

Что делает

Как получить

GITHUB_TOKEN

Пушит ветки, открывает PR, читает состояние репозитория, опрашивает CI

github.com/settings/tokens → Создать классический токен → отметьте repo + workflow

SHELL_ENV

Сообщает CoolPlugz, как выполнять shell-команды в вашем окружении

Одно из: wsl2, macos, linux, git-bash, powershell

REPOS_ROOT

Где локально клонированы ваши репозитории

Абсолютный путь, например /home/you/projects или C:\Users\you\repos

Jira (включает контекст тикета)

Переменная

Что делает

Как получить

JIRA_API_TOKEN

Получает описание тикета, критерии приёмки, комментарии

id.atlassian.com/manage-profile/security/api-tokens → Создать API-токен

JIRA_EMAIL

Аутентификация в Jira (Basic auth = email:token)

Email вашей учётной записи Atlassian

JIRA_BASE_URL

URL вашего экземпляра Jira

например https://yourteam.atlassian.net

GitHub (уже покрыт GITHUB_TOKEN выше)

GITHUB_TOKEN обрабатывает всё: чтение репозиториев, пуш веток, открытие PR, опрос статуса CI, получение комментариев к ревью, обнаружение форков.

Необходимые области: repo (полный доступ к репозиторию) + workflow (запуск/чтение CI)

Notion (включает получение спецификаций)

Переменная

Что делает

Как получить

NOTION_TOKEN

Подтягивает связанные документы Notion в промпт CRISPE как справочный контекст

notion.so/my-integrations → Создать интеграцию → Скопировать "Internal Integration Secret" → Поделиться целевыми страницами с интеграцией

Slack (включает отслеживание упоминаний + черновики ответов)

Переменная

Что делает

Как получить

SLACK_TOKEN

Отслеживает упоминания ваших тикетов в Slack, создаёт черновики AI-ответов

api.slack.com/apps → Создать новое приложение → OAuth & Permissions → Добавить области: channels:history, search:read → Установить в рабочее пространство → Скопировать Bot User OAuth Token (xoxb-...)

AI-функции (необязательно)

Переменная

Что делает

Как получить

ANTHROPIC_API_KEY

Обеспечивает умное определение репозитория по тексту тикета + AI-черновики ответов Slack

console.anthropic.com → API Keys → Создать ключ

Рабочее пространство (необязательно)

Переменная

Что делает

Когда нужна

WSL_DISTRO

Имя вашего дистрибутива WSL2 для перевода путей

Только если SHELL_ENV=wsl2 (например, Ubuntu)

PORT

Порт MCP-сервера

По умолчанию: 3100 — измените, если порт занят

Хранение данных

Все данные хранятся в ~/.coolplugz/data.json — задачи, снимки контекста, сопоставления репозиториев, инсайты, история запросов. База данных не требуется. Удалите файл, чтобы начать с нуля.

Архитектура

src/
├── index.ts              # MCP server (Express + StreamableHTTP)
├── config.ts             # Reads tokens from .env
├── store.ts              # JSON file store (~/.coolplugz/data.json)
├── lib/
│   ├── loopState.ts      # State machine
│   └── response.ts       # mcpText() and mcpLoop() builders
├── context/
│   ├── jira.ts           # Jira fetcher (Basic auth)
│   ├── github.ts         # GitHub state (branches, PRs, CI)
│   ├── notion.ts         # Notion doc fetcher
│   ├── slack.ts          # Slack mentions + AI draft replies
│   ├── repoResolver.ts   # Auto-detect repo from ticket content
│   └── assemble.ts       # CRISPE prompt builder
├── orchestrator/
│   └── githubApi.ts      # GitHub API helpers
└── tools/
    ├── orchestrator.ts   # start_task, verify_and_submit, etc.
    ├── pushBranch.ts     # Token-authenticated push + fork handling
    ├── getDashboard.ts   # Text dashboard
    └── addInsight.ts     # Custom instruction management

Лицензия

MIT

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Persistent context for Claude. Your AI always knows your projects and next actions across sessions.

  • AI code review for GitHub PRs with an MCP autofix loop for Claude Code and Cursor

  • WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/adaOctopus/coreflows-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server