You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
token: z.string({description: "The bot token to use for login."}).optional()
5
+
},{
6
+
description: "Login to Discord using a bot token. If no token is provided, the bot will attempt to use the token from the environment variable DISCORD_TOKEN."
5
7
});
6
8
7
9
exportconstSendMessageSchema=z.object({
8
-
channelId: z.string(),
9
-
message: z.string(),
10
-
replyToMessageId: z.string().optional()
10
+
channelId: z.string({description: "The ID of the channel to send the message to."}),
11
+
message: z.string({description: "The content of the message to send."}),
12
+
replyToMessageId: z.string({description: "The ID of the message to reply to, if any."}).optional()
13
+
},{
14
+
description: "Send a message to a specified channel, optionally as a reply to another message."
11
15
});
12
16
13
17
exportconstGetForumChannelsSchema=z.object({
14
-
guildId: z.string()
18
+
guildId: z.string({description: "The ID of the server (guild) to get forum channels from."})
19
+
},{
20
+
description: "Get all forum channels in a specified server (guild)."
15
21
});
16
22
17
23
exportconstCreateForumPostSchema=z.object({
18
-
forumChannelId: z.string(),
19
-
title: z.string(),
20
-
content: z.string(),
21
-
tags: z.array(z.string()).optional()
24
+
forumChannelId: z.string({description: "The ID of the forum channel where the thread will be created."}),
25
+
title: z.string({description: "The title of the forum post (thread)."}),
26
+
content: z.string({description: "The body content of the forum post."}),
27
+
tags: z.array(z.string({description: "A tag to attach to the forum post."})).optional()
28
+
},{
29
+
description: "Create a new forum post (thread) in a specified forum channel."
22
30
});
23
31
24
32
exportconstGetForumPostSchema=z.object({
25
-
threadId: z.string()
33
+
threadId: z.string({description: "The ID of the forum thread to retrieve."})
34
+
},{
35
+
description: "Get details of a specific forum post (thread) by its ID."
channelId: z.string({description: "The ID of the channel to read messages from."}),
94
+
limit: z.number({description: "How many recent messages to fetch (1-100)."}).min(1).max(100).optional().default(50)
95
+
},{
96
+
description: "Read recent messages from a specified channel."
75
97
});
76
98
77
99
exportconstGetServerInfoSchema=z.object({
78
-
guildId: z.string()
100
+
guildId: z.string({description: "The ID of the server (guild) to get information for."})
101
+
},{
102
+
description: "Get information about a specific server (guild) by its ID."
79
103
});
80
104
81
105
exportconstAddReactionSchema=z.object({
82
-
channelId: z.string(),
83
-
messageId: z.string(),
84
-
emoji: z.string()
106
+
channelId: z.string({description: "The ID of the channel containing the message to react to."}),
107
+
messageId: z.string({description: "The ID of the message to add a reaction to."}),
108
+
emoji: z.string({description: "The emoji to use for the reaction (unicode or custom)."})
109
+
},{
110
+
description: "Add a reaction to a specific message in a channel."
85
111
});
86
112
87
113
exportconstAddMultipleReactionsSchema=z.object({
88
-
channelId: z.string(),
89
-
messageId: z.string(),
90
-
emojis: z.array(z.string())
114
+
channelId: z.string({description: "The ID of the channel containing the message to react to."}),
115
+
messageId: z.string({description: "The ID of the message to add reactions to."}),
116
+
emojis: z.array(z.string({description: "An emoji to add (unicode or custom)."}))
117
+
},{
118
+
description: "Add multiple reactions to a specific message in a channel."
91
119
});
92
120
93
121
exportconstRemoveReactionSchema=z.object({
94
-
channelId: z.string(),
95
-
messageId: z.string(),
96
-
emoji: z.string(),
97
-
userId: z.string().optional()
122
+
channelId: z.string({description: "The ID of the channel containing the message to modify reactions on."}),
123
+
messageId: z.string({description: "The ID of the message to remove the reaction from."}),
124
+
emoji: z.string({description: "The emoji reaction to remove."}),
125
+
userId: z.string({description: "Optional ID of the user whose reaction should be removed; if omitted, removes the current bot's reaction."}).optional()
126
+
},{
127
+
description: "Remove a reaction from a specific message in a channel."
98
128
});
99
129
100
130
exportconstDeleteForumPostSchema=z.object({
131
+
threadId: z.string({description: "The ID of the forum thread to delete."}),
132
+
reason: z.string({description: "Optional reason for audit logs when deleting the forum post."}).optional()
133
+
},{
134
+
description: "Delete a forum post (thread) by its ID."
135
+
});
136
+
137
+
exportconstGetForumTagsSchema=z.object({
138
+
forumChannelId: z.string()
139
+
});
140
+
141
+
exportconstUpdateForumPostSchema=z.object({
101
142
threadId: z.string(),
102
-
reason: z.string().optional()
143
+
name: z.string().optional(),
144
+
tags: z.array(z.string()).optional(),
145
+
archived: z.boolean().optional(),
146
+
locked: z.boolean().optional()
103
147
});
104
148
105
-
exportconstDeleteMessageSchema=z.object({
149
+
exportconstEditMessageSchema=z.object({
106
150
channelId: z.string(),
107
151
messageId: z.string(),
108
-
reason: z.string().optional()
152
+
content: z.string()
153
+
});
154
+
155
+
exportconstDeleteMessageSchema=z.object({
156
+
channelId: z.string({description: "The ID of the channel containing the message to delete."}),
157
+
messageId: z.string({description: "The ID of the message to delete."}),
158
+
reason: z.string({description: "Optional reason for audit logs when deleting the message."}).optional()
159
+
},{
160
+
description: "Delete a message by its ID in a specified channel."
109
161
});
110
162
111
163
exportconstCreateWebhookSchema=z.object({
112
-
channelId: z.string(),
113
-
name: z.string(),
114
-
avatar: z.string().optional(),
115
-
reason: z.string().optional()
164
+
channelId: z.string({description: "The ID of the channel to create the webhook in."}),
165
+
name: z.string({description: "The name to assign to the webhook."}),
166
+
avatar: z.string({description: "Optional avatar URL or data for the webhook."}).optional(),
167
+
reason: z.string({description: "Optional reason for audit logs when creating the webhook."}).optional()
168
+
},{
169
+
description: "Create a webhook in a specified channel."
116
170
});
117
171
118
172
exportconstSendWebhookMessageSchema=z.object({
119
-
webhookId: z.string(),
120
-
webhookToken: z.string(),
121
-
content: z.string(),
122
-
username: z.string().optional(),
123
-
avatarURL: z.string().optional(),
124
-
threadId: z.string().optional()
173
+
webhookId: z.string({description: "The ID of the webhook to send the message with."}),
174
+
webhookToken: z.string({description: "The token for the webhook (used for authentication)."}),
175
+
content: z.string({description: "The message content to send via the webhook."}),
176
+
username: z.string({description: "Optional username to display for the webhook message."}).optional(),
177
+
avatarURL: z.string({description: "Optional avatar URL to display for the webhook message."}).optional(),
178
+
threadId: z.string({description: "Optional ID of the thread to post the webhook message into."}).optional()
179
+
},{
180
+
description: "Send a message using a webhook."
125
181
});
126
182
127
183
exportconstEditWebhookSchema=z.object({
128
-
webhookId: z.string(),
129
-
webhookToken: z.string().optional(),
130
-
name: z.string().optional(),
131
-
avatar: z.string().optional(),
132
-
channelId: z.string().optional(),
133
-
reason: z.string().optional()
184
+
webhookId: z.string({description: "The ID of the webhook to edit."}),
185
+
webhookToken: z.string({description: "Optional token for the webhook if required to authorize edits."}).optional(),
186
+
name: z.string({description: "Optional new name for the webhook."}).optional(),
187
+
avatar: z.string({description: "Optional new avatar URL or data for the webhook."}).optional(),
188
+
channelId: z.string({description: "Optional channel ID to move the webhook to."}).optional(),
189
+
reason: z.string({description: "Optional reason for audit logs when editing the webhook."}).optional()
190
+
},{
191
+
description: "Edit a webhook's properties."
134
192
});
135
193
136
194
exportconstDeleteWebhookSchema=z.object({
137
-
webhookId: z.string(),
138
-
webhookToken: z.string().optional(),
139
-
reason: z.string().optional()
195
+
webhookId: z.string({description: "The ID of the webhook to delete."}),
196
+
webhookToken: z.string({description: "Optional token for the webhook if required for deletion."}).optional(),
197
+
reason: z.string({description: "Optional reason for audit logs when deleting the webhook."}).optional()
198
+
},{
199
+
description: "Delete a webhook by its ID and token."
140
200
});
141
201
142
-
exportconstListServersSchema=z.object({});
202
+
exportconstListServersSchema=z.object({},{
203
+
description: "List all servers (guilds) the bot is a member of."
guildId: z.string({description: "The ID of the server (guild) to search in."}).min(1,"guildId is required"),
290
+
// Optional filters
291
+
content: z.string({description: "Search for messages that contain this text."}).optional(),
292
+
authorId: z.string({description: "Filter messages to those authored by this user ID."}).optional(),
293
+
mentions: z.string({description: "Filter messages that mention a specific user or role ID."}).optional(),
294
+
has: z.enum(['link','embed','file','poll','image','video','sound','sticker','snapshot'],{description: "Filter messages that contain a specific type of content."}).optional(),
295
+
maxId: z.string({description: "Only include messages with IDs less than or equal to this (pagination)."}).optional(),
296
+
minId: z.string({description: "Only include messages with IDs greater than or equal to this (pagination)."}).optional(),
297
+
channelId: z.string({description: "If provided, restrict search to a specific channel ID."}).optional(),
298
+
pinned: z.boolean({description: "If true, only include pinned messages; if false, only include unpinned; if omitted, include both."}).optional(),
299
+
authorType: z.enum(['user','bot','webhook'],{description: "Filter by the type of author (user, bot, or webhook)."}).optional(),
300
+
sortBy: z.enum(['timestamp','relevance'],{description: "Field to sort search results by."}).optional(),
301
+
sortOrder: z.enum(['desc','asc'],{description: "Sort direction for results."}).optional(),
302
+
limit: z.number({description: "Number of results to return (1-100)."}).min(1).max(100).default(25).optional(),
303
+
offset: z.number({description: "Number of results to skip (for pagination)."}).min(0).default(0).optional()
304
+
},{
305
+
description: "Search messages in a server with various filters."
0 commit comments