@ignission/slack-task-mcp 0.2.6 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.ja.md +259 -0
  2. package/README.md +4 -0
  3. package/package.json +1 -1
package/README.ja.md ADDED
@@ -0,0 +1,259 @@
1
+ <p align="center">
2
+ <h1 align="center">Slack Task MCP</h1>
3
+ </p>
4
+
5
+ <p align="center">
6
+ <strong>メンションから着手までの摩擦をゼロに</strong>
7
+ </p>
8
+
9
+ <p align="center">
10
+ <a href="https://www.npmjs.com/package/@ignission/slack-task-mcp"><img src="https://img.shields.io/npm/v/@ignission/slack-task-mcp" alt="npm version"></a>
11
+ <a href="https://opensource.org/licenses/ISC"><img src="https://img.shields.io/badge/License-ISC-blue.svg" alt="License: ISC"></a>
12
+ </p>
13
+
14
+ <p align="center">
15
+ ADHDの特性を持つユーザー向けに設計されたMCPサーバー
16
+ </p>
17
+
18
+ <p align="center">
19
+ <a href="README.md">English</a>
20
+ </p>
21
+
22
+ ---
23
+
24
+ ## なぜ作ったか
25
+
26
+ Slackでメンションがたまると、どこから手を付けていいか迷う。難しい依頼は固まってしまう。返信を書くのに時間がかかる。心当たりはありませんか?
27
+
28
+ | 課題 | 解決策 |
29
+ |:-----|:-------|
30
+ | 「何を求められてる?」が曖昧 | 目的を明確化 |
31
+ | 「何を聞けばいい?」がわからない | 不明点の洗い出し + 確認メッセージ案 |
32
+ | 「どう返せばいい?」で時間がかかる | 返信メッセージの添削・構造化 |
33
+ | 「次何する?」で迷う | ネクストアクション提示 |
34
+
35
+ ---
36
+
37
+ ## アーキテクチャ
38
+
39
+ ```
40
+ ┌─────────────────────────────────────────────────────────────┐
41
+ │ Claude Desktop / Claude Code │
42
+ │ └── MCP Client │
43
+ └──────────────────────────┬──────────────────────────────────┘
44
+ │ MCP Protocol
45
+ ┌──────────────────────────▼──────────────────────────────────┐
46
+ │ Slack Task MCP Server │
47
+ │ ┌────────────────────────────────────────────────────────┐ │
48
+ │ │ MCP Tools │ │
49
+ │ │ • get_slack_thread • save_task • analyze_request │ │
50
+ │ │ • search_slack • list_tasks • draft_reply │ │
51
+ │ │ • complete_step │ │
52
+ │ └────────────────────────────────────────────────────────┘ │
53
+ │ ┌────────────────────────────────────────────────────────┐ │
54
+ │ │ Agent SDK Layer (AI分析) │ │
55
+ │ │ • analyze.js → 依頼分析 │ │
56
+ │ │ • draft-reply.js → 返信添削 │ │
57
+ │ └────────────────────────────────────────────────────────┘ │
58
+ └──────────────────────────┬──────────────────────────────────┘
59
+
60
+ ┌────────────────┴────────────────┐
61
+ ▼ ▼
62
+ ┌─────────────┐ ┌─────────────┐
63
+ │ Slack API │ │ Claude API │
64
+ │ (User Token)│ │ (Agent SDK) │
65
+ └─────────────┘ └─────────────┘
66
+ ```
67
+
68
+ ---
69
+
70
+ ## 機能
71
+
72
+ | ツール | 説明 | Agent SDK |
73
+ |--------|------|:---------:|
74
+ | `get_slack_thread` | SlackスレッドURLからメッセージを取得 | - |
75
+ | `analyze_request` | 依頼を分析し、目的・不明点を特定 | ✅ |
76
+ | `draft_reply` | 返信を添削し、論理的に構造化 | ✅ |
77
+ | `save_task` | タスクを保存(5分以内のステップに分解) | - |
78
+ | `list_tasks` | アクティブなタスク一覧を表示 | - |
79
+ | `search_tasks` | キーワード・日付でタスクを検索 | - |
80
+ | `complete_step` | ステップを完了にする | - |
81
+ | `search_slack` | Slackメッセージをキーワード検索 | - |
82
+
83
+ ---
84
+
85
+ ## クイックスタート
86
+
87
+ ### 1. Slack認証
88
+
89
+ ```bash
90
+ npx -y @ignission/slack-task-mcp auth login
91
+ ```
92
+
93
+ ブラウザが開きSlack認証が行われます。複数ワークスペースも対応可能です。
94
+
95
+ ### 2. Claude Code / Claude Desktop の設定
96
+
97
+ **Claude Code(ターミナル)**:
98
+
99
+ ```bash
100
+ claude mcp add slack-task -- npx -y @ignission/slack-task-mcp
101
+ ```
102
+
103
+ **Claude Desktop** (`~/.claude/claude_desktop_config.json`):
104
+
105
+ ```json
106
+ {
107
+ "mcpServers": {
108
+ "slack-task": {
109
+ "command": "npx",
110
+ "args": ["-y", "@ignission/slack-task-mcp"]
111
+ }
112
+ }
113
+ }
114
+ ```
115
+
116
+ ### 3. 再起動
117
+
118
+ Claude Code / Claude Desktop を再起動して設定を反映します。
119
+
120
+ ---
121
+
122
+ ## 使い方
123
+
124
+ ### 基本ワークフロー
125
+
126
+ ```
127
+ 1. get_slack_thread → スレッド取得(文脈DB化)
128
+ 2. analyze_request → 目的・不明点・確認メッセージ案を生成
129
+ 3. draft_reply → 返信の下書きを添削・構造化
130
+ 4. save_task → タスクとして保存
131
+ 5. complete_step → 進捗管理
132
+ ```
133
+
134
+ ### 使用例
135
+
136
+ #### スレッドを取得して分析
137
+
138
+ ```
139
+ このSlackスレッドを分析して:
140
+ https://xxx.slack.com/archives/C12345678/p1234567890123456
141
+ ```
142
+
143
+ #### タスクを保存
144
+
145
+ ```
146
+ これを5分以内のステップに分解して保存して
147
+ ```
148
+
149
+ #### 返信を添削
150
+
151
+ ```
152
+ この返信を添削して: 「レポートできました。添付します。確認お願いします。」
153
+ ```
154
+
155
+ #### タスク一覧を表示
156
+
157
+ ```
158
+ タスク一覧を見せて
159
+ ```
160
+
161
+ #### ステップを完了
162
+
163
+ ```
164
+ ステップ1を完了にして
165
+ ```
166
+
167
+ ---
168
+
169
+ ## ADHD向け設計
170
+
171
+ - **5分以内のステップに分解** — 小さな達成感を積み上げる
172
+ - **最初のステップは最も簡単に** — 着手のハードルを下げる
173
+ - **明確な区切り** — 途中で止めても再開しやすい
174
+ - **Slackを文脈DBとして活用** — 「あの話どうなったっけ」をClaudeに聞ける
175
+
176
+ ---
177
+
178
+ ## 技術スタック
179
+
180
+ | 技術 | 用途 |
181
+ |------|------|
182
+ | **Node.js** (ES Modules) | ランタイム |
183
+ | **MCP Protocol** | Claude Code/Desktop との通信 |
184
+ | **Claude Agent SDK** | AI による依頼分析・返信添削 |
185
+ | **Slack Web API** | Slack連携(User Token) |
186
+ | **Zod** | スキーマバリデーション |
187
+ | **Cloudflare Workers** | OAuth認証(トークン交換) |
188
+
189
+ ---
190
+
191
+ ## プロジェクト構成
192
+
193
+ ```
194
+ slack-task-mcp/
195
+ ├── src/
196
+ │ ├── index.js # MCPサーバーエントリーポイント
197
+ │ ├── cli.js # CLIコマンド
198
+ │ ├── auth.js # OAuth認証(ハイブリッド)
199
+ │ ├── credentials.js # 認証情報管理
200
+ │ ├── paths.js # パス管理(XDG準拠)
201
+ │ └── agents/ # Agent SDKエージェント
202
+ │ ├── index.js # 共通設定
203
+ │ ├── analyze.js # 依頼分析
204
+ │ └── draft-reply.js # 返信添削
205
+ ├── worker/ # Cloudflare Workers(トークン交換)
206
+ │ ├── index.js
207
+ │ └── wrangler.toml
208
+ └── package.json
209
+ ```
210
+
211
+ ---
212
+
213
+ ## データ保存場所
214
+
215
+ XDG Base Directory Specification に準拠:
216
+
217
+ ```
218
+ ~/.local/share/slack-task-mcp/
219
+ ├── credentials/
220
+ │ ├── T01234567.json # ワークスペースごとの認証情報
221
+ │ └── T98765432.json
222
+ └── tasks.json # タスクデータ
223
+ ```
224
+
225
+ `XDG_DATA_HOME` が設定されている場合はそちらを使用します。
226
+
227
+ ---
228
+
229
+ ## トラブルシューティング
230
+
231
+ ### Slack APIエラー
232
+
233
+ ```bash
234
+ npx -y @ignission/slack-task-mcp auth status # 認証状態を確認
235
+ npx -y @ignission/slack-task-mcp auth login # 新規ワークスペースを認証
236
+ npx -y @ignission/slack-task-mcp auth logout # 全ワークスペースからログアウト
237
+ npx -y @ignission/slack-task-mcp auth logout -w mycompany # 特定ワークスペースからログアウト
238
+ ```
239
+
240
+ ### MCPサーバーが認識されない
241
+
242
+ - 設定ファイルのパスが正しいか確認
243
+ - Claude Code / Claude Desktop を再起動
244
+
245
+ ### プライベートチャンネルが読めない
246
+
247
+ - 自分が参加しているチャンネルのみ読み取り可能です
248
+
249
+ ---
250
+
251
+ ## コントリビューション
252
+
253
+ Issue や PR を歓迎します!
254
+
255
+ ---
256
+
257
+ ## ライセンス
258
+
259
+ [ISC](LICENSE)
package/README.md CHANGED
@@ -15,6 +15,10 @@
15
15
  An MCP server designed for users with ADHD traits
16
16
  </p>
17
17
 
18
+ <p align="center">
19
+ <a href="README.ja.md">日本語</a>
20
+ </p>
21
+
18
22
  ---
19
23
 
20
24
  ## Why
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ignission/slack-task-mcp",
3
- "version": "0.2.6",
3
+ "version": "0.2.7",
4
4
  "description": "MCP Server for Slack task management with Claude Code",
5
5
  "type": "module",
6
6
  "main": "src/index.js",