swit-message-create
Send messages to Swit channels with text content, attachments, and formatting options to communicate within team workspaces.
Instructions
Send message to channel
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes | ||
| content | No | ||
| body_type | No | plain | |
| assets | No | ||
| attachments | No | ||
| external_asset_type | No |
Implementation Reference
- src/handlers/core.handlers.ts:21-24 (handler)The main handler function for 'swit-message-create' tool. Validates input arguments using MessageCreateArgsSchema and delegates to SwitClient.createMessage.export const handleMessageCreate = async (switClient: SwitClient, args: any) => { const validatedArgs = MessageCreateArgsSchema.parse(args); return await switClient.createMessage(validatedArgs); };
- src/schemas.ts:67-74 (schema)Zod schema defining the input arguments for the message create tool.export const MessageCreateArgsSchema = z.object({ channel_id: z.string(), content: z.string().optional(), body_type: z.enum(['plain', 'markdown']).default('plain').optional(), assets: z.array(z.any()).optional(), attachments: z.record(z.any()).optional(), external_asset_type: z.string().optional(), });
- src/tools/core.tools.ts:22-26 (schema)MCP tool definition including name, description, and input schema derived from MessageCreateArgsSchema.{ name: 'swit-message-create', description: 'Send message to channel', inputSchema: zodToJsonSchema(MessageCreateArgsSchema), },
- src/handlers/core.handlers.ts:41-48 (registration)Factory function that registers the 'swit-message-create' handler along with other core handlers.export const coreHandlers = (switClient: SwitClient) => ({ 'swit-workspace-list': (args: any) => handleWorkspaceList(switClient, args), 'swit-channel-list': (args: any) => handleChannelList(switClient, args), 'swit-message-create': (args: any) => handleMessageCreate(switClient, args), 'swit-message-comment-create': (args: any) => handleMessageCommentCreate(switClient, args), 'swit-message-comment-list': (args: any) => handleMessageCommentList(switClient, args), 'swit-project-list': (args: any) => handleProjectList(switClient, args), });
- src/index.ts:109-109 (registration)Final registration of coreHandlers (including swit-message-create) into the MCP toolHandlers dictionary.toolHandlers = { ...oauthHandlers(oauthWebServer), ...coreHandlers(switClient) };