social-mcp 2.11.0 → 2.13.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.
@@ -4,6 +4,34 @@ export interface DiscordFileAttachment {
4
4
  content: string;
5
5
  contentType?: string;
6
6
  }
7
+ /** Discord's rich embed object — https://discord.com/developers/docs/resources/channel#embed-object */
8
+ export interface DiscordEmbed {
9
+ title?: string;
10
+ description?: string;
11
+ url?: string;
12
+ /** Decimal color value, e.g. 0xff5733. */
13
+ color?: number;
14
+ fields?: Array<{
15
+ name: string;
16
+ value: string;
17
+ inline?: boolean;
18
+ }>;
19
+ image?: {
20
+ url: string;
21
+ };
22
+ thumbnail?: {
23
+ url: string;
24
+ };
25
+ footer?: {
26
+ text: string;
27
+ icon_url?: string;
28
+ };
29
+ author?: {
30
+ name: string;
31
+ url?: string;
32
+ icon_url?: string;
33
+ };
34
+ }
7
35
  export interface DiscordCredentials {
8
36
  botToken: string;
9
37
  /** Routes API calls through this proxy (e.g. per-tenant IP isolation). */
@@ -14,7 +42,7 @@ export declare class DiscordService {
14
42
  private headers;
15
43
  private dispatcher?;
16
44
  constructor(credentials?: DiscordCredentials);
17
- sendMessage(channelId: string, content: string, attachments?: DiscordFileAttachment[]): Promise<{
45
+ sendMessage(channelId: string, content: string, attachments?: DiscordFileAttachment[], embeds?: DiscordEmbed[]): Promise<{
18
46
  id: string;
19
47
  channel_id: string;
20
48
  content: string;
@@ -27,6 +55,14 @@ export declare class DiscordService {
27
55
  size?: number | undefined;
28
56
  }[] | undefined;
29
57
  }>;
58
+ createForumPost(channelId: string, threadName: string, content: string, attachments?: DiscordFileAttachment[], embeds?: DiscordEmbed[]): Promise<{
59
+ id: string;
60
+ name?: string | undefined;
61
+ }>;
62
+ createThreadFromMessage(channelId: string, messageId: string, name: string): Promise<{
63
+ id: string;
64
+ name?: string | undefined;
65
+ }>;
30
66
  getMessages(channelId: string, limit?: number): Promise<{
31
67
  id: string;
32
68
  channel_id: string;
@@ -18,6 +18,10 @@ const discordMessageSchema = z.object({
18
18
  attachments: z.array(discordAttachmentSchema).optional(),
19
19
  });
20
20
  const discordMessagesSchema = z.array(discordMessageSchema);
21
+ const discordThreadSchema = z.object({
22
+ id: z.string(),
23
+ name: z.string().optional(),
24
+ });
21
25
  export class DiscordService {
22
26
  baseUrl = config.discord.baseUrl;
23
27
  headers;
@@ -33,12 +37,12 @@ export class DiscordService {
33
37
  };
34
38
  this.dispatcher = createProxyDispatcher(credentials?.proxyUrl);
35
39
  }
36
- async sendMessage(channelId, content, attachments) {
40
+ async sendMessage(channelId, content, attachments, embeds) {
37
41
  if (!attachments?.length) {
38
42
  return fetchJson(`${this.baseUrl}/channels/${channelId}/messages`, {
39
43
  method: "POST",
40
44
  headers: this.headers,
41
- body: JSON.stringify({ content }),
45
+ body: JSON.stringify({ content, ...(embeds?.length ? { embeds } : {}) }),
42
46
  dispatcher: this.dispatcher,
43
47
  }, discordMessageSchema);
44
48
  }
@@ -47,6 +51,7 @@ export class DiscordService {
47
51
  const formData = new FormData();
48
52
  formData.append("payload_json", JSON.stringify({
49
53
  content,
54
+ ...(embeds?.length ? { embeds } : {}),
50
55
  attachments: attachments.map((attachment, index) => ({
51
56
  id: index,
52
57
  filename: attachment.filename,
@@ -69,6 +74,59 @@ export class DiscordService {
69
74
  }
70
75
  return discordMessageSchema.parse(await response.json());
71
76
  }
77
+ // Forum/media channels don't take plain messages — a "post" there is a thread
78
+ // created atomically with its starter message via this dedicated endpoint.
79
+ async createForumPost(channelId, threadName, content, attachments, embeds) {
80
+ if (!attachments?.length) {
81
+ return fetchJson(`${this.baseUrl}/channels/${channelId}/threads`, {
82
+ method: "POST",
83
+ headers: this.headers,
84
+ body: JSON.stringify({
85
+ name: threadName,
86
+ message: { content, ...(embeds?.length ? { embeds } : {}) },
87
+ }),
88
+ dispatcher: this.dispatcher,
89
+ }, discordThreadSchema);
90
+ }
91
+ const formData = new FormData();
92
+ formData.append("payload_json", JSON.stringify({
93
+ name: threadName,
94
+ message: {
95
+ content,
96
+ ...(embeds?.length ? { embeds } : {}),
97
+ attachments: attachments.map((attachment, index) => ({
98
+ id: index,
99
+ filename: attachment.filename,
100
+ })),
101
+ },
102
+ }));
103
+ attachments.forEach((attachment, index) => {
104
+ const buffer = Buffer.from(attachment.content, "base64");
105
+ formData.append(`files[${index}]`, new Blob([buffer], {
106
+ type: attachment.contentType || "application/octet-stream",
107
+ }), attachment.filename);
108
+ });
109
+ const response = await fetch(`${this.baseUrl}/channels/${channelId}/threads`, {
110
+ method: "POST",
111
+ headers: { Authorization: this.headers.Authorization ?? "" },
112
+ body: formData,
113
+ dispatcher: this.dispatcher,
114
+ });
115
+ if (!response.ok) {
116
+ throw new Error(`Discord API error (${response.status}): ${await response.text()}`);
117
+ }
118
+ return discordThreadSchema.parse(await response.json());
119
+ }
120
+ // Spins up a thread rooted at an existing message in a normal text channel —
121
+ // separate from createForumPost, which creates the message and thread together.
122
+ async createThreadFromMessage(channelId, messageId, name) {
123
+ return fetchJson(`${this.baseUrl}/channels/${channelId}/messages/${messageId}/threads`, {
124
+ method: "POST",
125
+ headers: this.headers,
126
+ body: JSON.stringify({ name }),
127
+ dispatcher: this.dispatcher,
128
+ }, discordThreadSchema);
129
+ }
72
130
  async getMessages(channelId, limit = 50) {
73
131
  return fetchJson(`${this.baseUrl}/channels/${channelId}/messages?limit=${limit}`, {
74
132
  method: "GET",
@@ -1 +1 @@
1
- {"version":3,"file":"discord-service.js","sourceRoot":"","sources":["../../src/services/discord-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discord-service.js","sourceRoot":"","sources":["../../src/services/discord-service.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,16 @@ export declare class RedditService {
26
26
  private authenticate;
27
27
  private headers;
28
28
  uploadMedia(media: RedditMedia): Promise<string>;
29
- submitPost(subreddit: string, title: string, kind: "self" | "link" | "image", text?: string, url?: string, media?: RedditMedia): Promise<{
29
+ submitPost(subreddit: string, title: string, kind: "self" | "link" | "image" | "crosspost", text?: string, url?: string, media?: RedditMedia, options?: {
30
+ /** Flair template ID — takes priority over flairText if both are set. */
31
+ flairId?: string;
32
+ /** Free-text flair — only works on subreddits that allow user-supplied flair text. */
33
+ flairText?: string;
34
+ nsfw?: boolean;
35
+ spoiler?: boolean;
36
+ /** Fullname (t3_xxxxx) of the post being crossposted — required when kind is "crosspost". */
37
+ crosspostFullname?: string;
38
+ }): Promise<{
30
39
  json: {
31
40
  errors: unknown[];
32
41
  data?: {
@@ -36,6 +45,11 @@ export declare class RedditService {
36
45
  } | undefined;
37
46
  };
38
47
  }>;
48
+ getPostFlairs(subreddit: string): Promise<Array<{
49
+ id: string;
50
+ text: string;
51
+ textEditable: boolean;
52
+ }>>;
39
53
  getPosts(subreddit: string, sort?: "hot" | "new" | "top" | "rising", limit?: number): Promise<{
40
54
  data: {
41
55
  children: {
@@ -178,7 +178,7 @@ export class RedditService {
178
178
  }
179
179
  return `https://i.redd.it/${lease.asset.asset_id}`;
180
180
  }
181
- async submitPost(subreddit, title, kind, text, url, media) {
181
+ async submitPost(subreddit, title, kind, text, url, media, options) {
182
182
  const headers = await this.headers();
183
183
  const mediaUrl = kind === "image" && media ? await this.uploadMedia(media) : url;
184
184
  const body = new URLSearchParams({ sr: subreddit, title, kind });
@@ -186,6 +186,16 @@ export class RedditService {
186
186
  body.set("text", text);
187
187
  if ((kind === "link" || kind === "image") && mediaUrl)
188
188
  body.set("url", mediaUrl);
189
+ if (kind === "crosspost" && options?.crosspostFullname)
190
+ body.set("crosspost_fullname", options.crosspostFullname);
191
+ if (options?.flairId)
192
+ body.set("flair_id", options.flairId);
193
+ else if (options?.flairText)
194
+ body.set("flair_text", options.flairText);
195
+ if (options?.nsfw)
196
+ body.set("nsfw", "true");
197
+ if (options?.spoiler)
198
+ body.set("spoiler", "true");
189
199
  const response = await fetch(`${this.baseUrl}/api/submit`, {
190
200
  method: "POST",
191
201
  headers,
@@ -197,6 +207,27 @@ export class RedditService {
197
207
  }
198
208
  return redditPostSchema.parse(await response.json());
199
209
  }
210
+ // Looks up a subreddit's available post-flair templates so a caller can resolve a
211
+ // free-text flair name (e.g. from a UI dropdown) to the flair_id submitPost needs.
212
+ async getPostFlairs(subreddit) {
213
+ const headers = await this.headers();
214
+ const response = await fetch(`${this.baseUrl}/r/${subreddit}/api/link_flair_v2`, { method: "GET", headers, dispatcher: this.dispatcher });
215
+ if (!response.ok) {
216
+ throw new Error(`Reddit API error ${response.status}: ${await response.text()}`);
217
+ }
218
+ const flairs = z
219
+ .array(z.object({
220
+ id: z.string(),
221
+ text: z.string(),
222
+ text_editable: z.boolean().optional(),
223
+ }))
224
+ .parse(await response.json());
225
+ return flairs.map((f) => ({
226
+ id: f.id,
227
+ text: f.text,
228
+ textEditable: f.text_editable ?? false,
229
+ }));
230
+ }
200
231
  async getPosts(subreddit, sort = "hot", limit = 10) {
201
232
  const headers = await this.headers();
202
233
  const response = await fetch(`${this.baseUrl}/r/${subreddit}/${sort}?limit=${limit}`, { method: "GET", headers, dispatcher: this.dispatcher });
@@ -1 +1 @@
1
- {"version":3,"file":"reddit-service.js","sourceRoot":"","sources":["../../src/services/reddit-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reddit-service.js","sourceRoot":"","sources":["../../src/services/reddit-service.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,12 @@ export interface SlackCredentials {
11
11
  export declare class SlackService {
12
12
  private web;
13
13
  constructor(credentials?: SlackCredentials);
14
- sendMessage(channelId: string, text: string, attachments?: SlackFileAttachment[]): Promise<{
14
+ sendMessage(channelId: string, text: string, attachments?: SlackFileAttachment[], options?: {
15
+ /** Block Kit layout blocks — see https://api.slack.com/block-kit. `text` is still sent as the fallback/notification text. Validated server-side by Slack. */
16
+ blocks?: Record<string, unknown>[];
17
+ /** Reply in-thread under this parent message's ts, instead of posting a new top-level message. */
18
+ threadTs?: string;
19
+ }): Promise<{
15
20
  messageId: undefined;
16
21
  channelId: string;
17
22
  text: string;
@@ -12,7 +12,7 @@ export class SlackService {
12
12
  agent: createProxyAgent(credentials?.proxyUrl),
13
13
  });
14
14
  }
15
- async sendMessage(channelId, text, attachments) {
15
+ async sendMessage(channelId, text, attachments, options) {
16
16
  if (attachments && attachments.length > 0) {
17
17
  const [first, ...rest] = attachments;
18
18
  const uploaded = await this.web.filesUploadV2({
@@ -20,12 +20,14 @@ export class SlackService {
20
20
  file: Buffer.from(first.content, "base64"),
21
21
  filename: first.filename,
22
22
  initial_comment: text,
23
+ thread_ts: options?.threadTs,
23
24
  });
24
25
  for (const attachment of rest) {
25
26
  await this.web.filesUploadV2({
26
27
  channel_id: channelId,
27
28
  file: Buffer.from(attachment.content, "base64"),
28
29
  filename: attachment.filename,
30
+ thread_ts: options?.threadTs,
29
31
  });
30
32
  }
31
33
  return { messageId: undefined, channelId, text, files: uploaded.files };
@@ -33,6 +35,8 @@ export class SlackService {
33
35
  const result = await this.web.chat.postMessage({
34
36
  channel: channelId,
35
37
  text,
38
+ blocks: options?.blocks,
39
+ thread_ts: options?.threadTs,
36
40
  });
37
41
  if (!result.ok) {
38
42
  throw new Error(`Slack API error: ${result.error ?? "unknown error"}`);
@@ -1 +1 @@
1
- {"version":3,"file":"slack-service.js","sourceRoot":"","sources":["../../src/services/slack-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack-service.js","sourceRoot":"","sources":["../../src/services/slack-service.ts"],"names":[],"mappings":"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"}
@@ -17,12 +17,29 @@ export interface MessageInfo {
17
17
  text?: string;
18
18
  date: number;
19
19
  }
20
+ export interface PollInfo {
21
+ messageId: number;
22
+ chatId: number;
23
+ pollId: string;
24
+ date: number;
25
+ }
26
+ export interface SendOptions {
27
+ /** Telegram text formatting mode. Omit for plain text. */
28
+ parseMode?: "Markdown" | "MarkdownV2" | "HTML";
29
+ /** Send without a notification sound (still delivered, just silent). */
30
+ silent?: boolean;
31
+ }
20
32
  export declare class TelegramService {
21
33
  private bot;
22
34
  constructor(credentials?: TelegramCredentials);
23
- sendPhoto(chatId: string | number, photo: string, filename?: string, caption?: string): Promise<MessageInfo>;
35
+ sendPhoto(chatId: string | number, photo: string, filename?: string, caption?: string, options?: SendOptions): Promise<MessageInfo>;
24
36
  sendDocument(chatId: string | number, document: string, filename?: string, caption?: string): Promise<MessageInfo>;
25
- sendMessage(chatId: string | number, text: string): Promise<MessageInfo>;
37
+ sendMessage(chatId: string | number, text: string, options?: SendOptions): Promise<MessageInfo>;
38
+ sendPoll(chatId: string | number, question: string, options: string[], pollOptions?: {
39
+ isAnonymous?: boolean;
40
+ allowsMultipleAnswers?: boolean;
41
+ silent?: boolean;
42
+ }): Promise<PollInfo>;
26
43
  editMessage(chatId: string | number, messageId: number, text: string): Promise<MessageInfo>;
27
44
  deleteMessage(chatId: string | number, messageId: number): Promise<boolean>;
28
45
  getChannelInfo(channelId: string | number): Promise<ChannelInfo>;
@@ -20,7 +20,7 @@ export class TelegramService {
20
20
  }
21
21
  // Accepts a public URL or base64-encoded bytes. Splits into photo + follow-up
22
22
  // message when the caption is too long instead of letting the API call fail.
23
- async sendPhoto(chatId, photo, filename, caption) {
23
+ async sendPhoto(chatId, photo, filename, caption, options) {
24
24
  try {
25
25
  const source = isHttpUrl(photo)
26
26
  ? photo
@@ -28,10 +28,14 @@ export class TelegramService {
28
28
  const fitsCaption = !caption || caption.length <= MAX_CAPTION_LENGTH;
29
29
  const message = await this.bot.telegram.sendPhoto(chatId, source, {
30
30
  caption: fitsCaption ? caption : undefined,
31
+ parse_mode: options?.parseMode,
32
+ disable_notification: options?.silent,
31
33
  });
32
34
  if (caption && !fitsCaption) {
33
35
  await this.bot.telegram.sendMessage(chatId, caption, {
34
36
  reply_parameters: { message_id: message.message_id },
37
+ parse_mode: options?.parseMode,
38
+ disable_notification: options?.silent,
35
39
  });
36
40
  }
37
41
  return {
@@ -68,9 +72,12 @@ export class TelegramService {
68
72
  throw new Error(`Failed to send document: ${error instanceof Error ? error.message : "Unknown error"}`);
69
73
  }
70
74
  }
71
- async sendMessage(chatId, text) {
75
+ async sendMessage(chatId, text, options) {
72
76
  try {
73
- const message = await this.bot.telegram.sendMessage(chatId, text);
77
+ const message = await this.bot.telegram.sendMessage(chatId, text, {
78
+ parse_mode: options?.parseMode,
79
+ disable_notification: options?.silent,
80
+ });
74
81
  return {
75
82
  messageId: message.message_id,
76
83
  chatId: message.chat.id,
@@ -82,6 +89,24 @@ export class TelegramService {
82
89
  throw new Error(`Failed to send message: ${error instanceof Error ? error.message : "Unknown error"}`);
83
90
  }
84
91
  }
92
+ async sendPoll(chatId, question, options, pollOptions) {
93
+ try {
94
+ const message = await this.bot.telegram.sendPoll(chatId, question, options, {
95
+ is_anonymous: pollOptions?.isAnonymous,
96
+ allows_multiple_answers: pollOptions?.allowsMultipleAnswers,
97
+ disable_notification: pollOptions?.silent,
98
+ });
99
+ return {
100
+ messageId: message.message_id,
101
+ chatId: message.chat.id,
102
+ pollId: message.poll.id,
103
+ date: message.date,
104
+ };
105
+ }
106
+ catch (error) {
107
+ throw new Error(`Failed to send poll: ${error instanceof Error ? error.message : "Unknown error"}`);
108
+ }
109
+ }
85
110
  async editMessage(chatId, messageId, text) {
86
111
  try {
87
112
  const message = await this.bot.telegram.editMessageText(chatId, messageId, undefined, text);
@@ -1 +1 @@
1
- {"version":3,"file":"telegram-service.js","sourceRoot":"","sources":["../../src/services/telegram-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telegram-service.js","sourceRoot":"","sources":["../../src/services/telegram-service.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,32 @@ declare const sendMessageParams: z.ZodObject<{
7
7
  content: z.ZodString;
8
8
  contentType: z.ZodOptional<z.ZodString>;
9
9
  }, z.core.$strip>>>;
10
+ embeds: z.ZodOptional<z.ZodArray<z.ZodObject<{
11
+ title: z.ZodOptional<z.ZodString>;
12
+ description: z.ZodOptional<z.ZodString>;
13
+ url: z.ZodOptional<z.ZodString>;
14
+ color: z.ZodOptional<z.ZodNumber>;
15
+ fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
16
+ name: z.ZodString;
17
+ value: z.ZodString;
18
+ inline: z.ZodOptional<z.ZodBoolean>;
19
+ }, z.core.$strip>>>;
20
+ image: z.ZodOptional<z.ZodObject<{
21
+ url: z.ZodString;
22
+ }, z.core.$strip>>;
23
+ thumbnail: z.ZodOptional<z.ZodObject<{
24
+ url: z.ZodString;
25
+ }, z.core.$strip>>;
26
+ footer: z.ZodOptional<z.ZodObject<{
27
+ text: z.ZodString;
28
+ icon_url: z.ZodOptional<z.ZodString>;
29
+ }, z.core.$strip>>;
30
+ author: z.ZodOptional<z.ZodObject<{
31
+ name: z.ZodString;
32
+ url: z.ZodOptional<z.ZodString>;
33
+ icon_url: z.ZodOptional<z.ZodString>;
34
+ }, z.core.$strip>>;
35
+ }, z.core.$strip>>>;
10
36
  }, z.core.$strip>;
11
37
  type SendMessageParams = z.infer<typeof sendMessageParams>;
12
38
  export declare const sendMessageTool: {
@@ -20,6 +46,32 @@ export declare const sendMessageTool: {
20
46
  content: z.ZodString;
21
47
  contentType: z.ZodOptional<z.ZodString>;
22
48
  }, z.core.$strip>>>;
49
+ embeds: z.ZodOptional<z.ZodArray<z.ZodObject<{
50
+ title: z.ZodOptional<z.ZodString>;
51
+ description: z.ZodOptional<z.ZodString>;
52
+ url: z.ZodOptional<z.ZodString>;
53
+ color: z.ZodOptional<z.ZodNumber>;
54
+ fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
55
+ name: z.ZodString;
56
+ value: z.ZodString;
57
+ inline: z.ZodOptional<z.ZodBoolean>;
58
+ }, z.core.$strip>>>;
59
+ image: z.ZodOptional<z.ZodObject<{
60
+ url: z.ZodString;
61
+ }, z.core.$strip>>;
62
+ thumbnail: z.ZodOptional<z.ZodObject<{
63
+ url: z.ZodString;
64
+ }, z.core.$strip>>;
65
+ footer: z.ZodOptional<z.ZodObject<{
66
+ text: z.ZodString;
67
+ icon_url: z.ZodOptional<z.ZodString>;
68
+ }, z.core.$strip>>;
69
+ author: z.ZodOptional<z.ZodObject<{
70
+ name: z.ZodString;
71
+ url: z.ZodOptional<z.ZodString>;
72
+ icon_url: z.ZodOptional<z.ZodString>;
73
+ }, z.core.$strip>>;
74
+ }, z.core.$strip>>>;
23
75
  }, z.core.$strip>;
24
76
  readonly execute: (params: SendMessageParams) => Promise<string>;
25
77
  };
@@ -15,6 +15,22 @@ const sendMessageParams = z.object({
15
15
  }))
16
16
  .optional()
17
17
  .describe("File attachments to upload with the message."),
18
+ embeds: z
19
+ .array(z.object({
20
+ title: z.string().optional(),
21
+ description: z.string().optional(),
22
+ url: z.string().optional(),
23
+ color: z.number().optional().describe("Decimal color value, e.g. 16729413."),
24
+ fields: z
25
+ .array(z.object({ name: z.string(), value: z.string(), inline: z.boolean().optional() }))
26
+ .optional(),
27
+ image: z.object({ url: z.string() }).optional(),
28
+ thumbnail: z.object({ url: z.string() }).optional(),
29
+ footer: z.object({ text: z.string(), icon_url: z.string().optional() }).optional(),
30
+ author: z.object({ name: z.string(), url: z.string().optional(), icon_url: z.string().optional() }).optional(),
31
+ }))
32
+ .optional()
33
+ .describe("Rich embed cards to attach to the message."),
18
34
  });
19
35
  export const sendMessageTool = {
20
36
  name: "SEND_DISCORD_MESSAGE",
@@ -22,7 +38,7 @@ export const sendMessageTool = {
22
38
  parameters: sendMessageParams,
23
39
  execute: async (params) => {
24
40
  try {
25
- const message = await getDiscordService().sendMessage(params.channelId, params.content, params.attachments);
41
+ const message = await getDiscordService().sendMessage(params.channelId, params.content, params.attachments, params.embeds);
26
42
  const attachmentLine = message.attachments?.length
27
43
  ? `\nAttachments: ${message.attachments.map((a) => a.filename).join(", ")}`
28
44
  : "";
@@ -1 +1 @@
1
- {"version":3,"file":"send-message.js","sourceRoot":"","sources":["../../../src/tools/discord-tools/send-message.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,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAC/D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAClE,WAAW,EAAE,CAAC;SACZ,KAAK,CACL,CAAC,CAAC,MAAM,CAAC;QACR,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QACtD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QAC7D,WAAW,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,4BAA4B,CAAC;KACxC,CAAC,CACF;SACA,QAAQ,EAAE;SACV,QAAQ,CAAC,8CAA8C,CAAC;CAC1D,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC9B,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACV,uEAAuE;IACxE,UAAU,EAAE,iBAAiB;IAC7B,OAAO,EAAE,KAAK,EAAE,MAAyB,EAAE,EAAE;QAC5C,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC,WAAW,CACpD,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,WAAW,CAClB,CAAC;YACF,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,EAAE,MAAM;gBACjD,CAAC,CAAC,kBAAkB,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC3E,CAAC,CAAC,EAAE,CAAC;YACN,OAAO,gDAAgD,OAAO,CAAC,UAAU,oBAAoB,OAAO,CAAC,EAAE,cAAc,OAAO,CAAC,OAAO,gBAAgB,OAAO,CAAC,SAAS,GAAG,cAAc,EAAE,CAAC;QAC1L,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"}
1
+ {"version":3,"file":"send-message.js","sourceRoot":"","sources":["../../../src/tools/discord-tools/send-message.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "social-mcp",
3
- "version": "2.11.0",
3
+ "version": "2.13.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",