Skip to main content
Glama

summarize_email

Extract key points from Outlook emails to quickly understand content without reading full messages. Use this tool to identify important information and action items from individual emails.

Instructions

Summarize individual email content

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
email_idYesEmail ID to summarize

Implementation Reference

  • src/index.ts:57-70 (registration)
    Registration of the 'summarize_email' MCP tool including name, description, and input schema requiring 'email_id'.
    { name: "summarize_email", description: "Summarize individual email content", inputSchema: { type: "object", properties: { email_id: { type: "string", description: "Email ID to summarize" } }, required: ["email_id"] } },
  • Handler for the 'summarize_email' tool: validates input, fetches email using OutlookManager, generates and returns a formatted text summary.
    case 'summarize_email': { const emailId = (args as any)?.email_id; if (!emailId) { throw new Error('Email ID is required'); } const email = await outlookManager.getEmailById(emailId); return { content: [ { type: 'text', text: `📧 **Email Details**\n\n**Subject:** ${email.subject}\n**From:** ${email.sender}\n**To:** ${email.recipients?.join(', ')}\n**Time:** ${email.receivedTime}\n**Read:** ${email.isRead ? 'Yes' : 'No'}\n\n**Content Summary:**\n${email.body?.substring(0, 500)}${email.body && email.body.length > 500 ? '...' : ''}`, }, ], }; }
  • Advanced email summarization helper function (not directly used in main handler) that extracts key info, detects priority/action, generates formatted summary.
    static summarizeEmail(email: EmailMessage): string { const summary = { subject: email.subject, sender: email.sender, receivedTime: email.receivedTime, isRead: email.isRead, hasAttachments: email.hasAttachments, bodyPreview: this.extractBodyPreview(email.body), keyPoints: this.extractKeyPoints(email.body), priority: this.detectPriority(email.subject, email.body), actionRequired: this.detectActionRequired(email.body) }; return this.formatSummary(summary); }
  • Alternative handler in index_new.js that uses EmailSummarizer.summarizeEmail for advanced summary.
    case 'summarize_email': { const email = await outlookManager.getEmailById(args.email_id); const summary = EmailSummarizer.summarizeEmail(email); return { content: [ { type: 'text', text: summary, }, ], };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cqyefeng119/windows-outlook-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server