UNPKG

teams-mcp-server

Version:

Microsoft Teams MCP server with direct messaging support

61 lines (60 loc) 2.24 kB
export function createSendMessageTool(teamsClient) { return { name: 'teams_send_message', description: 'Send a message to a Teams chat', inputSchema: { type: 'object', properties: { chatId: { type: 'string', description: 'ID of the chat to send message to' }, content: { type: 'string', description: 'Message content (text or HTML)' }, contentType: { type: 'string', enum: ['text', 'html'], description: 'Content type of the message', default: 'text' } }, required: ['chatId', 'content'] }, handler: async (args) => { try { await teamsClient.ensureAuthenticated(); const request = { chatId: args.chatId, content: args.content, contentType: args.contentType || 'text' }; const message = await teamsClient.sendMessage(request); return { content: [{ type: 'text', text: JSON.stringify({ success: true, message: { id: message.id, content: message.body.content, contentType: message.body.contentType, sent: new Date(message.createdDateTime).toLocaleString(), sender: message.from?.user?.displayName || 'You' } }, null, 2) }] }; } catch (error) { return { content: [{ type: 'text', text: `Failed to send message: ${error.message}` }] }; } } }; }