@quadslab.io/discord-mcp 2.0.1 → 2.1.0
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.
- package/.claude/.quadcode-version +1 -0
- package/.claude/settings.local.json +154 -0
- package/.claude/skills/architect/SKILL.md +111 -0
- package/.claude/skills/assign-environment/SKILL.md +71 -0
- package/.claude/skills/brainstorm/SKILL.md +114 -0
- package/.claude/skills/brainstorm-spec/SKILL.md +72 -0
- package/.claude/skills/check-implemented/SKILL.md +59 -0
- package/.claude/skills/check-issue-progress/SKILL.md +66 -0
- package/.claude/skills/create-rich-plan/SKILL.md +90 -0
- package/.claude/skills/decompose-spec/SKILL.md +32 -0
- package/.claude/skills/detect-environments/SKILL.md +61 -0
- package/.claude/skills/dispatch/SKILL.md +90 -0
- package/.claude/skills/estimate-complexity/SKILL.md +118 -0
- package/.claude/skills/expand-epic/SKILL.md +38 -0
- package/.claude/skills/find-duplicate-issues/SKILL.md +91 -0
- package/.claude/skills/find-duplicates/SKILL.md +77 -0
- package/.claude/skills/find-related-code/SKILL.md +145 -0
- package/.claude/skills/idea-summary/SKILL.md +57 -0
- package/.claude/skills/idea-to-prompt/SKILL.md +98 -0
- package/.claude/skills/ideas-maintenance/SKILL.md +98 -0
- package/.claude/skills/ideas-to-issues/SKILL.md +108 -0
- package/.claude/skills/issue-summary/SKILL.md +64 -0
- package/.claude/skills/issue-to-prompt/SKILL.md +98 -0
- package/.claude/skills/launch-team/SKILL.md +69 -0
- package/.claude/skills/list-environments/SKILL.md +60 -0
- package/.claude/skills/new-spec/SKILL.md +37 -0
- package/.claude/skills/organize-ideas/SKILL.md +47 -0
- package/.claude/skills/organize-issues/SKILL.md +56 -0
- package/.claude/skills/organize-plans/SKILL.md +47 -0
- package/.claude/skills/plan-from-idea/SKILL.md +102 -0
- package/.claude/skills/plan-summary/SKILL.md +53 -0
- package/.claude/skills/plan-to-issues/SKILL.md +63 -0
- package/.claude/skills/preview-promotion/SKILL.md +47 -0
- package/.claude/skills/review-spec/SKILL.md +53 -0
- package/.claude/skills/run-script/SKILL.md +43 -0
- package/.claude/skills/script-summary/SKILL.md +67 -0
- package/.claude/skills/setup-environment/SKILL.md +78 -0
- package/.claude/skills/setup-python/SKILL.md +123 -0
- package/.claude/skills/setup-scripts/SKILL.md +82 -0
- package/.claude/skills/suggest-improvements/SKILL.md +66 -0
- package/.claude/skills/team-status/SKILL.md +68 -0
- package/.claude/skills/triage-issues/SKILL.md +51 -0
- package/.claude/skills/update-plan-progress/SKILL.md +102 -0
- package/.claude/skills/verify-plan/SKILL.md +54 -0
- package/.claude/skills/weekly-digest/SKILL.md +149 -0
- package/.mcp.json +7 -0
- package/.quadcode/config.json +6 -0
- package/CHANGELOG.md +174 -174
- package/CLAUDE.md +40 -0
- package/LICENSE +21 -21
- package/README.md +678 -668
- package/assets/demo.svg +470 -0
- package/assets/social-preview.html +14 -0
- package/assets/social-preview.svg +98 -0
- package/dist/cli.js +8 -8
- package/dist/tools/threads.js +299 -0
- package/dist/tools/threads.js.map +1 -1
- package/dist/tools/utils.js +48 -3
- package/dist/tools/utils.js.map +1 -1
- package/package.json +58 -58
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Verify a plan's spec coverage, dependency completeness, and step quality. Posts findings as verification comments.
|
|
3
|
+
argument-hint: <plan_id>
|
|
4
|
+
allowed-tools: mcp__quadcode__get_plan, mcp__quadcode__add_plan_comment, Read, Glob, Grep
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Verify Plan
|
|
8
|
+
|
|
9
|
+
Audit a plan for completeness, correctness, and quality. Acts as a second pair of eyes — a different agent than the one that created the steps.
|
|
10
|
+
|
|
11
|
+
## Process
|
|
12
|
+
|
|
13
|
+
1. Get the plan by ID: `mcp__quadcode__get_plan`
|
|
14
|
+
2. Read the `specContent` and all steps
|
|
15
|
+
3. Explore the codebase if the plan references existing code
|
|
16
|
+
|
|
17
|
+
## Verification Checks
|
|
18
|
+
|
|
19
|
+
### Spec Coverage
|
|
20
|
+
- For each major section of the spec, verify there are corresponding steps
|
|
21
|
+
- Flag spec sections with ZERO coverage (critical)
|
|
22
|
+
- Flag spec sections with weak coverage (only 1 step for a complex area)
|
|
23
|
+
|
|
24
|
+
### Orphan Steps
|
|
25
|
+
- For each step, verify it traces back to a section in the spec
|
|
26
|
+
- Flag steps that don't correspond to any spec requirement
|
|
27
|
+
|
|
28
|
+
### Dependency Completeness
|
|
29
|
+
- Check that steps referencing shared resources are properly ordered
|
|
30
|
+
- Flag steps that should depend on others but don't have dependencies set
|
|
31
|
+
- Check for circular dependencies
|
|
32
|
+
- Verify no broken dependency chains
|
|
33
|
+
|
|
34
|
+
### Step Quality
|
|
35
|
+
- Flag implementation steps missing acceptance criteria (warning)
|
|
36
|
+
- Flag steps with no description (warning)
|
|
37
|
+
- Flag steps with vague titles like "Miscellaneous" or "Other" (info)
|
|
38
|
+
- Check that effort estimates are reasonable
|
|
39
|
+
|
|
40
|
+
### Duplicates
|
|
41
|
+
- Identify steps that appear to cover the same work
|
|
42
|
+
- Suggest merging or clarifying scope
|
|
43
|
+
|
|
44
|
+
## Output
|
|
45
|
+
|
|
46
|
+
Post ONE comprehensive comment via `mcp__quadcode__add_plan_comment`:
|
|
47
|
+
- Set `comment_type` to `verification`
|
|
48
|
+
- Set `author_name` to `plan-verifier`
|
|
49
|
+
- Use severity markers:
|
|
50
|
+
- **CRITICAL**: Spec sections with no coverage, broken dependencies
|
|
51
|
+
- **WARNING**: Missing acceptance criteria, weak coverage
|
|
52
|
+
- **INFO**: Suggestions, duplicate suspects
|
|
53
|
+
- End with summary counts: X critical, Y warnings, Z info
|
|
54
|
+
- If everything looks good, post a passing verification comment
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: weekly-digest
|
|
3
|
+
description: Generate a weekly summary of idea activity including new ideas, completed ideas, aging ideas, and priority suggestions.
|
|
4
|
+
allowed-tools: mcp__quadcode__list_ideas, mcp__quadcode__organize_ideas, mcp__quadcode__get_idea
|
|
5
|
+
user-invocable: true
|
|
6
|
+
argument-hint: [weeks-back]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Weekly Digest Skill
|
|
10
|
+
|
|
11
|
+
Generate a comprehensive weekly summary of QuadCode idea activity.
|
|
12
|
+
|
|
13
|
+
## Process
|
|
14
|
+
|
|
15
|
+
1. **Retrieve all ideas** using `mcp__quadcode__list_ideas`
|
|
16
|
+
|
|
17
|
+
2. **Analyze temporal data**:
|
|
18
|
+
- Default: Last 7 days
|
|
19
|
+
- If weeks-back provided ($ARGUMENTS): Look back that many weeks
|
|
20
|
+
|
|
21
|
+
3. **Categorize ideas by activity**:
|
|
22
|
+
|
|
23
|
+
### New Ideas (This Week)
|
|
24
|
+
- Ideas created within the time period
|
|
25
|
+
- Group by category/tag
|
|
26
|
+
- Note who/what created them (if trackable)
|
|
27
|
+
|
|
28
|
+
### Completed/Archived
|
|
29
|
+
- Ideas marked as `implemented` or archived this week
|
|
30
|
+
- Brief summary of what was accomplished
|
|
31
|
+
|
|
32
|
+
### In Progress
|
|
33
|
+
- Ideas with `in-progress` tag
|
|
34
|
+
- Time since started (if trackable)
|
|
35
|
+
- Any blockers or notes
|
|
36
|
+
|
|
37
|
+
### Aging Ideas
|
|
38
|
+
- Ideas older than 30 days with no activity
|
|
39
|
+
- Ideas older than 90 days (stale)
|
|
40
|
+
- Suggestions: archive, prioritize, or clarify
|
|
41
|
+
|
|
42
|
+
### Hot Ideas
|
|
43
|
+
- Ideas with most suggestions/activity
|
|
44
|
+
- Ideas frequently referenced
|
|
45
|
+
|
|
46
|
+
4. **Generate priority suggestions**:
|
|
47
|
+
- Quick wins: Low complexity + high value
|
|
48
|
+
- Blocking items: Dependencies for other ideas
|
|
49
|
+
- Overdue: Old high-priority items
|
|
50
|
+
- Trending: Topics with multiple related ideas
|
|
51
|
+
|
|
52
|
+
5. **Produce digest report**:
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
## QuadCode Ideas Weekly Digest
|
|
56
|
+
**Period**: [Start Date] - [End Date]
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
### Summary
|
|
61
|
+
| Metric | Count | Change |
|
|
62
|
+
|--------|-------|--------|
|
|
63
|
+
| Total Ideas | X | +/-Y |
|
|
64
|
+
| New This Week | X | |
|
|
65
|
+
| Completed | X | |
|
|
66
|
+
| In Progress | X | |
|
|
67
|
+
| Aging (30+ days) | X | |
|
|
68
|
+
| Stale (90+ days) | X | |
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
### New Ideas This Week
|
|
73
|
+
|
|
74
|
+
#### [Category 1]
|
|
75
|
+
- **#ID**: [Brief content] `tags`
|
|
76
|
+
- **#ID**: [Brief content] `tags`
|
|
77
|
+
|
|
78
|
+
#### [Category 2]
|
|
79
|
+
[Similar format]
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
### Completed This Week
|
|
84
|
+
|
|
85
|
+
| ID | Idea | Completed |
|
|
86
|
+
|----|------|-----------|
|
|
87
|
+
| X | ... | [date] |
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
### Currently In Progress
|
|
92
|
+
|
|
93
|
+
| ID | Idea | Started | Status |
|
|
94
|
+
|----|------|---------|--------|
|
|
95
|
+
| X | ... | [date] | [notes]|
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
### Needs Attention
|
|
100
|
+
|
|
101
|
+
#### Aging Ideas (30+ days, no activity)
|
|
102
|
+
- **#ID**: [content] - *Consider: [action suggestion]*
|
|
103
|
+
|
|
104
|
+
#### Stale Ideas (90+ days)
|
|
105
|
+
- **#ID**: [content] - *Recommend: Archive or revive*
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
### Recommended Priorities
|
|
110
|
+
|
|
111
|
+
#### This Week's Focus
|
|
112
|
+
1. **#ID**: [content] - [reason]
|
|
113
|
+
2. **#ID**: [content] - [reason]
|
|
114
|
+
3. **#ID**: [content] - [reason]
|
|
115
|
+
|
|
116
|
+
#### Quick Wins Available
|
|
117
|
+
- #ID, #ID, #ID (low complexity, high impact)
|
|
118
|
+
|
|
119
|
+
#### Blockers to Address
|
|
120
|
+
- #ID blocks #ID and #ID
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
### Trends & Insights
|
|
125
|
+
|
|
126
|
+
- **Hot topic**: [Most active category]
|
|
127
|
+
- **Growing area**: [Category with most new ideas]
|
|
128
|
+
- **Completion rate**: X ideas/week average
|
|
129
|
+
- **Idea velocity**: X new ideas vs Y completed
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
*Generated: [timestamp]*
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
## Options
|
|
137
|
+
|
|
138
|
+
Arguments ($ARGUMENTS):
|
|
139
|
+
- Number (e.g., `2`): Look back that many weeks
|
|
140
|
+
- `month`: Last 30 days
|
|
141
|
+
- `quarter`: Last 90 days
|
|
142
|
+
- `all`: Full history analysis
|
|
143
|
+
|
|
144
|
+
## Notes
|
|
145
|
+
|
|
146
|
+
- If creation dates aren't tracked, estimate based on ID sequence
|
|
147
|
+
- Highlight ideas that have been stale but have recent suggestions
|
|
148
|
+
- Consider seasonality in activity patterns
|
|
149
|
+
- Flag ideas that may be obsolete due to codebase changes
|
package/.mcp.json
ADDED
package/CHANGELOG.md
CHANGED
|
@@ -1,174 +1,174 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
|
|
5
|
-
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
-
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
-
|
|
8
|
-
## [2.0.0] - 2026-02-22
|
|
9
|
-
|
|
10
|
-
### Added
|
|
11
|
-
|
|
12
|
-
- 35 new tools across 6 new categories and 7 existing categories (99 → 134 total)
|
|
13
|
-
- **Polls** (3 tools): send_poll, get_poll_results, end_poll
|
|
14
|
-
- **Direct Messages** (2 tools): send_dm, send_dm_embed
|
|
15
|
-
- **Bot Presence** (2 tools): set_bot_status, get_bot_info
|
|
16
|
-
- **Server Templates** (4 tools): list_templates, create_template, delete_template, sync_template
|
|
17
|
-
- **Application Commands** (4 tools): list_commands, create_command, edit_command, delete_command
|
|
18
|
-
- **Onboarding** (2 tools): get_onboarding, edit_onboarding
|
|
19
|
-
- **Channels** (+4): check_permissions, copy_channel_permissions, set_voice_status, list_voice_members
|
|
20
|
-
- **Members** (+3): search_members, bulk_ban, purge_user_messages
|
|
21
|
-
- **Messages** (+1): send_message_with_file
|
|
22
|
-
- **Roles** (+2): list_role_members, list_member_permissions
|
|
23
|
-
- **Server Admin** (+3): get_invite, get_server_icon, set_server_icon
|
|
24
|
-
- **Threads** (+3): add_thread_member, remove_thread_member, list_thread_members
|
|
25
|
-
- **Events** (+1): get_event_subscribers
|
|
26
|
-
- Administrator permission option in init wizard — avoids role hierarchy issues
|
|
27
|
-
- Bot self-lockout prevention when making channels private (auto-grants bot access before denying @everyone)
|
|
28
|
-
- Enriched error messages for Discord API errors (Missing Access, Missing Permissions) with actionable hints
|
|
29
|
-
|
|
30
|
-
### Improved
|
|
31
|
-
|
|
32
|
-
- Error handler now detects Discord error codes (50013, 50001, 50035) and returns fix instructions
|
|
33
|
-
- set_channel_permissions automatically preserves bot access when denying @everyone ViewChannel
|
|
34
|
-
|
|
35
|
-
## [1.4.0] - 2026-02-22
|
|
36
|
-
|
|
37
|
-
### Added
|
|
38
|
-
|
|
39
|
-
- Typewriter animation effect on the welcome message for a polished first impression
|
|
40
|
-
- Token format pre-validation — detects malformed tokens before attempting Discord login
|
|
41
|
-
- Retry loop on invalid token — users can paste a new token without restarting the wizard
|
|
42
|
-
- Quick permission pre-check built into `init` — shows pass/fail summary right after guild selection
|
|
43
|
-
- Configuration summary card at the end of setup showing bot, server, and clients configured
|
|
44
|
-
- Staged spinner messages during connection (`Resolving gateway...` → `Authenticating...` → `Fetching servers...`)
|
|
45
|
-
- Richer guild selection display with boost level indicators
|
|
46
|
-
- Smooth animated transitions between wizard steps
|
|
47
|
-
|
|
48
|
-
### Improved
|
|
49
|
-
|
|
50
|
-
- Spinner now supports `.update()` to change its message mid-animation
|
|
51
|
-
- Completion banner uses typewriter animation for a satisfying finish
|
|
52
|
-
- Guild info shows boost tier, member count, and ID in a formatted row
|
|
53
|
-
- Next steps box has cleaner column alignment for all client names
|
|
54
|
-
- Authentication failure now offers to retry instead of exiting immediately
|
|
55
|
-
- Help text updated to say "any MCP client" instead of just Claude Code
|
|
56
|
-
|
|
57
|
-
## [1.3.1] - 2026-02-22
|
|
58
|
-
|
|
59
|
-
### Added
|
|
60
|
-
|
|
61
|
-
- Troubleshooting section in README covering all common errors with fixes
|
|
62
|
-
- Actionable startup error messages that point to `init` or `check` commands
|
|
63
|
-
- More npm keywords for discoverability (cursor, windsurf, claude-desktop, ai-tools)
|
|
64
|
-
- GitHub repo topics for better search visibility
|
|
65
|
-
|
|
66
|
-
### Improved
|
|
67
|
-
|
|
68
|
-
- Startup log messages use `[discord-mcp]` prefix for cleaner output
|
|
69
|
-
- Error on missing token/guild now shows the exact command to fix it
|
|
70
|
-
- Failed startup points to `npx @quadslab.io/discord-mcp check` for diagnostics
|
|
71
|
-
|
|
72
|
-
## [1.3.0] - 2026-02-22
|
|
73
|
-
|
|
74
|
-
### Fixed
|
|
75
|
-
|
|
76
|
-
- MCP server version was hardcoded to `1.0.0` — now reads dynamically from `package.json`
|
|
77
|
-
- CLI logo showed hardcoded `v1.0` — removed (version shown via `--version` flag instead)
|
|
78
|
-
- Dead code: Windsurf path ternary had identical branches
|
|
79
|
-
- Missing `Manage Auto Moderation` permission in bot setup guide
|
|
80
|
-
- `CHANGELOG.md` was excluded from npm package — now included
|
|
81
|
-
- Duplicate startup log messages consolidated
|
|
82
|
-
|
|
83
|
-
### Improved
|
|
84
|
-
|
|
85
|
-
- `docs/discord-mcp-server.md` — rewritten setup section with CLI-first workflow, multi-client config table
|
|
86
|
-
- `docs/bot-setup-guide.md` — Step 6 now leads with `npx init` wizard, manual setup as fallback
|
|
87
|
-
- `CONTRIBUTING.md` — added project structure diagram, CLI development section, and CHANGELOG to docs checklist
|
|
88
|
-
- `.github/PULL_REQUEST_TEMPLATE.md` — added CLI testing and CHANGELOG checklist items
|
|
89
|
-
- `.env.example` — documented `BOT_TOKEN` fallback
|
|
90
|
-
- `package.json` — added `exports` map for ESM consumers, updated description to mention all supported clients
|
|
91
|
-
- README architecture diagram updated with accurate file descriptions
|
|
92
|
-
|
|
93
|
-
## [1.2.3] - 2026-02-22
|
|
94
|
-
|
|
95
|
-
### Fixed
|
|
96
|
-
|
|
97
|
-
- Init wizard now detects non-project directories (Desktop, Downloads, home, Documents, etc.) and writes Claude Code config to global `~/.claude.json` instead of a useless project-scoped `.mcp.json`
|
|
98
|
-
- Shows a warning when running from a suspicious directory with clear explanation of what will happen
|
|
99
|
-
|
|
100
|
-
## [1.2.2] - 2026-02-22
|
|
101
|
-
|
|
102
|
-
### Fixed
|
|
103
|
-
|
|
104
|
-
- `@everyone` role now resolves correctly — was previously excluded from the role cache, causing "not found" errors when targeting it in permission tools
|
|
105
|
-
- Role cache now includes `@everyone` alongside all other roles
|
|
106
|
-
|
|
107
|
-
## [1.2.1] - 2026-02-22
|
|
108
|
-
|
|
109
|
-
### Fixed
|
|
110
|
-
|
|
111
|
-
- Discord gateway rate limit errors (opcode 8) during startup member fetch — now retries with exponential backoff
|
|
112
|
-
- All 99 tool calls now automatically retry on rate limits (up to 3 attempts with backoff)
|
|
113
|
-
- Rate limit `retry_after` value is parsed from Discord's error response for optimal wait times
|
|
114
|
-
|
|
115
|
-
## [1.2.0] - 2026-02-22
|
|
116
|
-
|
|
117
|
-
### Added
|
|
118
|
-
|
|
119
|
-
- Multi-client support in `init` wizard — auto-detects and configures:
|
|
120
|
-
- Claude Code (`.mcp.json`)
|
|
121
|
-
- Claude Desktop (`claude_desktop_config.json`)
|
|
122
|
-
- Cursor (`~/.cursor/mcp.json`)
|
|
123
|
-
- Windsurf (`~/.codeium/windsurf/mcp_config.json`)
|
|
124
|
-
- "All detected" option to configure every installed client at once
|
|
125
|
-
- "Skip" option with manual config output and file path reference
|
|
126
|
-
- Client-specific next steps shown after setup
|
|
127
|
-
|
|
128
|
-
## [1.1.0] - 2026-02-22
|
|
129
|
-
|
|
130
|
-
### Added
|
|
131
|
-
|
|
132
|
-
- Interactive CLI setup wizard (`npx @quadslab.io/discord-mcp init`)
|
|
133
|
-
- Guided bot creation with step-by-step instructions
|
|
134
|
-
- Live token validation with masked input
|
|
135
|
-
- Auto-generated invite URL with all required permissions
|
|
136
|
-
- Server auto-discovery and selection
|
|
137
|
-
- Automatic `.mcp.json` generation with merge support
|
|
138
|
-
- Health check command (`npx @quadslab.io/discord-mcp check`)
|
|
139
|
-
- Token and server validation
|
|
140
|
-
- Full permission audit with visual progress bar
|
|
141
|
-
- Color-coded pass/fail output
|
|
142
|
-
- Help and version commands
|
|
143
|
-
- Branded CLI output with QuadsLab.io ASCII art, ANSI colors, animated spinners
|
|
144
|
-
- TTY detection — auto-starts MCP server when launched via `.mcp.json`
|
|
145
|
-
|
|
146
|
-
### Changed
|
|
147
|
-
|
|
148
|
-
- Binary entry point changed from `mcp-server.js` to `cli.js`
|
|
149
|
-
- `mcp-server.ts` now exports `main()` for CLI imports
|
|
150
|
-
|
|
151
|
-
## [1.0.0] - 2026-02-22
|
|
152
|
-
|
|
153
|
-
### Added
|
|
154
|
-
|
|
155
|
-
- Initial release with 99 tools across 14 categories
|
|
156
|
-
- Guild tools (2): server info and metadata
|
|
157
|
-
- Role tools (9): CRUD, permissions, icons, assignment
|
|
158
|
-
- Channel tools (16): CRUD, permissions, locking, slowmode, cloning, forums, reordering
|
|
159
|
-
- Member tools (12): moderation, timeouts, pruning, bulk role operations, voice management
|
|
160
|
-
- Message tools (13): send, edit, delete, bulk delete, pins, reactions, crossposting
|
|
161
|
-
- Reaction tools (1): detailed reactor info with account age, join date, roles, boost status
|
|
162
|
-
- Server admin tools (13): settings, invites, bans, audit log, welcome screen, widget, integrations
|
|
163
|
-
- Thread tools (7): create, archive, lock, delete
|
|
164
|
-
- Forum tools (5): posts, tag management
|
|
165
|
-
- Emoji and sticker tools (7): upload, rename, delete
|
|
166
|
-
- Webhook tools (4): CRUD and message sending
|
|
167
|
-
- Scheduled event tools (4): create, edit, delete
|
|
168
|
-
- Stage instance tools (3): start, end, list
|
|
169
|
-
- Auto-moderation tools (4): rule CRUD
|
|
170
|
-
- Fuzzy name matching for all channel, role, and member parameters
|
|
171
|
-
- Pre-cached server data for instant lookups
|
|
172
|
-
- 3 MCP resources for server overview data
|
|
173
|
-
- Audit log reason support on all modifying operations
|
|
174
|
-
- Helpful error messages with name suggestions on failed lookups
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [2.0.0] - 2026-02-22
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- 35 new tools across 6 new categories and 7 existing categories (99 → 134 total)
|
|
13
|
+
- **Polls** (3 tools): send_poll, get_poll_results, end_poll
|
|
14
|
+
- **Direct Messages** (2 tools): send_dm, send_dm_embed
|
|
15
|
+
- **Bot Presence** (2 tools): set_bot_status, get_bot_info
|
|
16
|
+
- **Server Templates** (4 tools): list_templates, create_template, delete_template, sync_template
|
|
17
|
+
- **Application Commands** (4 tools): list_commands, create_command, edit_command, delete_command
|
|
18
|
+
- **Onboarding** (2 tools): get_onboarding, edit_onboarding
|
|
19
|
+
- **Channels** (+4): check_permissions, copy_channel_permissions, set_voice_status, list_voice_members
|
|
20
|
+
- **Members** (+3): search_members, bulk_ban, purge_user_messages
|
|
21
|
+
- **Messages** (+1): send_message_with_file
|
|
22
|
+
- **Roles** (+2): list_role_members, list_member_permissions
|
|
23
|
+
- **Server Admin** (+3): get_invite, get_server_icon, set_server_icon
|
|
24
|
+
- **Threads** (+3): add_thread_member, remove_thread_member, list_thread_members
|
|
25
|
+
- **Events** (+1): get_event_subscribers
|
|
26
|
+
- Administrator permission option in init wizard — avoids role hierarchy issues
|
|
27
|
+
- Bot self-lockout prevention when making channels private (auto-grants bot access before denying @everyone)
|
|
28
|
+
- Enriched error messages for Discord API errors (Missing Access, Missing Permissions) with actionable hints
|
|
29
|
+
|
|
30
|
+
### Improved
|
|
31
|
+
|
|
32
|
+
- Error handler now detects Discord error codes (50013, 50001, 50035) and returns fix instructions
|
|
33
|
+
- set_channel_permissions automatically preserves bot access when denying @everyone ViewChannel
|
|
34
|
+
|
|
35
|
+
## [1.4.0] - 2026-02-22
|
|
36
|
+
|
|
37
|
+
### Added
|
|
38
|
+
|
|
39
|
+
- Typewriter animation effect on the welcome message for a polished first impression
|
|
40
|
+
- Token format pre-validation — detects malformed tokens before attempting Discord login
|
|
41
|
+
- Retry loop on invalid token — users can paste a new token without restarting the wizard
|
|
42
|
+
- Quick permission pre-check built into `init` — shows pass/fail summary right after guild selection
|
|
43
|
+
- Configuration summary card at the end of setup showing bot, server, and clients configured
|
|
44
|
+
- Staged spinner messages during connection (`Resolving gateway...` → `Authenticating...` → `Fetching servers...`)
|
|
45
|
+
- Richer guild selection display with boost level indicators
|
|
46
|
+
- Smooth animated transitions between wizard steps
|
|
47
|
+
|
|
48
|
+
### Improved
|
|
49
|
+
|
|
50
|
+
- Spinner now supports `.update()` to change its message mid-animation
|
|
51
|
+
- Completion banner uses typewriter animation for a satisfying finish
|
|
52
|
+
- Guild info shows boost tier, member count, and ID in a formatted row
|
|
53
|
+
- Next steps box has cleaner column alignment for all client names
|
|
54
|
+
- Authentication failure now offers to retry instead of exiting immediately
|
|
55
|
+
- Help text updated to say "any MCP client" instead of just Claude Code
|
|
56
|
+
|
|
57
|
+
## [1.3.1] - 2026-02-22
|
|
58
|
+
|
|
59
|
+
### Added
|
|
60
|
+
|
|
61
|
+
- Troubleshooting section in README covering all common errors with fixes
|
|
62
|
+
- Actionable startup error messages that point to `init` or `check` commands
|
|
63
|
+
- More npm keywords for discoverability (cursor, windsurf, claude-desktop, ai-tools)
|
|
64
|
+
- GitHub repo topics for better search visibility
|
|
65
|
+
|
|
66
|
+
### Improved
|
|
67
|
+
|
|
68
|
+
- Startup log messages use `[discord-mcp]` prefix for cleaner output
|
|
69
|
+
- Error on missing token/guild now shows the exact command to fix it
|
|
70
|
+
- Failed startup points to `npx @quadslab.io/discord-mcp check` for diagnostics
|
|
71
|
+
|
|
72
|
+
## [1.3.0] - 2026-02-22
|
|
73
|
+
|
|
74
|
+
### Fixed
|
|
75
|
+
|
|
76
|
+
- MCP server version was hardcoded to `1.0.0` — now reads dynamically from `package.json`
|
|
77
|
+
- CLI logo showed hardcoded `v1.0` — removed (version shown via `--version` flag instead)
|
|
78
|
+
- Dead code: Windsurf path ternary had identical branches
|
|
79
|
+
- Missing `Manage Auto Moderation` permission in bot setup guide
|
|
80
|
+
- `CHANGELOG.md` was excluded from npm package — now included
|
|
81
|
+
- Duplicate startup log messages consolidated
|
|
82
|
+
|
|
83
|
+
### Improved
|
|
84
|
+
|
|
85
|
+
- `docs/discord-mcp-server.md` — rewritten setup section with CLI-first workflow, multi-client config table
|
|
86
|
+
- `docs/bot-setup-guide.md` — Step 6 now leads with `npx init` wizard, manual setup as fallback
|
|
87
|
+
- `CONTRIBUTING.md` — added project structure diagram, CLI development section, and CHANGELOG to docs checklist
|
|
88
|
+
- `.github/PULL_REQUEST_TEMPLATE.md` — added CLI testing and CHANGELOG checklist items
|
|
89
|
+
- `.env.example` — documented `BOT_TOKEN` fallback
|
|
90
|
+
- `package.json` — added `exports` map for ESM consumers, updated description to mention all supported clients
|
|
91
|
+
- README architecture diagram updated with accurate file descriptions
|
|
92
|
+
|
|
93
|
+
## [1.2.3] - 2026-02-22
|
|
94
|
+
|
|
95
|
+
### Fixed
|
|
96
|
+
|
|
97
|
+
- Init wizard now detects non-project directories (Desktop, Downloads, home, Documents, etc.) and writes Claude Code config to global `~/.claude.json` instead of a useless project-scoped `.mcp.json`
|
|
98
|
+
- Shows a warning when running from a suspicious directory with clear explanation of what will happen
|
|
99
|
+
|
|
100
|
+
## [1.2.2] - 2026-02-22
|
|
101
|
+
|
|
102
|
+
### Fixed
|
|
103
|
+
|
|
104
|
+
- `@everyone` role now resolves correctly — was previously excluded from the role cache, causing "not found" errors when targeting it in permission tools
|
|
105
|
+
- Role cache now includes `@everyone` alongside all other roles
|
|
106
|
+
|
|
107
|
+
## [1.2.1] - 2026-02-22
|
|
108
|
+
|
|
109
|
+
### Fixed
|
|
110
|
+
|
|
111
|
+
- Discord gateway rate limit errors (opcode 8) during startup member fetch — now retries with exponential backoff
|
|
112
|
+
- All 99 tool calls now automatically retry on rate limits (up to 3 attempts with backoff)
|
|
113
|
+
- Rate limit `retry_after` value is parsed from Discord's error response for optimal wait times
|
|
114
|
+
|
|
115
|
+
## [1.2.0] - 2026-02-22
|
|
116
|
+
|
|
117
|
+
### Added
|
|
118
|
+
|
|
119
|
+
- Multi-client support in `init` wizard — auto-detects and configures:
|
|
120
|
+
- Claude Code (`.mcp.json`)
|
|
121
|
+
- Claude Desktop (`claude_desktop_config.json`)
|
|
122
|
+
- Cursor (`~/.cursor/mcp.json`)
|
|
123
|
+
- Windsurf (`~/.codeium/windsurf/mcp_config.json`)
|
|
124
|
+
- "All detected" option to configure every installed client at once
|
|
125
|
+
- "Skip" option with manual config output and file path reference
|
|
126
|
+
- Client-specific next steps shown after setup
|
|
127
|
+
|
|
128
|
+
## [1.1.0] - 2026-02-22
|
|
129
|
+
|
|
130
|
+
### Added
|
|
131
|
+
|
|
132
|
+
- Interactive CLI setup wizard (`npx @quadslab.io/discord-mcp init`)
|
|
133
|
+
- Guided bot creation with step-by-step instructions
|
|
134
|
+
- Live token validation with masked input
|
|
135
|
+
- Auto-generated invite URL with all required permissions
|
|
136
|
+
- Server auto-discovery and selection
|
|
137
|
+
- Automatic `.mcp.json` generation with merge support
|
|
138
|
+
- Health check command (`npx @quadslab.io/discord-mcp check`)
|
|
139
|
+
- Token and server validation
|
|
140
|
+
- Full permission audit with visual progress bar
|
|
141
|
+
- Color-coded pass/fail output
|
|
142
|
+
- Help and version commands
|
|
143
|
+
- Branded CLI output with QuadsLab.io ASCII art, ANSI colors, animated spinners
|
|
144
|
+
- TTY detection — auto-starts MCP server when launched via `.mcp.json`
|
|
145
|
+
|
|
146
|
+
### Changed
|
|
147
|
+
|
|
148
|
+
- Binary entry point changed from `mcp-server.js` to `cli.js`
|
|
149
|
+
- `mcp-server.ts` now exports `main()` for CLI imports
|
|
150
|
+
|
|
151
|
+
## [1.0.0] - 2026-02-22
|
|
152
|
+
|
|
153
|
+
### Added
|
|
154
|
+
|
|
155
|
+
- Initial release with 99 tools across 14 categories
|
|
156
|
+
- Guild tools (2): server info and metadata
|
|
157
|
+
- Role tools (9): CRUD, permissions, icons, assignment
|
|
158
|
+
- Channel tools (16): CRUD, permissions, locking, slowmode, cloning, forums, reordering
|
|
159
|
+
- Member tools (12): moderation, timeouts, pruning, bulk role operations, voice management
|
|
160
|
+
- Message tools (13): send, edit, delete, bulk delete, pins, reactions, crossposting
|
|
161
|
+
- Reaction tools (1): detailed reactor info with account age, join date, roles, boost status
|
|
162
|
+
- Server admin tools (13): settings, invites, bans, audit log, welcome screen, widget, integrations
|
|
163
|
+
- Thread tools (7): create, archive, lock, delete
|
|
164
|
+
- Forum tools (5): posts, tag management
|
|
165
|
+
- Emoji and sticker tools (7): upload, rename, delete
|
|
166
|
+
- Webhook tools (4): CRUD and message sending
|
|
167
|
+
- Scheduled event tools (4): create, edit, delete
|
|
168
|
+
- Stage instance tools (3): start, end, list
|
|
169
|
+
- Auto-moderation tools (4): rule CRUD
|
|
170
|
+
- Fuzzy name matching for all channel, role, and member parameters
|
|
171
|
+
- Pre-cached server data for instant lookups
|
|
172
|
+
- 3 MCP resources for server overview data
|
|
173
|
+
- Audit log reason support on all modifying operations
|
|
174
|
+
- Helpful error messages with name suggestions on failed lookups
|
package/CLAUDE.md
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# discord-mcp
|
|
2
|
+
|
|
3
|
+
This project is managed by **QuadCode** — a multi-agent terminal manager with integrated project tools.
|
|
4
|
+
|
|
5
|
+
## QuadCode Integration
|
|
6
|
+
|
|
7
|
+
You have access to QuadCode's MCP tools and skills in this project:
|
|
8
|
+
|
|
9
|
+
### Available Skills (slash commands)
|
|
10
|
+
- `/organize-ideas` — Categorize and tag ideas
|
|
11
|
+
- `/brainstorm [topic]` — Generate related ideas
|
|
12
|
+
- `/idea-summary` — Overview of all ideas
|
|
13
|
+
- `/idea-to-prompt [id]` — Convert idea to implementation prompt
|
|
14
|
+
- `/organize-issues` — Organize and label issues
|
|
15
|
+
- `/triage-issues` — Prioritize and prepare issues for work
|
|
16
|
+
- `/issue-summary` — Overview of all issues
|
|
17
|
+
- `/issue-to-prompt [id]` — Convert issue to implementation prompt
|
|
18
|
+
- `/run-script [name]` — Execute a saved build script
|
|
19
|
+
- `/setup-scripts` — Auto-detect and create build scripts
|
|
20
|
+
- `/create-rich-plan` — Create detailed implementation plan
|
|
21
|
+
- `/plan-from-idea [id]` — Plan from an existing idea
|
|
22
|
+
- `/check-implemented` — Audit which ideas are done
|
|
23
|
+
- `/check-issue-progress` — Audit issue completion
|
|
24
|
+
- `/weekly-digest` — Weekly summary of activity
|
|
25
|
+
|
|
26
|
+
### MCP Tools
|
|
27
|
+
All `mcp__quadcode__*` tools are available for direct access to Ideas, Issues, Plans, Scripts, Environments, and Chat.
|
|
28
|
+
|
|
29
|
+
### Project Management
|
|
30
|
+
- **Ideas**: Capture and organize feature ideas, improvements, and notes
|
|
31
|
+
- **Issues**: Track bugs, tasks, and work items with kanban workflow
|
|
32
|
+
- **Plans**: Create structured implementation plans with steps
|
|
33
|
+
- **Scripts**: Save and run reusable build/test/deploy commands
|
|
34
|
+
|
|
35
|
+
## For Agents
|
|
36
|
+
|
|
37
|
+
1. Use QuadCode tools to track your work — create issues for bugs, ideas for improvements
|
|
38
|
+
2. Check existing ideas/issues before starting work to avoid duplication
|
|
39
|
+
3. The working directory is managed by QuadCode's project system — don't change it
|
|
40
|
+
4. Use `/run-script` instead of memorizing build commands
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 QuadsLab
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 QuadsLab
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|