fix(app): add missing tools
This commit is contained in:
parent
c03f07f6a9
commit
29306ed8f4
15
src/app.ts
15
src/app.ts
|
|
@ -38,16 +38,18 @@ function createMcpServer(client: Client) {
|
|||
// Zod schemas from `schemas.ts` where available.
|
||||
const toolMap: Array<{ name: string; schema?: any; handler: any }> = [
|
||||
{ name: 'discord_login', schema: schemas.DiscordLoginSchema, handler: handlers.loginHandler },
|
||||
{ name: 'discord_list_servers', schema: schemas.ListServersSchema, handler: handlers.listServersHandler },
|
||||
{ name: 'discord_send', schema: schemas.SendMessageSchema, handler: handlers.sendMessageHandler },
|
||||
{ name: 'discord_get_server_info', schema: schemas.GetServerInfoSchema, handler: handlers.getServerInfoHandler },
|
||||
{ name: 'discord_create_text_channel', schema: schemas.CreateTextChannelSchema, handler: handlers.createTextChannelHandler },
|
||||
{ name: 'discord_delete_channel', schema: schemas.DeleteChannelSchema, handler: handlers.deleteChannelHandler },
|
||||
{ name: 'discord_get_forum_channels', schema: schemas.GetForumChannelsSchema, handler: handlers.getForumChannelsHandler },
|
||||
{ name: 'discord_create_forum_post', schema: schemas.CreateForumPostSchema, handler: handlers.createForumPostHandler },
|
||||
{ name: 'discord_get_forum_post', schema: schemas.GetForumPostSchema, handler: handlers.getForumPostHandler },
|
||||
{ name: 'discord_reply_to_forum', schema: schemas.ReplyToForumSchema, handler: handlers.replyToForumHandler },
|
||||
{ name: 'discord_delete_forum_post', schema: schemas.DeleteForumPostSchema, handler: handlers.deleteForumPostHandler },
|
||||
{ name: 'discord_create_text_channel', schema: schemas.CreateTextChannelSchema, handler: handlers.createTextChannelHandler },
|
||||
{ name: 'discord_delete_channel', schema: schemas.DeleteChannelSchema, handler: handlers.deleteChannelHandler },
|
||||
{ name: 'discord_search_messages', schema: schemas.SearchMessagesSchema, handler: handlers.searchMessagesHandler },
|
||||
{ name: 'discord_read_messages', schema: schemas.ReadMessagesSchema, handler: handlers.readMessagesHandler },
|
||||
{ name: 'discord_get_server_info', schema: schemas.GetServerInfoSchema, handler: handlers.getServerInfoHandler },
|
||||
{ name: 'discord_add_reaction', schema: schemas.AddReactionSchema, handler: handlers.addReactionHandler },
|
||||
{ name: 'discord_add_multiple_reactions', schema: schemas.AddMultipleReactionsSchema, handler: handlers.addMultipleReactionsHandler },
|
||||
{ name: 'discord_remove_reaction', schema: schemas.RemoveReactionSchema, handler: handlers.removeReactionHandler },
|
||||
|
|
@ -56,7 +58,6 @@ function createMcpServer(client: Client) {
|
|||
{ name: 'discord_send_webhook_message', schema: schemas.SendWebhookMessageSchema, handler: handlers.sendWebhookMessageHandler },
|
||||
{ name: 'discord_edit_webhook', schema: schemas.EditWebhookSchema, handler: handlers.editWebhookHandler },
|
||||
{ name: 'discord_delete_webhook', schema: schemas.DeleteWebhookSchema, handler: handlers.deleteWebhookHandler },
|
||||
{ name: 'discord_list_servers', schema: schemas.ListServersSchema, handler: handlers.listServersHandler },
|
||||
{ name: 'discord_create_category', schema: schemas.CreateCategorySchema, handler: handlers.createCategoryHandler },
|
||||
{ name: 'discord_edit_category', schema: schemas.EditCategorySchema, handler: handlers.editCategoryHandler },
|
||||
{ name: 'discord_delete_category', schema: schemas.DeleteCategorySchema, handler: handlers.deleteCategoryHandler },
|
||||
|
|
@ -69,9 +70,9 @@ function createMcpServer(client: Client) {
|
|||
t.name,
|
||||
t.schema ? t.schema.description ?? '' : '',
|
||||
t.schema ? t.schema.shape ?? t.schema : undefined, async (args: any) => {
|
||||
// Handlers follow the signature: (args, context) => Promise<ToolResponse>
|
||||
return await t.handler(args, toolContext);
|
||||
});
|
||||
// Handlers follow the signature: (args, context) => Promise<ToolResponse>
|
||||
return await t.handler(args, toolContext);
|
||||
});
|
||||
} catch (err) {
|
||||
// If a particular tool registration fails, log and continue (keeps boot resilient)
|
||||
// eslint-disable-next-line no-console
|
||||
|
|
|
|||
Loading…
Reference in New Issue