@prmichaelsen/reddit-mcp 0.1.0 → 0.1.1

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 (58) hide show
  1. package/.claude/settings.local.json +4 -1
  2. package/README.md +253 -27
  3. package/agent/progress.yaml +29 -30
  4. package/dist/factory.js +1206 -0
  5. package/dist/factory.js.map +4 -4
  6. package/dist/index.js +1206 -0
  7. package/dist/index.js.map +4 -4
  8. package/dist/server.d.ts.map +1 -1
  9. package/dist/server.js +1206 -0
  10. package/dist/server.js.map +4 -4
  11. package/dist/tools/account.d.ts +4 -0
  12. package/dist/tools/account.d.ts.map +1 -0
  13. package/dist/tools/comments.d.ts +4 -0
  14. package/dist/tools/comments.d.ts.map +1 -0
  15. package/dist/tools/flair.d.ts +4 -0
  16. package/dist/tools/flair.d.ts.map +1 -0
  17. package/dist/tools/messages.d.ts +4 -0
  18. package/dist/tools/messages.d.ts.map +1 -0
  19. package/dist/tools/moderation.d.ts +4 -0
  20. package/dist/tools/moderation.d.ts.map +1 -0
  21. package/dist/tools/multireddits.d.ts +4 -0
  22. package/dist/tools/multireddits.d.ts.map +1 -0
  23. package/dist/tools/posts.d.ts +4 -0
  24. package/dist/tools/posts.d.ts.map +1 -0
  25. package/dist/tools/subreddits.d.ts +4 -0
  26. package/dist/tools/subreddits.d.ts.map +1 -0
  27. package/dist/tools/users.d.ts +4 -0
  28. package/dist/tools/users.d.ts.map +1 -0
  29. package/dist/tools/voting.d.ts +4 -0
  30. package/dist/tools/voting.d.ts.map +1 -0
  31. package/dist/tools/wiki.d.ts +4 -0
  32. package/dist/tools/wiki.d.ts.map +1 -0
  33. package/package.json +1 -1
  34. package/src/server.ts +22 -0
  35. package/src/tools/account.ts +84 -0
  36. package/src/tools/comments.ts +73 -0
  37. package/src/tools/flair.ts +79 -0
  38. package/src/tools/messages.ts +126 -0
  39. package/src/tools/moderation.ts +292 -0
  40. package/src/tools/multireddits.ts +152 -0
  41. package/src/tools/posts.ts +177 -0
  42. package/src/tools/subreddits.ts +137 -0
  43. package/src/tools/users.ts +181 -0
  44. package/src/tools/voting.ts +90 -0
  45. package/src/tools/wiki.ts +118 -0
  46. package/tests/fixtures/reddit-responses.ts +159 -0
  47. package/tests/unit/account.test.ts +95 -0
  48. package/tests/unit/comments.test.ts +92 -0
  49. package/tests/unit/flair.test.ts +101 -0
  50. package/tests/unit/messages.test.ts +106 -0
  51. package/tests/unit/moderation.test.ts +243 -0
  52. package/tests/unit/multireddits.test.ts +136 -0
  53. package/tests/unit/posts.test.ts +155 -0
  54. package/tests/unit/subreddits.test.ts +125 -0
  55. package/tests/unit/transport.test.ts +13 -0
  56. package/tests/unit/users.test.ts +124 -0
  57. package/tests/unit/voting.test.ts +110 -0
  58. package/tests/unit/wiki.test.ts +116 -0
@@ -17,7 +17,10 @@
17
17
  "WebFetch(domain:publicapis.io)",
18
18
  "Bash(git add:*)",
19
19
  "Bash(npm install:*)",
20
- "Bash(npm run:*)"
20
+ "Bash(npm run:*)",
21
+ "Bash(gh repo:*)",
22
+ "Bash(npx tsc:*)",
23
+ "Bash(npx jest:*)"
21
24
  ]
22
25
  }
23
26
  }
package/README.md CHANGED
@@ -1,50 +1,276 @@
1
1
  # reddit-mcp
2
2
 
3
- MCP server wrapping the Reddit API for AI agents.
3
+ MCP server wrapping the Reddit API for AI agents. Provides **88 tools** covering listings, search, posts, comments, voting, messaging, moderation, multireddits, wiki, and more.
4
4
 
5
5
  > Built with [Agent Context Protocol](https://github.com/prmichaelsen/agent-context-protocol)
6
6
 
7
+ ## Features
8
+
9
+ - **88 MCP tools** — full Reddit API coverage across 13 categories
10
+ - **Reddit OAuth 2.0** authentication with automatic token refresh
11
+ - **Dual transport**: stdio (default) and Streamable HTTP
12
+ - **Rate-limit aware**: respects Reddit's X-Ratelimit headers (100 QPM)
13
+ - **Retry logic**: automatic retry with exponential backoff for transient errors
14
+ - **Error mapping**: clear, actionable error messages for all API errors
15
+ - **Factory export**: for multi-tenant use via mcp-auth
16
+
7
17
  ## Quick Start
8
18
 
9
- [Add installation and usage instructions here]
19
+ ### 1. Install
10
20
 
11
- ## Features
21
+ ```bash
22
+ npm install
23
+ npm run build
24
+ ```
25
+
26
+ ### 2. Configure OAuth
27
+
28
+ Create a Reddit app at https://www.reddit.com/prefs/apps and set these environment variables:
29
+
30
+ ```env
31
+ REDDIT_CLIENT_ID=your_client_id
32
+ REDDIT_CLIENT_SECRET=your_client_secret
33
+ REDDIT_REDIRECT_URI=http://localhost:8080/callback
34
+ REDDIT_USER_AGENT=platform:app-id:v0.1.0 (by /u/username)
35
+ ```
36
+
37
+ ### 3. Run
38
+
39
+ ```bash
40
+ # stdio transport (default)
41
+ npm start
42
+
43
+ # HTTP transport
44
+ node dist/index.js --transport http --port 3000
45
+ ```
46
+
47
+ ### 4. Claude Desktop Configuration
48
+
49
+ ```json
50
+ {
51
+ "mcpServers": {
52
+ "reddit": {
53
+ "command": "node",
54
+ "args": ["/path/to/reddit-mcp/dist/index.js"],
55
+ "env": {
56
+ "REDDIT_CLIENT_ID": "your_client_id",
57
+ "REDDIT_CLIENT_SECRET": "your_client_secret",
58
+ "REDDIT_USER_AGENT": "platform:app-id:v0.1.0 (by /u/username)"
59
+ }
60
+ }
61
+ }
62
+ }
63
+ ```
64
+
65
+ ## Transport Options
66
+
67
+ | Transport | Flag | Default |
68
+ |-----------|------|---------|
69
+ | stdio | `--transport stdio` | Yes |
70
+ | HTTP | `--transport http` | No |
71
+
72
+ | Option | CLI | Env Var | Default |
73
+ |--------|-----|---------|---------|
74
+ | Port | `--port 3000` | `HTTP_PORT` | 3000 |
75
+ | Host | `--host localhost` | `HTTP_HOST` | localhost |
76
+
77
+ ## Tools Reference
78
+
79
+ ### Listings (9 tools)
80
+
81
+ | Tool | Description | Scope |
82
+ |------|-------------|-------|
83
+ | `reddit_listings_best` | Get best posts | read |
84
+ | `reddit_listings_hot` | Get hot posts (frontpage or subreddit) | read |
85
+ | `reddit_listings_new` | Get newest posts | read |
86
+ | `reddit_listings_rising` | Get rising posts | read |
87
+ | `reddit_listings_top` | Get top posts (with time filter) | read |
88
+ | `reddit_listings_controversial` | Get controversial posts | read |
89
+ | `reddit_comments_thread` | Get post with full comment tree | read |
90
+ | `reddit_duplicates` | Get cross-posts / duplicates | read |
91
+ | `reddit_info` | Get info about things by fullname | read |
92
+
93
+ ### Search (2 tools)
12
94
 
13
- - Feature 1
14
- - Feature 2
15
- - Feature 3
95
+ | Tool | Description | Scope |
96
+ |------|-------------|-------|
97
+ | `reddit_search` | Search across all of Reddit | read |
98
+ | `reddit_search_subreddit` | Search within a specific subreddit | read |
16
99
 
17
- ## Development
100
+ ### Posts (9 tools)
18
101
 
19
- This project uses the Agent Context Protocol for development:
102
+ | Tool | Description | Scope |
103
+ |------|-------------|-------|
104
+ | `reddit_submit` | Create a new post (link or self) | submit |
105
+ | `reddit_edit` | Edit a self-post or comment | edit |
106
+ | `reddit_delete` | Delete a post or comment | edit |
107
+ | `reddit_hide` | Hide a post from listings | report |
108
+ | `reddit_unhide` | Unhide a post | report |
109
+ | `reddit_mark_nsfw` | Mark a post as NSFW | modposts |
110
+ | `reddit_unmark_nsfw` | Remove NSFW mark | modposts |
111
+ | `reddit_spoiler` | Mark a post as spoiler | modposts |
112
+ | `reddit_unspoiler` | Remove spoiler mark | modposts |
20
113
 
21
- - `@acp.init` - Initialize agent context
22
- - `@acp.plan` - Plan milestones and tasks
23
- - `@acp.proceed` - Continue with next task
24
- - `@acp.status` - Check project status
114
+ ### Comments (2 tools)
25
115
 
26
- See [AGENT.md](./AGENT.md) for complete ACP documentation.
116
+ | Tool | Description | Scope |
117
+ |------|-------------|-------|
118
+ | `reddit_comment` | Post a comment or reply | submit |
119
+ | `reddit_more_children` | Load more comments from collapsed threads | read |
120
+
121
+ ### Voting, Save & Report (4 tools)
122
+
123
+ | Tool | Description | Scope |
124
+ |------|-------------|-------|
125
+ | `reddit_vote` | Upvote/downvote/unvote | vote |
126
+ | `reddit_save` | Save content | save |
127
+ | `reddit_unsave` | Unsave content | save |
128
+ | `reddit_report` | Report content | report |
129
+
130
+ ### Account (7 tools)
131
+
132
+ | Tool | Description | Scope |
133
+ |------|-------------|-------|
134
+ | `reddit_me` | Get authenticated user info | identity |
135
+ | `reddit_me_karma` | Get karma breakdown by subreddit | mysubreddits |
136
+ | `reddit_me_prefs` | Get user preferences | identity |
137
+ | `reddit_me_prefs_update` | Update user preferences | account |
138
+ | `reddit_me_trophies` | Get user trophies | identity |
139
+ | `reddit_me_friends` | Get friends list | mysubreddits |
140
+ | `reddit_me_blocked` | Get blocked users list | mysubreddits |
141
+
142
+ ### Users (9 tools)
143
+
144
+ | Tool | Description | Scope |
145
+ |------|-------------|-------|
146
+ | `reddit_user_about` | Get user profile | read |
147
+ | `reddit_user_overview` | Get user's recent posts and comments | history |
148
+ | `reddit_user_submitted` | Get user's submitted posts | history |
149
+ | `reddit_user_comments` | Get user's comments | history |
150
+ | `reddit_user_saved` | Get user's saved items | history |
151
+ | `reddit_user_upvoted` | Get user's upvoted posts | history |
152
+ | `reddit_user_downvoted` | Get user's downvoted posts | history |
153
+ | `reddit_user_trophies` | Get user's trophies | read |
154
+ | `reddit_block_user` | Block a user | account |
155
+
156
+ ### Messages (7 tools)
157
+
158
+ | Tool | Description | Scope |
159
+ |------|-------------|-------|
160
+ | `reddit_inbox` | Get inbox messages | privatemessages |
161
+ | `reddit_unread` | Get unread messages | privatemessages |
162
+ | `reddit_sent` | Get sent messages | privatemessages |
163
+ | `reddit_compose` | Send a private message | privatemessages |
164
+ | `reddit_read_message` | Mark message as read | privatemessages |
165
+ | `reddit_unread_message` | Mark message as unread | privatemessages |
166
+ | `reddit_del_msg` | Delete a message | privatemessages |
167
+
168
+ ### Subreddits (8 tools)
169
+
170
+ | Tool | Description | Scope |
171
+ |------|-------------|-------|
172
+ | `reddit_subreddit_about` | Get subreddit metadata | read |
173
+ | `reddit_subreddit_rules` | Get subreddit rules | read |
174
+ | `reddit_subscribe` | Subscribe to a subreddit | subscribe |
175
+ | `reddit_unsubscribe` | Unsubscribe from a subreddit | subscribe |
176
+ | `reddit_subreddits_mine` | List subscribed subreddits | mysubreddits |
177
+ | `reddit_subreddits_popular` | List popular subreddits | read |
178
+ | `reddit_subreddits_new` | List newest subreddits | read |
179
+ | `reddit_subreddits_search` | Search for subreddits | read |
180
+
181
+ ### Flair (3 tools)
182
+
183
+ | Tool | Description | Scope |
184
+ |------|-------------|-------|
185
+ | `reddit_link_flair` | Get available post flair templates | flair |
186
+ | `reddit_user_flair` | Get available user flair templates | flair |
187
+ | `reddit_select_flair` | Set flair on a post or user | flair |
188
+
189
+ ### Moderation (16 tools)
190
+
191
+ | Tool | Description | Scope |
192
+ |------|-------------|-------|
193
+ | `reddit_approve` | Approve a post or comment | modposts |
194
+ | `reddit_remove` | Remove a post or comment | modposts |
195
+ | `reddit_distinguish` | Distinguish as moderator | modposts |
196
+ | `reddit_ignore_reports` | Ignore future reports | modposts |
197
+ | `reddit_unignore_reports` | Stop ignoring reports | modposts |
198
+ | `reddit_lock` | Lock a thread | modposts |
199
+ | `reddit_unlock` | Unlock a thread | modposts |
200
+ | `reddit_modqueue` | Get mod queue items | modposts |
201
+ | `reddit_reports` | Get reported items | modposts |
202
+ | `reddit_spam` | Get spam items | modposts |
203
+ | `reddit_edited` | Get recently edited items | modposts |
204
+ | `reddit_modlog` | Get moderation log | modlog |
205
+ | `reddit_moderators` | List moderators | read |
206
+ | `reddit_contributors` | List approved contributors | modcontributors |
207
+ | `reddit_banned` | List banned users | modcontributors |
208
+ | `reddit_muted` | List muted users | modcontributors |
209
+
210
+ ### Multireddits (7 tools)
211
+
212
+ | Tool | Description | Scope |
213
+ |------|-------------|-------|
214
+ | `reddit_multi_mine` | List your multireddits | read |
215
+ | `reddit_multi_get` | Get a multireddit | read |
216
+ | `reddit_multi_create` | Create a multireddit | subscribe |
217
+ | `reddit_multi_update` | Update a multireddit | subscribe |
218
+ | `reddit_multi_delete` | Delete a multireddit | subscribe |
219
+ | `reddit_multi_add_sub` | Add subreddit to multireddit | subscribe |
220
+ | `reddit_multi_remove_sub` | Remove subreddit from multireddit | subscribe |
221
+
222
+ ### Wiki (5 tools)
223
+
224
+ | Tool | Description | Scope |
225
+ |------|-------------|-------|
226
+ | `reddit_wiki_page` | Read a wiki page | wikiread |
227
+ | `reddit_wiki_edit` | Edit a wiki page | wikiedit |
228
+ | `reddit_wiki_pages` | List all wiki pages | wikiread |
229
+ | `reddit_wiki_revisions` | Get wiki revision history | wikiread |
230
+ | `reddit_wiki_page_revisions` | Get revisions for a specific page | wikiread |
231
+
232
+ ## Reddit API Rate Limits
233
+
234
+ - **100 queries per minute** per OAuth client ID (averaged over 10-minute window)
235
+ - Rate limit headers are automatically parsed and respected
236
+ - 429 responses trigger automatic backoff and retry
27
237
 
28
238
  ## Project Structure
29
239
 
30
240
  ```
31
241
  reddit-mcp/
32
- ├── AGENT.md # ACP methodology
33
- ├── agent/ # ACP directory
34
- │ ├── design/ # Design documents
35
- │ ├── milestones/ # Project milestones
36
- │ ├── tasks/ # Task breakdown
37
- │ ├── patterns/ # Architectural patterns
38
- └── progress.yaml # Progress tracking
39
- └── (your project files)
242
+ ├── src/
243
+ ├── index.ts # Transport selector (stdio/HTTP)
244
+ │ ├── server.ts # MCP server factory
245
+ │ ├── factory.ts # Public factory export (for mcp-auth)
246
+ │ ├── auth/oauth.ts # Reddit OAuth 2.0
247
+ │ ├── client/reddit.ts # Reddit API HTTP client
248
+ ├── tools/
249
+ │ │ ├── listings.ts # 9 listing tools
250
+ │ │ ├── search.ts # 2 search tools
251
+ │ │ ├── posts.ts # 9 post tools
252
+ │ │ ├── comments.ts # 2 comment tools
253
+ │ │ ├── voting.ts # 4 vote/save/report tools
254
+ │ │ ├── account.ts # 7 account tools
255
+ │ │ ├── users.ts # 9 user profile tools
256
+ │ │ ├── messages.ts # 7 message tools
257
+ │ │ ├── subreddits.ts # 8 subreddit tools
258
+ │ │ ├── flair.ts # 3 flair tools
259
+ │ │ ├── moderation.ts # 16 moderation tools
260
+ │ │ ├── multireddits.ts # 7 multireddit tools
261
+ │ │ └── wiki.ts # 5 wiki tools
262
+ │ ├── transport/http.ts # Streamable HTTP transport
263
+ │ └── types/index.ts # Shared types
264
+ ├── tests/
265
+ │ ├── unit/ # 17 test suites (135 tests)
266
+ │ ├── fixtures/ # Mock Reddit API responses
267
+ │ └── helpers/ # Mock client
268
+ ├── package.json
269
+ ├── tsconfig.json
270
+ ├── esbuild.build.js
271
+ └── jest.config.js
40
272
  ```
41
273
 
42
- ## Getting Started
43
-
44
- 1. Initialize context: `@acp.init`
45
- 2. Plan your project: `@acp.plan`
46
- 3. Start building: `@acp.proceed`
47
-
48
274
  ## License
49
275
 
50
276
  MIT
@@ -16,37 +16,37 @@ milestones:
16
16
  file: agent/milestones/milestone-1-foundation-listings-mvp.md
17
17
  - id: M2
18
18
  title: Content Interaction
19
- status: not_started
19
+ status: completed
20
20
  tasks_total: 3
21
- tasks_complete: 0
21
+ tasks_complete: 3
22
22
  estimated_weeks: 1
23
23
  file: agent/milestones/milestone-2-content-interaction.md
24
24
  - id: M3
25
25
  title: Users & Messaging
26
- status: not_started
26
+ status: completed
27
27
  tasks_total: 3
28
- tasks_complete: 0
28
+ tasks_complete: 3
29
29
  estimated_weeks: 1
30
30
  file: agent/milestones/milestone-3-users-and-messaging.md
31
31
  - id: M4
32
32
  title: Subreddits & Flair
33
- status: not_started
33
+ status: completed
34
34
  tasks_total: 3
35
- tasks_complete: 0
35
+ tasks_complete: 3
36
36
  estimated_weeks: 1
37
37
  file: agent/milestones/milestone-4-subreddits-and-flair.md
38
38
  - id: M5
39
39
  title: Moderation
40
- status: not_started
40
+ status: completed
41
41
  tasks_total: 3
42
- tasks_complete: 0
42
+ tasks_complete: 3
43
43
  estimated_weeks: 1
44
44
  file: agent/milestones/milestone-5-moderation.md
45
45
  - id: M6
46
46
  title: Advanced Features & Polish
47
- status: not_started
47
+ status: completed
48
48
  tasks_total: 3
49
- tasks_complete: 0
49
+ tasks_complete: 3
50
50
  estimated_weeks: 1
51
51
  file: agent/milestones/milestone-6-advanced-features-and-polish.md
52
52
 
@@ -90,95 +90,95 @@ tasks:
90
90
  milestone_2:
91
91
  - id: T7
92
92
  title: Post Tools
93
- status: not_started
93
+ status: completed
94
94
  estimated_hours: 3
95
95
  dependencies: [T6]
96
96
  file: agent/tasks/milestone-2-content-interaction/task-7-post-tools.md
97
97
  - id: T8
98
98
  title: Comment Tools
99
- status: not_started
99
+ status: completed
100
100
  estimated_hours: 2
101
101
  dependencies: [T7]
102
102
  file: agent/tasks/milestone-2-content-interaction/task-8-comment-tools.md
103
103
  - id: T9
104
104
  title: Vote, Save & Report Tools
105
- status: not_started
105
+ status: completed
106
106
  estimated_hours: 1.5
107
107
  dependencies: [T7]
108
108
  file: agent/tasks/milestone-2-content-interaction/task-9-vote-save-report-tools.md
109
109
  milestone_3:
110
110
  - id: T10
111
111
  title: Account Tools
112
- status: not_started
112
+ status: completed
113
113
  estimated_hours: 2
114
114
  dependencies: [T6]
115
115
  file: agent/tasks/milestone-3-users-and-messaging/task-10-account-tools.md
116
116
  - id: T11
117
117
  title: User Profile Tools
118
- status: not_started
118
+ status: completed
119
119
  estimated_hours: 2.5
120
120
  dependencies: [T6]
121
121
  file: agent/tasks/milestone-3-users-and-messaging/task-11-user-profile-tools.md
122
122
  - id: T12
123
123
  title: Private Message Tools
124
- status: not_started
124
+ status: completed
125
125
  estimated_hours: 2
126
126
  dependencies: [T6]
127
127
  file: agent/tasks/milestone-3-users-and-messaging/task-12-private-message-tools.md
128
128
  milestone_4:
129
129
  - id: T13
130
130
  title: Subreddit Tools
131
- status: not_started
131
+ status: completed
132
132
  estimated_hours: 2.5
133
133
  dependencies: [T6]
134
134
  file: agent/tasks/milestone-4-subreddits-and-flair/task-13-subreddit-tools.md
135
135
  - id: T14
136
136
  title: Flair Tools
137
- status: not_started
137
+ status: completed
138
138
  estimated_hours: 1.5
139
139
  dependencies: [T13]
140
140
  file: agent/tasks/milestone-4-subreddits-and-flair/task-14-flair-tools.md
141
141
  - id: T15
142
142
  title: HTTP Transport
143
- status: not_started
143
+ status: completed
144
144
  estimated_hours: 2
145
145
  dependencies: [T4]
146
146
  file: agent/tasks/milestone-4-subreddits-and-flair/task-15-http-transport.md
147
147
  milestone_5:
148
148
  - id: T16
149
149
  title: Mod Action Tools
150
- status: not_started
150
+ status: completed
151
151
  estimated_hours: 2
152
152
  dependencies: [T6]
153
153
  file: agent/tasks/milestone-5-moderation/task-16-mod-action-tools.md
154
154
  - id: T17
155
155
  title: Mod Listing Tools
156
- status: not_started
156
+ status: completed
157
157
  estimated_hours: 2
158
158
  dependencies: [T16]
159
159
  file: agent/tasks/milestone-5-moderation/task-17-mod-listing-tools.md
160
160
  - id: T18
161
161
  title: Mod Management Tools
162
- status: not_started
162
+ status: completed
163
163
  estimated_hours: 1.5
164
164
  dependencies: [T16]
165
165
  file: agent/tasks/milestone-5-moderation/task-18-mod-management-tools.md
166
166
  milestone_6:
167
167
  - id: T19
168
168
  title: Multireddit Tools
169
- status: not_started
169
+ status: completed
170
170
  estimated_hours: 2
171
171
  dependencies: [T6]
172
172
  file: agent/tasks/milestone-6-advanced-features-and-polish/task-19-multireddit-tools.md
173
173
  - id: T20
174
174
  title: Wiki Tools
175
- status: not_started
175
+ status: completed
176
176
  estimated_hours: 2
177
177
  dependencies: [T6]
178
178
  file: agent/tasks/milestone-6-advanced-features-and-polish/task-20-wiki-tools.md
179
179
  - id: T21
180
180
  title: Documentation & Polish
181
- status: not_started
181
+ status: completed
182
182
  estimated_hours: 3
183
183
  dependencies: [T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
184
184
  file: agent/tasks/milestone-6-advanced-features-and-polish/task-21-documentation-polish.md
@@ -191,8 +191,8 @@ documentation:
191
191
 
192
192
  progress:
193
193
  planning: 100
194
- implementation: 17
195
- overall: 20
194
+ implementation: 100
195
+ overall: 100
196
196
 
197
197
  recent_work:
198
198
  - date: 2026-03-10
@@ -210,9 +210,8 @@ recent_work:
210
210
  - Implemented stdio and HTTP transports
211
211
 
212
212
  next_steps:
213
- - Start M2 Task 7: Post Tools
214
- - Continue with M2 Content Interaction (submit, comment, vote, save)
215
- - Then M3 Users & Messaging
213
+ - All milestones complete
214
+ - npm publish when ready
216
215
 
217
216
  notes:
218
217
  - Following youtube-mcp reference pattern (same architecture)