@aot-tech/gmail-mcp-server
Version:
Gmail MCP Server with Bearer Token Authentication - A Model Context Protocol server for Gmail access
49 lines (48 loc) • 1.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.readEmailTool = void 0;
const email_schemas_1 = require("../validation/email-schemas");
const api_1 = require("../gmail-sdk/api");
const email_1 = require("../utils/email");
exports.readEmailTool = {
name: 'read_email',
description: 'Read the content of a specific email by message ID',
parameters: {
type: 'object',
properties: {
messageId: {
type: 'string',
description: 'Gmail message ID',
},
},
required: ['messageId'],
},
handler: async (args) => {
try {
const { messageId } = email_schemas_1.ReadEmailSchema.parse(args);
const message = await (0, api_1.getEmailMessage)(messageId);
const emailDetails = (0, email_1.extractEmailDetails)(message);
const formattedDetails = (0, email_1.formatEmailDetails)(emailDetails);
return {
content: [
{
type: 'text',
text: formattedDetails,
},
],
};
}
catch (error) {
const errorMessage = error instanceof Error ? error.message : 'Unknown error occurred';
return {
content: [
{
type: 'text',
text: `Error reading email: ${errorMessage}`,
},
],
isError: true,
};
}
},
};