social-mcp 1.6.0 → 1.7.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.
Files changed (104) hide show
  1. package/README.md +128 -45
  2. package/dist/index.js +32 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/lib/config.d.ts +9 -0
  5. package/dist/lib/config.js +9 -0
  6. package/dist/lib/config.js.map +1 -1
  7. package/dist/services/bluesky-service.d.ts +22 -0
  8. package/dist/services/bluesky-service.js +67 -0
  9. package/dist/services/bluesky-service.js.map +1 -0
  10. package/dist/services/linkedin-service.js.map +1 -1
  11. package/dist/services/mastodon-service.d.ts +65 -0
  12. package/dist/services/mastodon-service.js +92 -0
  13. package/dist/services/mastodon-service.js.map +1 -0
  14. package/dist/services/reddit-service.js +5 -1
  15. package/dist/services/reddit-service.js.map +1 -1
  16. package/dist/services/threads-service.js +7 -2
  17. package/dist/services/threads-service.js.map +1 -1
  18. package/dist/services/tiktok-service.js +5 -1
  19. package/dist/services/tiktok-service.js.map +1 -1
  20. package/dist/services/whatsapp-service.js.map +1 -1
  21. package/dist/services/youtube-service.js.map +1 -1
  22. package/dist/tools/bluesky-tools/create-post.d.ts +14 -0
  23. package/dist/tools/bluesky-tools/create-post.js +27 -0
  24. package/dist/tools/bluesky-tools/create-post.js.map +1 -0
  25. package/dist/tools/bluesky-tools/delete-post.d.ts +14 -0
  26. package/dist/tools/bluesky-tools/delete-post.js +25 -0
  27. package/dist/tools/bluesky-tools/delete-post.js.map +1 -0
  28. package/dist/tools/bluesky-tools/get-profile.d.ts +14 -0
  29. package/dist/tools/bluesky-tools/get-profile.js +36 -0
  30. package/dist/tools/bluesky-tools/get-profile.js.map +1 -0
  31. package/dist/tools/bluesky-tools/like-post.d.ts +16 -0
  32. package/dist/tools/bluesky-tools/like-post.js +24 -0
  33. package/dist/tools/bluesky-tools/like-post.js.map +1 -0
  34. package/dist/tools/bluesky-tools/reply-to-post.d.ts +22 -0
  35. package/dist/tools/bluesky-tools/reply-to-post.js +33 -0
  36. package/dist/tools/bluesky-tools/reply-to-post.js.map +1 -0
  37. package/dist/tools/bluesky-tools/search-posts.d.ts +16 -0
  38. package/dist/tools/bluesky-tools/search-posts.js +36 -0
  39. package/dist/tools/bluesky-tools/search-posts.js.map +1 -0
  40. package/dist/tools/linkedin-tools/create-post.js.map +1 -1
  41. package/dist/tools/linkedin-tools/get-posts.js +2 -2
  42. package/dist/tools/linkedin-tools/get-posts.js.map +1 -1
  43. package/dist/tools/linkedin-tools/like-post.js.map +1 -1
  44. package/dist/tools/linkedin-tools/search-people.js +4 -1
  45. package/dist/tools/linkedin-tools/search-people.js.map +1 -1
  46. package/dist/tools/mastodon-tools/boost-post.d.ts +14 -0
  47. package/dist/tools/mastodon-tools/boost-post.js +23 -0
  48. package/dist/tools/mastodon-tools/boost-post.js.map +1 -0
  49. package/dist/tools/mastodon-tools/create-post.d.ts +26 -0
  50. package/dist/tools/mastodon-tools/create-post.js +31 -0
  51. package/dist/tools/mastodon-tools/create-post.js.map +1 -0
  52. package/dist/tools/mastodon-tools/delete-post.d.ts +14 -0
  53. package/dist/tools/mastodon-tools/delete-post.js +23 -0
  54. package/dist/tools/mastodon-tools/delete-post.js.map +1 -0
  55. package/dist/tools/mastodon-tools/favourite-post.d.ts +14 -0
  56. package/dist/tools/mastodon-tools/favourite-post.js +23 -0
  57. package/dist/tools/mastodon-tools/favourite-post.js.map +1 -0
  58. package/dist/tools/mastodon-tools/get-profile.d.ts +7 -0
  59. package/dist/tools/mastodon-tools/get-profile.js +32 -0
  60. package/dist/tools/mastodon-tools/get-profile.js.map +1 -0
  61. package/dist/tools/mastodon-tools/reply-to-post.d.ts +28 -0
  62. package/dist/tools/mastodon-tools/reply-to-post.js +28 -0
  63. package/dist/tools/mastodon-tools/reply-to-post.js.map +1 -0
  64. package/dist/tools/mastodon-tools/search-posts.d.ts +16 -0
  65. package/dist/tools/mastodon-tools/search-posts.js +36 -0
  66. package/dist/tools/mastodon-tools/search-posts.js.map +1 -0
  67. package/dist/tools/reddit-tools/comment.js.map +1 -1
  68. package/dist/tools/reddit-tools/get-posts.js +14 -3
  69. package/dist/tools/reddit-tools/get-posts.js.map +1 -1
  70. package/dist/tools/reddit-tools/get-user-info.js +3 -1
  71. package/dist/tools/reddit-tools/get-user-info.js.map +1 -1
  72. package/dist/tools/reddit-tools/search.js +7 -1
  73. package/dist/tools/reddit-tools/search.js.map +1 -1
  74. package/dist/tools/reddit-tools/submit-post.js +8 -2
  75. package/dist/tools/reddit-tools/submit-post.js.map +1 -1
  76. package/dist/tools/reddit-tools/vote.js.map +1 -1
  77. package/dist/tools/threads-tools/create-post.js +5 -1
  78. package/dist/tools/threads-tools/create-post.js.map +1 -1
  79. package/dist/tools/threads-tools/get-posts.js +7 -1
  80. package/dist/tools/threads-tools/get-posts.js.map +1 -1
  81. package/dist/tools/threads-tools/reply.js +4 -1
  82. package/dist/tools/threads-tools/reply.js.map +1 -1
  83. package/dist/tools/tiktok-tools/direct-post-video.js +22 -5
  84. package/dist/tools/tiktok-tools/direct-post-video.js.map +1 -1
  85. package/dist/tools/tiktok-tools/get-post-status.js +4 -1
  86. package/dist/tools/tiktok-tools/get-post-status.js.map +1 -1
  87. package/dist/tools/tiktok-tools/get-user-info.js +9 -3
  88. package/dist/tools/tiktok-tools/get-user-info.js.map +1 -1
  89. package/dist/tools/tiktok-tools/photo-post.js +11 -2
  90. package/dist/tools/tiktok-tools/photo-post.js.map +1 -1
  91. package/dist/tools/tiktok-tools/query-creator-info.js.map +1 -1
  92. package/dist/tools/youtube-tools/get-channel-info.js +4 -1
  93. package/dist/tools/youtube-tools/get-channel-info.js.map +1 -1
  94. package/dist/tools/youtube-tools/get-comments.js +7 -1
  95. package/dist/tools/youtube-tools/get-comments.js.map +1 -1
  96. package/dist/tools/youtube-tools/get-video-info.js +9 -3
  97. package/dist/tools/youtube-tools/get-video-info.js.map +1 -1
  98. package/dist/tools/youtube-tools/list-channel-videos.js +16 -4
  99. package/dist/tools/youtube-tools/list-channel-videos.js.map +1 -1
  100. package/dist/tools/youtube-tools/search-videos.js +19 -4
  101. package/dist/tools/youtube-tools/search-videos.js.map +1 -1
  102. package/dist/tools/youtube-tools/update-video.js +4 -1
  103. package/dist/tools/youtube-tools/update-video.js.map +1 -1
  104. package/package.json +3 -2
package/README.md CHANGED
@@ -4,19 +4,22 @@ An MCP (Model Context Protocol) server that lets AI assistants post and interact
4
4
 
5
5
  ## Supported Platforms
6
6
 
7
- | Platform | Tools |
8
- |-----------|-------|
7
+ | Platform | Tools |
8
+ | --------- | ---------------------------------------------------------------------------------------------------------------------- |
9
9
  | Telegram | Send message, get channel info, forward message, pin message, get channel administrators, edit message, delete message |
10
- | Twitter/X | Send tweet, reply to tweet, like tweet, delete tweet, get user info, search tweets |
11
- | Discord | Send message, get messages |
12
- | WhatsApp | Send message |
13
- | Facebook | Create post, get posts |
14
- | Instagram | Create post, get posts |
15
- | Slack | Send message, get messages, list channels |
16
- | LinkedIn | Get profile, create post, get posts, like post, add comment, search people |
17
- | Reddit | Submit post, get posts, comment, vote, search, get user info |
18
- | Threads | Get profile, create post, reply, get posts, delete post |
19
- | TikTok | Query creator info, get user info, post video, photo post, get post status |
10
+ | Twitter/X | Send tweet, reply to tweet, like tweet, delete tweet, get user info, search tweets |
11
+ | Discord | Send message, get messages |
12
+ | WhatsApp | Send message |
13
+ | Facebook | Create post, get posts |
14
+ | Instagram | Create post, get posts |
15
+ | Slack | Send message, get messages, list channels |
16
+ | LinkedIn | Get profile, create post, get posts, like post, add comment, search people |
17
+ | Reddit | Submit post, get posts, comment, vote, search, get user info |
18
+ | Threads | Get profile, create post, reply, get posts, delete post |
19
+ | Bluesky | Get profile, create post, reply, get posts, delete post, like post, search posts |
20
+ | Mastodon | Get profile, create post, reply, search posts, boost post, favourite post, delete post |
21
+ | TikTok | Query creator info, get user info, post video, photo post, get post status |
22
+ | YouTube | Get channel info, search videos, get video info, list channel videos, get comments, post comment, update video |
20
23
 
21
24
  ## Quick Start
22
25
 
@@ -64,7 +67,12 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS)
64
67
  "REDDIT_PASSWORD": "your_password",
65
68
  "THREADS_ACCESS_TOKEN": "your_token",
66
69
  "THREADS_USER_ID": "your_user_id",
67
- "TIKTOK_ACCESS_TOKEN": "your_token"
70
+ "BLUESKY_IDENTIFIER": "your_handle",
71
+ "BLUESKY_APP_PASSWORD": "your_app_password",
72
+ "MASTODON_ACCESS_TOKEN": "your_token",
73
+ "MASTODON_INSTANCE_URL": "https://mastodon.social",
74
+ "TIKTOK_ACCESS_TOKEN": "your_token",
75
+ "YOUTUBE_ACCESS_TOKEN": "your_token"
68
76
  }
69
77
  }
70
78
  }
@@ -94,71 +102,104 @@ Only include env vars for the platforms you actually use — unconfigured platfo
94
102
  Copy `example.env` to `.env` and fill in the credentials for the platforms you want to use.
95
103
 
96
104
  ### Telegram
97
- | Variable | Description |
98
- |----------|-------------|
105
+
106
+ | Variable | Description |
107
+ | -------------------- | --------------------------------------------------- |
99
108
  | `TELEGRAM_BOT_TOKEN` | Bot token from [@BotFather](https://t.me/BotFather) |
100
109
 
101
110
  ### Twitter / X
102
- | Variable | Description |
103
- |----------|-------------|
104
- | `TWITTER_APP_KEY` | API key from the [Twitter Developer Portal](https://developer.twitter.com) |
105
- | `TWITTER_APP_SECRET` | API secret |
106
- | `TWITTER_ACCESS_TOKEN` | Access token (OAuth 1.0a, Read & Write) |
107
- | `TWITTER_ACCESS_SECRET` | Access token secret |
111
+
112
+ | Variable | Description |
113
+ | ----------------------- | -------------------------------------------------------------------------- |
114
+ | `TWITTER_APP_KEY` | API key from the [Twitter Developer Portal](https://developer.twitter.com) |
115
+ | `TWITTER_APP_SECRET` | API secret |
116
+ | `TWITTER_ACCESS_TOKEN` | Access token (OAuth 1.0a, Read & Write) |
117
+ | `TWITTER_ACCESS_SECRET` | Access token secret |
108
118
 
109
119
  ### Discord
110
- | Variable | Description |
111
- |----------|-------------|
120
+
121
+ | Variable | Description |
122
+ | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
112
123
  | `DISCORD_BOT_TOKEN` | Bot token from the [Discord Developer Portal](https://discord.com/developers/applications) — bot must have Send Messages and Read Message History permissions |
113
124
 
114
125
  ### WhatsApp Business
115
- | Variable | Description |
116
- |----------|-------------|
117
- | `WHATSAPP_ACCESS_TOKEN` | Access token from Meta for Developers |
126
+
127
+ | Variable | Description |
128
+ | -------------------------- | --------------------------------------- |
129
+ | `WHATSAPP_ACCESS_TOKEN` | Access token from Meta for Developers |
118
130
  | `WHATSAPP_PHONE_NUMBER_ID` | Phone Number ID from WhatsApp API Setup |
119
131
 
120
132
  ### Facebook
121
- | Variable | Description |
122
- |----------|-------------|
133
+
134
+ | Variable | Description |
135
+ | ----------------------- | ---------------------------------------------- |
123
136
  | `FACEBOOK_ACCESS_TOKEN` | Page Access Token from Meta Graph API Explorer |
124
137
 
125
138
  ### Instagram
126
- | Variable | Description |
127
- |----------|-------------|
139
+
140
+ | Variable | Description |
141
+ | ------------------------ | -------------------------------------------- |
128
142
  | `INSTAGRAM_ACCESS_TOKEN` | Token with `instagram_content_publish` scope |
129
143
 
130
144
  ### Slack
131
- | Variable | Description |
132
- |----------|-------------|
145
+
146
+ | Variable | Description |
147
+ | ----------------- | ------------------------------------------------------------------------------------------------------------------------------ |
133
148
  | `SLACK_BOT_TOKEN` | Bot token from [api.slack.com](https://api.slack.com/apps) — requires `chat:write`, `channels:history`, `channels:read` scopes |
134
149
 
135
150
  ### LinkedIn
136
- | Variable | Description |
137
- |----------|-------------|
151
+
152
+ | Variable | Description |
153
+ | ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
138
154
  | `LINKEDIN_ACCESS_TOKEN` | OAuth 2.0 access token from the [LinkedIn Developer Portal](https://www.linkedin.com/developers/apps) — requires `r_liteprofile`, `w_member_social` scopes |
139
155
 
140
156
  ### Reddit
141
- | Variable | Description |
142
- |----------|-------------|
143
- | `REDDIT_CLIENT_ID` | App client ID from [reddit.com/prefs/apps](https://www.reddit.com/prefs/apps) (create a "script" type app) |
144
- | `REDDIT_CLIENT_SECRET` | App client secret |
145
- | `REDDIT_USERNAME` | Reddit account username |
146
- | `REDDIT_PASSWORD` | Reddit account password |
157
+
158
+ | Variable | Description |
159
+ | ---------------------- | ---------------------------------------------------------------------------------------------------------- |
160
+ | `REDDIT_CLIENT_ID` | App client ID from [reddit.com/prefs/apps](https://www.reddit.com/prefs/apps) (create a "script" type app) |
161
+ | `REDDIT_CLIENT_SECRET` | App client secret |
162
+ | `REDDIT_USERNAME` | Reddit account username |
163
+ | `REDDIT_PASSWORD` | Reddit account password |
147
164
 
148
165
  ### Threads
149
- | Variable | Description |
150
- |----------|-------------|
166
+
167
+ | Variable | Description |
168
+ | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
151
169
  | `THREADS_ACCESS_TOKEN` | OAuth 2.0 access token from the [Meta for Developers](https://developers.facebook.com) — requires `threads_basic`, `threads_content_publish` scopes |
152
- | `THREADS_USER_ID` | Your Threads user ID (returned from the Threads API `/me` endpoint) |
170
+ | `THREADS_USER_ID` | Your Threads user ID (returned from the Threads API `/me` endpoint) |
171
+
172
+ ### Bluesky
173
+
174
+ | Variable | Description |
175
+ | ---------------------- | ------------------------------------------------------------------------------------------------------------- |
176
+ | `BLUESKY_IDENTIFIER` | Your Bluesky handle (e.g., `user.bsky.social`) or email address |
177
+ | `BLUESKY_APP_PASSWORD` | App-specific password generated at [bsky.app/settings/app-passwords](https://bsky.app/settings/app-passwords) |
178
+ | `BLUESKY_SERVICE` | (Optional) Bluesky service URL (defaults to `https://bsky.social`) |
179
+
180
+ ### Mastodon
181
+
182
+ | Variable | Description |
183
+ | ----------------------- | ----------------------------------------------------------------------------- |
184
+ | `MASTODON_ACCESS_TOKEN` | OAuth 2.0 access token from your Mastodon instance |
185
+ | `MASTODON_INSTANCE_URL` | (Optional) Your Mastodon instance URL (defaults to `https://mastodon.social`) |
153
186
 
154
187
  ### TikTok
155
- | Variable | Description |
156
- |----------|-------------|
188
+
189
+ | Variable | Description |
190
+ | --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
157
191
  | `TIKTOK_ACCESS_TOKEN` | OAuth 2.0 access token from the [TikTok for Developers](https://developers.tiktok.com) — requires `user.info.basic`, `video.publish`, `video.upload` scopes |
158
192
 
193
+ ### YouTube
194
+
195
+ | Variable | Description |
196
+ | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
197
+ | `YOUTUBE_ACCESS_TOKEN` | OAuth 2.0 access token from the [Google Cloud Console](https://console.cloud.google.com) — requires `https://www.googleapis.com/auth/youtube` scope |
198
+
159
199
  ## Available Tools
160
200
 
161
201
  ### Telegram
202
+
162
203
  - **TELEGRAM_SEND_MESSAGE** — Send a message to a chat or channel (`chatId`, `text`)
163
204
  - **TELEGRAM_GET_CHANNEL_INFO** — Get channel metadata (`channelId`)
164
205
  - **TELEGRAM_FORWARD_MESSAGE** — Forward a message between chats (`fromChatId`, `toChatId`, `messageId`)
@@ -168,6 +209,7 @@ Copy `example.env` to `.env` and fill in the credentials for the platforms you w
168
209
  - **TELEGRAM_DELETE_MESSAGE** — Delete a message (`chatId`, `messageId`)
169
210
 
170
211
  ### Twitter / X
212
+
171
213
  - **SEND_TWEET** — Post a tweet (`text`, max 280 chars)
172
214
  - **REPLY_TWEET** — Reply to a tweet (`tweetId`, `text`)
173
215
  - **LIKE_TWEET** — Like a tweet (`tweetId`)
@@ -176,28 +218,34 @@ Copy `example.env` to `.env` and fill in the credentials for the platforms you w
176
218
  - **SEARCH_TWEETS** — Search recent tweets (`query`, `maxResults`)
177
219
 
178
220
  ### Discord
221
+
179
222
  - **SEND_DISCORD_MESSAGE** — Send a message to a channel (`channelId`, `content`)
180
223
  - **GET_DISCORD_MESSAGES** — Retrieve recent messages from a channel (`channelId`, `limit`)
181
224
 
182
225
  ### WhatsApp
226
+
183
227
  - **SEND_WHATSAPP_MESSAGE** — Send a message to a phone number in E.164 format (`to`, `text`)
184
228
 
185
229
  > **Note:** WhatsApp message retrieval requires webhook setup and cannot be polled via the API.
186
230
 
187
231
  ### Facebook
232
+
188
233
  - **CREATE_FACEBOOK_POST** — Create a post on a Facebook page (`pageId`, `message`)
189
234
  - **GET_FACEBOOK_POSTS** — Retrieve recent posts from a page (`pageId`, `limit`)
190
235
 
191
236
  ### Instagram
237
+
192
238
  - **CREATE_INSTAGRAM_POST** — Publish an image post (`userId`, `imageUrl`, `caption`)
193
239
  - **GET_INSTAGRAM_POSTS** — Retrieve recent posts from an account (`userId`, `limit`)
194
240
 
195
241
  ### Slack
242
+
196
243
  - **SEND_SLACK_MESSAGE** — Send a message to a channel (`channelId`, `text`)
197
244
  - **GET_SLACK_MESSAGES** — Retrieve recent messages from a channel (`channelId`, `limit`)
198
245
  - **LIST_SLACK_CHANNELS** — List public channels in the workspace (`limit`)
199
246
 
200
247
  ### LinkedIn
248
+
201
249
  - **GET_LINKEDIN_PROFILE** — Get the authenticated user's profile information
202
250
  - **CREATE_LINKEDIN_POST** — Create a UGC post (`authorUrn`, `text`, `visibility`)
203
251
  - **GET_LINKEDIN_POSTS** — Retrieve recent posts by a member or organization (`authorUrn`, `count`)
@@ -209,6 +257,7 @@ Copy `example.env` to `.env` and fill in the credentials for the platforms you w
209
257
  > **Note:** `SEARCH_LINKEDIN_PEOPLE` uses the LinkedIn People Search API which requires [Partner Program](https://learn.microsoft.com/en-us/linkedin/talent/recruiter-system-connect/getting-access) access. Most developer apps will receive a 403. All other tools work with a standard OAuth 2.0 token.
210
258
 
211
259
  ### Reddit
260
+
212
261
  - **REDDIT_SUBMIT_POST** — Submit a text or link post to a subreddit (`subreddit`, `title`, `kind`, `text`, `url`)
213
262
  - **REDDIT_GET_POSTS** — Get posts from a subreddit (`subreddit`, `sort`, `limit`)
214
263
  - **REDDIT_COMMENT** — Comment on a post or reply to a comment (`parentId`, `text`)
@@ -219,13 +268,35 @@ Copy `example.env` to `.env` and fill in the credentials for the platforms you w
219
268
  > **Note:** Reddit requires a "script" type app in [reddit.com/prefs/apps](https://www.reddit.com/prefs/apps). The password grant flow is used — 2FA must be disabled on the account.
220
269
 
221
270
  ### Threads
271
+
222
272
  - **THREADS_GET_PROFILE** — Get your Threads profile information
223
273
  - **THREADS_CREATE_POST** — Create a new text post (`text`)
224
274
  - **THREADS_REPLY** — Reply to a Threads post (`replyToId`, `text`)
225
275
  - **THREADS_GET_POSTS** — Get recent posts from your account (`limit`)
226
276
  - **THREADS_DELETE_POST** — Delete a post by ID (`mediaId`)
227
277
 
278
+ ### Bluesky
279
+
280
+ - **BLUESKY_GET_PROFILE** — Get your Bluesky profile information
281
+ - **BLUESKY_CREATE_POST** — Create a new text post (`text`)
282
+ - **BLUESKY_REPLY_TO_POST** — Reply to a Bluesky post (`text`, `parentUri`, `parentCid`, `rootUri`, `rootCid`)
283
+ - **BLUESKY_GET_POSTS** — Get recent posts from your feed (`limit`)
284
+ - **BLUESKY_DELETE_POST** — Delete a post by URI (`uri`, `cid`)
285
+ - **BLUESKY_LIKE_POST** — Like a post (`uri`, `cid`)
286
+ - **BLUESKY_SEARCH_POSTS** — Search for posts on Bluesky (`query`, `limit`)
287
+
288
+ ### Mastodon
289
+
290
+ - **MASTODON_GET_PROFILE** — Get your Mastodon profile information
291
+ - **MASTODON_CREATE_POST** — Create a new post (`status`, `inReplyToId` optional, `visibility`)
292
+ - **MASTODON_REPLY_TO_POST** — Reply to a Mastodon post (`status`, `inReplyToId`)
293
+ - **MASTODON_SEARCH_POSTS** — Search for posts on your instance (`query`, `limit`)
294
+ - **MASTODON_BOOST_POST** — Reblog/boost a post (`statusId`)
295
+ - **MASTODON_FAVOURITE_POST** — Favorite/like a post (`statusId`)
296
+ - **MASTODON_DELETE_POST** — Delete a post (`statusId`)
297
+
228
298
  ### TikTok
299
+
229
300
  - **TIKTOK_QUERY_CREATOR_INFO** — Query creator info including posting permissions and privacy options
230
301
  - **TIKTOK_GET_USER_INFO** — Get TikTok account profile and stats
231
302
  - **TIKTOK_DIRECT_POST_VIDEO** — Post a video by URL (`videoUrl`, `title`, `privacyLevel`, ...)
@@ -234,6 +305,18 @@ Copy `example.env` to `.env` and fill in the credentials for the platforms you w
234
305
 
235
306
  > **Note:** TikTok's Content Posting API requires app approval from [TikTok for Developers](https://developers.tiktok.com). Videos are pulled from a public URL by TikTok's servers rather than uploaded directly.
236
307
 
308
+ ### YouTube
309
+
310
+ - **YOUTUBE_GET_CHANNEL_INFO** — Get channel info and stats (`channelId` optional — omit for your own channel)
311
+ - **YOUTUBE_SEARCH_VIDEOS** — Search YouTube for videos (`query`, `maxResults`, `pageToken`)
312
+ - **YOUTUBE_GET_VIDEO_INFO** — Get detailed info and stats for a video (`videoId`)
313
+ - **YOUTUBE_LIST_CHANNEL_VIDEOS** — List recent uploads from a channel (`channelId`, `maxResults`, `pageToken`)
314
+ - **YOUTUBE_GET_COMMENTS** — Get top-level comments on a video (`videoId`, `maxResults`)
315
+ - **YOUTUBE_POST_COMMENT** — Post a comment on a video (`videoId`, `text`)
316
+ - **YOUTUBE_UPDATE_VIDEO** — Update a video's title, description, and tags (`videoId`, `title`, `description`, `tags`, `categoryId`)
317
+
318
+ > **Note:** YouTube requires an OAuth 2.0 access token with the `https://www.googleapis.com/auth/youtube` scope. Enable the **YouTube Data API v3** in your [Google Cloud Console](https://console.cloud.google.com) project. Video uploads are not supported via this API — use the YouTube Studio or resumable upload flow directly.
319
+
237
320
  ## Development
238
321
 
239
322
  ```bash
package/dist/index.js CHANGED
@@ -14,6 +14,8 @@ import { getTikTokService } from "./services/tiktok-service.js";
14
14
  import { getTwitterService } from "./services/twitter-service.js";
15
15
  import { getWhatsappService } from "./services/whatsapp-service.js";
16
16
  import { getYouTubeService } from "./services/youtube-service.js";
17
+ import { getBlueskyService } from "./services/bluesky-service.js";
18
+ import { getMastodonService } from "./services/mastodon-service.js";
17
19
  import { getMessagesTool as discordGetMessagesTool } from "./tools/discord-tools/get-messages.js";
18
20
  import { sendMessageTool as discordSendMessageTool } from "./tools/discord-tools/send-message.js";
19
21
  import { createPostTool as facebookCreatePostTool } from "./tools/facebook-tools/create-post.js";
@@ -67,6 +69,19 @@ import { listChannelVideosTool as youtubeListChannelVideosTool } from "./tools/y
67
69
  import { postCommentTool as youtubePostCommentTool } from "./tools/youtube-tools/post-comment.js";
68
70
  import { searchVideosTool as youtubeSearchVideosTool } from "./tools/youtube-tools/search-videos.js";
69
71
  import { updateVideoTool as youtubeUpdateVideoTool } from "./tools/youtube-tools/update-video.js";
72
+ import { createPostTool as blueskyCreatePostTool } from "./tools/bluesky-tools/create-post.js";
73
+ import { deletePostTool as blueskyDeletePostTool } from "./tools/bluesky-tools/delete-post.js";
74
+ import { getProfileTool as blueskyGetProfileTool } from "./tools/bluesky-tools/get-profile.js";
75
+ import { likePostTool as blueskyLikePostTool } from "./tools/bluesky-tools/like-post.js";
76
+ import { replyToPostTool as blueskyReplyToPostTool } from "./tools/bluesky-tools/reply-to-post.js";
77
+ import { searchPostsTool as blueskySearchPostsTool } from "./tools/bluesky-tools/search-posts.js";
78
+ import { boostPostTool as mastodonBoostPostTool } from "./tools/mastodon-tools/boost-post.js";
79
+ import { createPostTool as mastodonCreatePostTool } from "./tools/mastodon-tools/create-post.js";
80
+ import { deletePostTool as mastodonDeletePostTool } from "./tools/mastodon-tools/delete-post.js";
81
+ import { favouritePostTool as mastodonFavouritePostTool } from "./tools/mastodon-tools/favourite-post.js";
82
+ import { getProfileTool as mastodonGetProfileTool } from "./tools/mastodon-tools/get-profile.js";
83
+ import { replyToPostTool as mastodonReplyToPostTool } from "./tools/mastodon-tools/reply-to-post.js";
84
+ import { searchPostsTool as mastodonSearchPostsTool } from "./tools/mastodon-tools/search-posts.js";
70
85
  const require = createRequire(import.meta.url);
71
86
  const { version } = require("../package.json");
72
87
  function checkPlatform(name, init) {
@@ -97,6 +112,8 @@ async function main() {
97
112
  checkPlatform("Threads", getThreadsService);
98
113
  checkPlatform("TikTok", getTikTokService);
99
114
  checkPlatform("YouTube", getYouTubeService);
115
+ checkPlatform("Bluesky", getBlueskyService);
116
+ checkPlatform("Mastodon", getMastodonService);
100
117
  console.error("");
101
118
  const server = new FastMCP({ name: "Social MCP Server", version });
102
119
  // Telegram
@@ -164,6 +181,21 @@ async function main() {
164
181
  server.addTool(youtubeGetCommentsTool);
165
182
  server.addTool(youtubePostCommentTool);
166
183
  server.addTool(youtubeUpdateVideoTool);
184
+ // Bluesky
185
+ server.addTool(blueskyCreatePostTool);
186
+ server.addTool(blueskyReplyToPostTool);
187
+ server.addTool(blueskyDeletePostTool);
188
+ server.addTool(blueskyLikePostTool);
189
+ server.addTool(blueskyGetProfileTool);
190
+ server.addTool(blueskySearchPostsTool);
191
+ // Mastodon
192
+ server.addTool(mastodonCreatePostTool);
193
+ server.addTool(mastodonReplyToPostTool);
194
+ server.addTool(mastodonDeletePostTool);
195
+ server.addTool(mastodonBoostPostTool);
196
+ server.addTool(mastodonFavouritePostTool);
197
+ server.addTool(mastodonGetProfileTool);
198
+ server.addTool(mastodonSearchPostsTool);
167
199
  try {
168
200
  await server.start({ transportType: "stdio" });
169
201
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -42,4 +42,13 @@ export declare const config: {
42
42
  baseUrl: string;
43
43
  accessToken: string;
44
44
  };
45
+ bluesky: {
46
+ service: string;
47
+ identifier: string;
48
+ appPassword: string;
49
+ };
50
+ mastodon: {
51
+ instanceUrl: string;
52
+ accessToken: string;
53
+ };
45
54
  };
@@ -43,5 +43,14 @@ export const config = {
43
43
  baseUrl: "https://www.googleapis.com/youtube/v3",
44
44
  accessToken: process.env.YOUTUBE_ACCESS_TOKEN || "",
45
45
  },
46
+ bluesky: {
47
+ service: process.env.BLUESKY_SERVICE || "https://bsky.social",
48
+ identifier: process.env.BLUESKY_IDENTIFIER || "",
49
+ appPassword: process.env.BLUESKY_APP_PASSWORD || "",
50
+ },
51
+ mastodon: {
52
+ instanceUrl: process.env.MASTODON_INSTANCE_URL || "https://mastodon.social",
53
+ accessToken: process.env.MASTODON_ACCESS_TOKEN || "",
54
+ },
46
55
  };
47
56
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC;AACxC,MAAM,SAAS,GAAG,8BAA8B,gBAAgB,EAAE,CAAC;AAEnE,MAAM,CAAC,MAAM,MAAM,GAAG;IACrB,OAAO,EAAE;QACR,OAAO,EAAE,6BAA6B;QACtC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE;KAC7C;IACD,QAAQ,EAAE;QACT,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;QACpD,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,EAAE;KACzD;IACD,QAAQ,EAAE;QACT,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;KACpD;IACD,SAAS,EAAE;QACV,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE;KACrD;IACD,QAAQ,EAAE;QACT,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;KACpD;IACD,MAAM,EAAE;QACP,OAAO,EAAE,0BAA0B;QACnC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE;QAC5C,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE;QACpD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;QAC3C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;QAC3C,SAAS,EAAE,uCAAuC;KAClD;IACD,OAAO,EAAE;QACR,OAAO,EAAE,gCAAgC;QACzC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE;QACnD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;KACzC;IACD,MAAM,EAAE;QACP,OAAO,EAAE,gCAAgC;QACzC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE;KAClD;IACD,OAAO,EAAE;QACR,OAAO,EAAE,uCAAuC;QAChD,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE;KACnD;CACD,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC;AACxC,MAAM,SAAS,GAAG,8BAA8B,gBAAgB,EAAE,CAAC;AAEnE,MAAM,CAAC,MAAM,MAAM,GAAG;IACrB,OAAO,EAAE;QACR,OAAO,EAAE,6BAA6B;QACtC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE;KAC7C;IACD,QAAQ,EAAE;QACT,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;QACpD,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,EAAE;KACzD;IACD,QAAQ,EAAE;QACT,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;KACpD;IACD,SAAS,EAAE;QACV,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE;KACrD;IACD,QAAQ,EAAE;QACT,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;KACpD;IACD,MAAM,EAAE;QACP,OAAO,EAAE,0BAA0B;QACnC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE;QAC5C,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE;QACpD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;QAC3C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;QAC3C,SAAS,EAAE,uCAAuC;KAClD;IACD,OAAO,EAAE;QACR,OAAO,EAAE,gCAAgC;QACzC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE;QACnD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;KACzC;IACD,MAAM,EAAE;QACP,OAAO,EAAE,gCAAgC;QACzC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE;KAClD;IACD,OAAO,EAAE;QACR,OAAO,EAAE,uCAAuC;QAChD,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE;KACnD;IACD,OAAO,EAAE;QACR,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,qBAAqB;QAC7D,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE;QAChD,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE;KACnD;IACD,QAAQ,EAAE;QACT,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,yBAAyB;QAC3E,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;KACpD;CACD,CAAC"}
@@ -0,0 +1,22 @@
1
+ export declare class BlueskyService {
2
+ private agent;
3
+ private loggedIn;
4
+ constructor();
5
+ private ensureLoggedIn;
6
+ createPost(text: string): Promise<{
7
+ uri: string;
8
+ cid: string;
9
+ }>;
10
+ replyToPost(text: string, parentUri: string, parentCid: string, rootUri: string, rootCid: string): Promise<{
11
+ uri: string;
12
+ cid: string;
13
+ }>;
14
+ deletePost(postUri: string): Promise<void>;
15
+ likePost(postUri: string, postCid: string): Promise<{
16
+ uri: string;
17
+ cid: string;
18
+ }>;
19
+ getProfile(handle: string): Promise<import("@atproto/api/dist/client/types/app/bsky/actor/defs.js").ProfileViewDetailed>;
20
+ searchPosts(query: string, limit?: number): Promise<import("@atproto/api/dist/client/types/app/bsky/feed/searchPosts.js").OutputSchema>;
21
+ }
22
+ export declare function getBlueskyService(): BlueskyService;
@@ -0,0 +1,67 @@
1
+ import { BskyAgent } from "@atproto/api";
2
+ import { config } from "../lib/config.js";
3
+ import { CredentialsError } from "../lib/errors.js";
4
+ export class BlueskyService {
5
+ agent;
6
+ loggedIn = false;
7
+ constructor() {
8
+ if (!config.bluesky.identifier || !config.bluesky.appPassword) {
9
+ throw new CredentialsError("Bluesky", [
10
+ "BLUESKY_IDENTIFIER",
11
+ "BLUESKY_APP_PASSWORD",
12
+ ]);
13
+ }
14
+ this.agent = new BskyAgent({ service: config.bluesky.service });
15
+ }
16
+ async ensureLoggedIn() {
17
+ if (!this.loggedIn) {
18
+ await this.agent.login({
19
+ identifier: config.bluesky.identifier,
20
+ password: config.bluesky.appPassword,
21
+ });
22
+ this.loggedIn = true;
23
+ }
24
+ }
25
+ async createPost(text) {
26
+ await this.ensureLoggedIn();
27
+ return this.agent.post({ text });
28
+ }
29
+ async replyToPost(text, parentUri, parentCid, rootUri, rootCid) {
30
+ await this.ensureLoggedIn();
31
+ return this.agent.post({
32
+ text,
33
+ reply: {
34
+ root: { uri: rootUri, cid: rootCid },
35
+ parent: { uri: parentUri, cid: parentCid },
36
+ },
37
+ });
38
+ }
39
+ async deletePost(postUri) {
40
+ await this.ensureLoggedIn();
41
+ await this.agent.deletePost(postUri);
42
+ }
43
+ async likePost(postUri, postCid) {
44
+ await this.ensureLoggedIn();
45
+ return this.agent.like(postUri, postCid);
46
+ }
47
+ async getProfile(handle) {
48
+ await this.ensureLoggedIn();
49
+ const result = await this.agent.getProfile({ actor: handle });
50
+ return result.data;
51
+ }
52
+ async searchPosts(query, limit = 10) {
53
+ await this.ensureLoggedIn();
54
+ const result = await this.agent.app.bsky.feed.searchPosts({
55
+ q: query,
56
+ limit,
57
+ });
58
+ return result.data;
59
+ }
60
+ }
61
+ let _instance;
62
+ export function getBlueskyService() {
63
+ if (!_instance)
64
+ _instance = new BlueskyService();
65
+ return _instance;
66
+ }
67
+ //# sourceMappingURL=bluesky-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bluesky-service.js","sourceRoot":"","sources":["../../src/services/bluesky-service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"linkedin-service.js","sourceRoot":"","sources":["../../src/services/linkedin-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linkedin-service.js","sourceRoot":"","sources":["../../src/services/linkedin-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ export declare class MastodonService {
2
+ private baseUrl;
3
+ private headers;
4
+ constructor();
5
+ getProfile(): Promise<{
6
+ id: string;
7
+ username: string;
8
+ acct: string;
9
+ display_name: string;
10
+ note?: string | undefined;
11
+ followers_count?: number | undefined;
12
+ following_count?: number | undefined;
13
+ statuses_count?: number | undefined;
14
+ url?: string | undefined;
15
+ }>;
16
+ createPost(status: string, visibility?: "public" | "unlisted" | "private" | "direct"): Promise<{
17
+ id: string;
18
+ content: string;
19
+ url?: string | undefined;
20
+ created_at?: string | undefined;
21
+ favourites_count?: number | undefined;
22
+ reblogs_count?: number | undefined;
23
+ replies_count?: number | undefined;
24
+ }>;
25
+ replyToPost(status: string, inReplyToId: string, visibility?: "public" | "unlisted" | "private" | "direct"): Promise<{
26
+ id: string;
27
+ content: string;
28
+ url?: string | undefined;
29
+ created_at?: string | undefined;
30
+ favourites_count?: number | undefined;
31
+ reblogs_count?: number | undefined;
32
+ replies_count?: number | undefined;
33
+ }>;
34
+ deletePost(statusId: string): Promise<void>;
35
+ boostPost(statusId: string): Promise<{
36
+ id: string;
37
+ content: string;
38
+ url?: string | undefined;
39
+ created_at?: string | undefined;
40
+ favourites_count?: number | undefined;
41
+ reblogs_count?: number | undefined;
42
+ replies_count?: number | undefined;
43
+ }>;
44
+ favouritePost(statusId: string): Promise<{
45
+ id: string;
46
+ content: string;
47
+ url?: string | undefined;
48
+ created_at?: string | undefined;
49
+ favourites_count?: number | undefined;
50
+ reblogs_count?: number | undefined;
51
+ replies_count?: number | undefined;
52
+ }>;
53
+ searchPosts(query: string, limit?: number): Promise<{
54
+ statuses: {
55
+ id: string;
56
+ content: string;
57
+ url?: string | undefined;
58
+ created_at?: string | undefined;
59
+ favourites_count?: number | undefined;
60
+ reblogs_count?: number | undefined;
61
+ replies_count?: number | undefined;
62
+ }[];
63
+ }>;
64
+ }
65
+ export declare function getMastodonService(): MastodonService;