CoolPlugz
Core MCP
Claude Code を通じて Jira チケットを PR に変換する MCP ツール。Jira、GitHub、Notion、Slack からコンテキストを取得し、構造化されたプロンプトを構築し、git push / PR / CI をすべて自律的に処理します。
セットアップ(5分)
1. インストール
git clone https://github.com/adaOctopus/coolplugz-core.git
cd coolplugz-core
npm install2. .env を作成
cp .env.example .env.env を開いて記入してください:
必須:
変数 | 取得方法 |
| github.com/settings/tokens → Generate classic token → |
| 開発環境: |
| リポジトリが置かれている絶対パス(例: |
任意(推奨):
変数 | 取得方法 |
| |
| Atlassian アカウントのメールアドレス |
| ワークスペースの URL(例: |
| notion.so/my-integrations → インテグレーションを作成 → トークンをコピー |
| api.slack.com/apps → アプリを作成 → |
| チケット本文からの AI によるリポジトリ検出とスマートな Slack 返信下書きを有効化 |
|
|
3. サーバーを起動
npm run dev次のように表示されるはずです:
CoolPlugz Core MCP server listening on :31004. Claude Code に接続(初回のみ)
claude mcp add coolplugz --transport http http://localhost:3100/mcp5. 使用する
Claude Code を開いて次のように入力します:
Show my dashboardStart 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利用可能なツール
ツール | 機能 |
| ステータス、PR、ブロッカーを含むすべてのタスクを表示 |
| Jira チケットの全コンテキストを取得し、実装プロンプトを返す |
| ブランチを GitHub にプッシュ — 認証、フォーク、すべてを処理 |
| プッシュを検証し、PR を作成、CI をポーリング、成功なら自動完了 |
| 未解決の PR レビューコメントを取得して対応 |
| 検証後にタスクを完了としてマーク |
| ストア + GitHub API から実際の状態を表示 |
| マージコンフリクトを検出し、解決手順を提示 |
| 今後のすべてのプロンプトに含まれるカスタム指示を追加 |
| 完了タスク、PR、CI 結果、Slack 下書きメッセージを含む整形済みステータスレポートを生成 |
| 実行の開始/終了を記録 — 各スケジュール実行の実データで 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"グローバルインサイトはすべてのタスクに適用されます。タスクスコープのインサイトは 1 つのチケットにのみ適用されます。~/.coolplugz/data.json に保存され、セッションをまたいで保持されます。
プロンプトビルダーの仕組み
すべての start_task は CRISPE フレームワークを使用して構造化プロンプトを構築します:
セクション | 内容 |
[C] Capacity | ロール、リポジトリ、ブランチ、ワークスペース設定(WSL2/macOS/Linux)、ローカルパス |
[R] Insight | チケットの完全な説明、受け入れ条件、Jira コメント、Notion 仕様、Slack コンテキスト、PR レビューコメント |
[I] Statement | 具体的な実装指示 |
[S] Personality | コードスタイル、コミット規約( |
[P] Experiment | 自律実行権限、ループエンジニアリング指示、安全制約 |
[F] Fence | 削除禁止、main へのプッシュ禁止、シークレットのコミット禁止 |
[Q] Quality | 型安全性、最小限の変更、セキュリティのデフォルト |
[D] Developer insights | カスタム指示( |
[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— ストア内のすべてを表示
環境変数リファレンス
必須
変数 | 機能 | 取得方法 |
| ブランチのプッシュ、PR の作成、リポジトリ状態の読み取り、CI のポーリング | github.com/settings/tokens → Generate classic token → |
| 環境でシェルコマンドを実行する方法を CoolPlugz に指示 |
|
| リポジトリがローカルにクローンされている場所 | 絶対パス(例: |
Jira(チケットコンテキストを有効化)
変数 | 機能 | 取得方法 |
| チケットの説明、受け入れ条件、コメントを取得 | id.atlassian.com/manage-profile/security/api-tokens → Create API token |
| Jira での認証(Basic 認証 = email:token) | Atlassian アカウントのメールアドレス |
| Jira インスタンスの URL | 例: |
GitHub(上記の GITHUB_TOKEN で対応済み)
GITHUB_TOKEN がすべてを処理します:リポジトリの読み取り、ブランチのプッシュ、PR の作成、CI ステータスのポーリング、レビューコメントの取得、フォークの検出。
必要なスコープ: repo(完全なリポジトリアクセス)+ workflow(CI のトリガー/読み取り)
Notion(仕様取得を有効化)
変数 | 機能 | 取得方法 |
| リンクされた Notion ドキュメントを CRISPE プロンプトに参照コンテキストとして取り込む | notion.so/my-integrations → Create integration → "Internal Integration Secret" をコピー → 対象ページをインテグレーションと共有 |
Slack(メンション追跡 + 下書き返信を有効化)
変数 | 機能 | 取得方法 |
| Slack でのチケットのメンションを追跡し、AI による返信下書きを作成 | api.slack.com/apps → Create New App → OAuth & Permissions → スコープを追加: |
AI 機能(任意)
変数 | 機能 | 取得方法 |
| チケット本文からのスマートなリポジトリ検出 + AI による Slack 返信下書きを実現 | console.anthropic.com → API Keys → Create Key |
ワークスペース(任意)
Variable | 機能 | 必要な場合 |
| パス変換用のWSL2ディストリビューション名 |
|
| MCPサーバーポート | デフォルト: |
データストレージ
すべてのデータは ~/.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
This server cannot be installed
Maintenance
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
- AlicenseCqualityDmaintenanceConnects Jira with Claude, enabling users to search issues, view issue details, update issues, add comments, and retrieve project information through natural language commands.1651MIT
- FlicenseAqualityBmaintenanceAutomates GitHub workflows (branch creation, testing, commit/push, PR) through natural language instructions in Claude Code.8
- FlicenseNot gradedqualityBmaintenanceEnables AI-powered GitHub automation by connecting Claude AI with GitHub APIs for managing issues and pull requests.
- FlicenseAqualityDmaintenanceEnables Claude to create, manage, and clean up git worktrees automatically, including dependency installation and GitHub PR creation.5
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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