social-mcp 2.5.0 → 2.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 (115) hide show
  1. package/README.md +64 -28
  2. package/dist/index.js +37 -29
  3. package/dist/index.js.map +1 -1
  4. package/dist/lib/http.d.ts +5 -1
  5. package/dist/lib/http.js.map +1 -1
  6. package/dist/lib/proxy.d.ts +4 -0
  7. package/dist/lib/proxy.js +13 -0
  8. package/dist/lib/proxy.js.map +1 -0
  9. package/dist/services/bluesky-service.d.ts +7 -1
  10. package/dist/services/bluesky-service.js +17 -2
  11. package/dist/services/bluesky-service.js.map +1 -1
  12. package/dist/services/discord-service.d.ts +24 -1
  13. package/dist/services/discord-service.js +46 -5
  14. package/dist/services/discord-service.js.map +1 -1
  15. package/dist/services/facebook-service.d.ts +17 -1
  16. package/dist/services/facebook-service.js +63 -5
  17. package/dist/services/facebook-service.js.map +1 -1
  18. package/dist/services/ghost-service.d.ts +4 -1
  19. package/dist/services/ghost-service.js +55 -9
  20. package/dist/services/ghost-service.js.map +1 -1
  21. package/dist/services/instagram-service.d.ts +6 -1
  22. package/dist/services/instagram-service.js +40 -3
  23. package/dist/services/instagram-service.js.map +1 -1
  24. package/dist/services/linkedin-service.d.ts +9 -1
  25. package/dist/services/linkedin-service.js +65 -8
  26. package/dist/services/linkedin-service.js.map +1 -1
  27. package/dist/services/mastodon-service.d.ts +10 -1
  28. package/dist/services/mastodon-service.js +35 -6
  29. package/dist/services/mastodon-service.js.map +1 -1
  30. package/dist/services/pinterest-service.d.ts +28 -2
  31. package/dist/services/pinterest-service.js +32 -8
  32. package/dist/services/pinterest-service.js.map +1 -1
  33. package/dist/services/reddit-service.d.ts +10 -1
  34. package/dist/services/reddit-service.js +62 -5
  35. package/dist/services/reddit-service.js.map +1 -1
  36. package/dist/services/slack-service.d.ts +14 -1
  37. package/dist/services/slack-service.js +22 -2
  38. package/dist/services/slack-service.js.map +1 -1
  39. package/dist/services/telegram-service.d.ts +4 -0
  40. package/dist/services/telegram-service.js +60 -1
  41. package/dist/services/telegram-service.js.map +1 -1
  42. package/dist/services/threads-service.d.ts +8 -1
  43. package/dist/services/threads-service.js +46 -7
  44. package/dist/services/threads-service.js.map +1 -1
  45. package/dist/services/tumblr-service.d.ts +25 -5
  46. package/dist/services/tumblr-service.js +51 -8
  47. package/dist/services/tumblr-service.js.map +1 -1
  48. package/dist/services/twitter-service.d.ts +13 -5
  49. package/dist/services/twitter-service.js +24 -3
  50. package/dist/services/twitter-service.js.map +1 -1
  51. package/dist/services/whatsapp-service.d.ts +10 -1
  52. package/dist/services/whatsapp-service.js +60 -9
  53. package/dist/services/whatsapp-service.js.map +1 -1
  54. package/dist/services/youtube-service.d.ts +21 -0
  55. package/dist/services/youtube-service.js +57 -7
  56. package/dist/services/youtube-service.js.map +1 -1
  57. package/dist/tools/bluesky-tools/create-post.d.ts +11 -1
  58. package/dist/tools/bluesky-tools/create-post.js +11 -2
  59. package/dist/tools/bluesky-tools/create-post.js.map +1 -1
  60. package/dist/tools/discord-tools/get-messages.js +6 -1
  61. package/dist/tools/discord-tools/get-messages.js.map +1 -1
  62. package/dist/tools/discord-tools/send-message.d.ts +11 -1
  63. package/dist/tools/discord-tools/send-message.js +17 -3
  64. package/dist/tools/discord-tools/send-message.js.map +1 -1
  65. package/dist/tools/facebook-tools/create-post.d.ts +5 -1
  66. package/dist/tools/facebook-tools/create-post.js +12 -2
  67. package/dist/tools/facebook-tools/create-post.js.map +1 -1
  68. package/dist/tools/facebook-tools/create-video-post.d.ts +20 -0
  69. package/dist/tools/facebook-tools/create-video-post.js +31 -0
  70. package/dist/tools/facebook-tools/create-video-post.js.map +1 -0
  71. package/dist/tools/ghost-tools/create-post.d.ts +4 -0
  72. package/dist/tools/ghost-tools/create-post.js +27 -4
  73. package/dist/tools/ghost-tools/create-post.js.map +1 -1
  74. package/dist/tools/instagram-tools/create-post.d.ts +11 -1
  75. package/dist/tools/instagram-tools/create-post.js +8 -3
  76. package/dist/tools/instagram-tools/create-post.js.map +1 -1
  77. package/dist/tools/linkedin-tools/create-post.d.ts +5 -1
  78. package/dist/tools/linkedin-tools/create-post.js +9 -2
  79. package/dist/tools/linkedin-tools/create-post.js.map +1 -1
  80. package/dist/tools/mastodon-tools/create-post.d.ts +11 -1
  81. package/dist/tools/mastodon-tools/create-post.js +18 -2
  82. package/dist/tools/mastodon-tools/create-post.js.map +1 -1
  83. package/dist/tools/medium-tools/create-post.d.ts +2 -2
  84. package/dist/tools/pinterest-tools/create-pin.d.ts +4 -2
  85. package/dist/tools/pinterest-tools/create-pin.js +8 -2
  86. package/dist/tools/pinterest-tools/create-pin.js.map +1 -1
  87. package/dist/tools/reddit-tools/submit-post.d.ts +9 -1
  88. package/dist/tools/reddit-tools/submit-post.js +19 -4
  89. package/dist/tools/reddit-tools/submit-post.js.map +1 -1
  90. package/dist/tools/slack-tools/send-message.d.ts +9 -1
  91. package/dist/tools/slack-tools/send-message.js +9 -2
  92. package/dist/tools/slack-tools/send-message.js.map +1 -1
  93. package/dist/tools/telegram-tools/send-document.d.ts +20 -0
  94. package/dist/tools/telegram-tools/send-document.js +33 -0
  95. package/dist/tools/telegram-tools/send-document.js.map +1 -0
  96. package/dist/tools/telegram-tools/send-photo.d.ts +20 -0
  97. package/dist/tools/telegram-tools/send-photo.js +33 -0
  98. package/dist/tools/telegram-tools/send-photo.js.map +1 -0
  99. package/dist/tools/threads-tools/create-post.d.ts +13 -1
  100. package/dist/tools/threads-tools/create-post.js +14 -2
  101. package/dist/tools/threads-tools/create-post.js.map +1 -1
  102. package/dist/tools/tumblr-tools/create-post.d.ts +6 -2
  103. package/dist/tools/tumblr-tools/create-post.js +39 -8
  104. package/dist/tools/tumblr-tools/create-post.js.map +1 -1
  105. package/dist/tools/tumblr-tools/get-posts.d.ts +2 -2
  106. package/dist/tools/twitter-tools/send-tweet.d.ts +9 -1
  107. package/dist/tools/twitter-tools/send-tweet.js +10 -2
  108. package/dist/tools/twitter-tools/send-tweet.js.map +1 -1
  109. package/dist/tools/whatsapp-tools/send-message.d.ts +19 -3
  110. package/dist/tools/whatsapp-tools/send-message.js +29 -3
  111. package/dist/tools/whatsapp-tools/send-message.js.map +1 -1
  112. package/dist/tools/youtube-tools/upload-video.d.ts +34 -0
  113. package/dist/tools/youtube-tools/upload-video.js +39 -0
  114. package/dist/tools/youtube-tools/upload-video.js.map +1 -0
  115. package/package.json +3 -1
@@ -0,0 +1,34 @@
1
+ import { z } from "zod";
2
+ declare const uploadVideoParams: z.ZodObject<{
3
+ content: z.ZodString;
4
+ contentType: z.ZodOptional<z.ZodString>;
5
+ title: z.ZodString;
6
+ description: z.ZodOptional<z.ZodString>;
7
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
8
+ categoryId: z.ZodOptional<z.ZodString>;
9
+ privacyStatus: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
10
+ public: "public";
11
+ unlisted: "unlisted";
12
+ private: "private";
13
+ }>>>;
14
+ }, z.core.$strip>;
15
+ type UploadVideoParams = z.infer<typeof uploadVideoParams>;
16
+ export declare const uploadVideoTool: {
17
+ readonly name: "YOUTUBE_UPLOAD_VIDEO";
18
+ readonly description: "Upload a video to the authenticated user's YouTube channel";
19
+ readonly parameters: z.ZodObject<{
20
+ content: z.ZodString;
21
+ contentType: z.ZodOptional<z.ZodString>;
22
+ title: z.ZodString;
23
+ description: z.ZodOptional<z.ZodString>;
24
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
25
+ categoryId: z.ZodOptional<z.ZodString>;
26
+ privacyStatus: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
27
+ public: "public";
28
+ unlisted: "unlisted";
29
+ private: "private";
30
+ }>>>;
31
+ }, z.core.$strip>;
32
+ readonly execute: (params: UploadVideoParams) => Promise<string>;
33
+ };
34
+ export {};
@@ -0,0 +1,39 @@
1
+ import { z } from "zod";
2
+ import { CredentialsError } from "../../lib/errors.js";
3
+ import { getYouTubeService } from "../../services/youtube-service.js";
4
+ const uploadVideoParams = z.object({
5
+ content: z.string().describe("Base64-encoded video bytes."),
6
+ contentType: z
7
+ .string()
8
+ .optional()
9
+ .describe("MIME type, e.g. video/mp4. Defaults to video/*."),
10
+ title: z.string().min(1).max(100).describe("Video title."),
11
+ description: z.string().optional().describe("Video description."),
12
+ tags: z.array(z.string()).optional().describe("Search tags for the video."),
13
+ categoryId: z
14
+ .string()
15
+ .optional()
16
+ .describe("YouTube category ID (default 22 — People & Blogs)."),
17
+ privacyStatus: z
18
+ .enum(["public", "unlisted", "private"])
19
+ .optional()
20
+ .default("unlisted")
21
+ .describe("Visibility of the uploaded video."),
22
+ });
23
+ export const uploadVideoTool = {
24
+ name: "YOUTUBE_UPLOAD_VIDEO",
25
+ description: "Upload a video to the authenticated user's YouTube channel",
26
+ parameters: uploadVideoParams,
27
+ execute: async (params) => {
28
+ try {
29
+ const video = await getYouTubeService().uploadVideo(params);
30
+ return `Video uploaded successfully to YouTube!\n\nVideo ID: ${video.id}\nTitle: ${video.snippet?.title ?? params.title}\nUpload status: ${video.status?.uploadStatus ?? "unknown"}`;
31
+ }
32
+ catch (error) {
33
+ if (error instanceof CredentialsError)
34
+ return `Error: ${error.message}`;
35
+ return `Error uploading video: ${error instanceof Error ? error.message : "Unknown error"}`;
36
+ }
37
+ },
38
+ };
39
+ //# sourceMappingURL=upload-video.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-video.js","sourceRoot":"","sources":["../../../src/tools/youtube-tools/upload-video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAC3D,WAAW,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,iDAAiD,CAAC;IAC7D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC1D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IACjE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC3E,UAAU,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,oDAAoD,CAAC;IAChE,aAAa,EAAE,CAAC;SACd,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;SACvC,QAAQ,EAAE;SACV,OAAO,CAAC,UAAU,CAAC;SACnB,QAAQ,CAAC,mCAAmC,CAAC;CAC/C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC9B,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,4DAA4D;IACzE,UAAU,EAAE,iBAAiB;IAC7B,OAAO,EAAE,KAAK,EAAE,MAAyB,EAAE,EAAE;QAC5C,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,MAAM,iBAAiB,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC5D,OAAO,wDAAwD,KAAK,CAAC,EAAE,YAAY,KAAK,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,oBAAoB,KAAK,CAAC,MAAM,EAAE,YAAY,IAAI,SAAS,EAAE,CAAC;QACtL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,KAAK,YAAY,gBAAgB;gBAAE,OAAO,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC;YACxE,OAAO,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC;QAC7F,CAAC;IACF,CAAC;CACQ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "social-mcp",
3
- "version": "2.5.0",
3
+ "version": "2.7.0",
4
4
  "description": "MCP server for posting and interacting across social media platforms: Twitter, Instagram, Facebook, WhatsApp, Discord, Telegram, Slack, LinkedIn, Reddit, Threads, TikTok, Pinterest, Medium, and Email (SMTP/SendGrid/Mailgun/SES)",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -59,9 +59,11 @@
59
59
  "@slack/web-api": "^7.14.1",
60
60
  "dotenv": "^17.3.1",
61
61
  "fastmcp": "^3.33.0",
62
+ "https-proxy-agent": "^9.1.0",
62
63
  "nodemailer": "^8.0.6",
63
64
  "telegraf": "^4.16.3",
64
65
  "twitter-api-v2": "^1.29.0",
66
+ "undici": "^8.7.0",
65
67
  "zod": "^4.3.6"
66
68
  },
67
69
  "devDependencies": {