Skip to main content
Glama

get_attendee_status

Check the response status of meeting attendees in Outlook Calendar. Provide the event ID to retrieve attendee responses, ensuring effective meeting management without data leaving your local machine.

Instructions

Check the response status of meeting attendees

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
calendarNoCalendar name (optional)
eventIdYesEvent ID

Implementation Reference

  • Full definition of the 'get_attendee_status' MCP tool, including schema, description, and handler function that executes the tool logic by calling getAttendeeStatus from scriptRunner.js and formatting the MCP response.
    get_attendee_status: { name: 'get_attendee_status', description: 'Check the response status of meeting attendees', inputSchema: { type: 'object', properties: { eventId: { type: 'string', description: 'Event ID' }, calendar: { type: 'string', description: 'Calendar name (optional)' } }, required: ['eventId'] }, handler: async ({ eventId, calendar }) => { try { const attendeeStatus = await getAttendeeStatus(eventId, calendar); return { content: [ { type: 'text', text: JSON.stringify(attendeeStatus, null, 2) } ] }; } catch (error) { return { content: [ { type: 'text', text: `Error getting attendee status: ${error.message}` } ], isError: true }; } } },
  • Input schema for the get_attendee_status tool defining parameters eventId (required) and calendar (optional).
    inputSchema: { type: 'object', properties: { eventId: { type: 'string', description: 'Event ID' }, calendar: { type: 'string', description: 'Calendar name (optional)' } }, required: ['eventId'] },
  • Helper function getAttendeeStatus that executes the underlying VBScript 'getAttendeeStatus.vbs' via executeScript, invoked by the MCP tool handler.
    export async function getAttendeeStatus(eventId, calendar) { return executeScript('getAttendeeStatus', { eventId, calendar }); }
  • src/index.js:34-36 (registration)
    Registration of all Outlook tools, including get_attendee_status, by calling defineOutlookTools() and storing in this.tools for use in MCP request handlers.
    // Define the tools this.tools = defineOutlookTools();
  • Core helper function executeScript used by getAttendeeStatus to run the VBScript implementation of attendee status checking.
    export async function executeScript(scriptName, params = {}) { return new Promise((resolve, reject) => { // Build the command with UTF-8 support const scriptPath = path.join(SCRIPTS_DIR, `${scriptName}.vbs`); let command = `chcp 65001 >nul 2>&1 && cscript //NoLogo "${scriptPath}"`; // Add parameters for (const [key, value] of Object.entries(params)) { if (value !== undefined && value !== null && value !== '') { // Handle special characters in values const escapedValue = value.toString().replace(/"/g, '\\"'); command += ` /${key}:"${escapedValue}"`; } } // Execute the command with UTF-8 encoding exec(command, { encoding: 'utf8' }, (error, stdout, stderr) => { // Check for execution errors if (error && !stdout.includes(SUCCESS_PREFIX)) { return reject(new Error(`Script execution failed: ${error.message}`)); } // Check for script errors if (stdout.includes(ERROR_PREFIX)) { const errorMessage = stdout.substring(stdout.indexOf(ERROR_PREFIX) + ERROR_PREFIX.length).trim(); return reject(new Error(`Script error: ${errorMessage}`)); } // Process successful output if (stdout.includes(SUCCESS_PREFIX)) { try { const jsonStr = stdout.substring(stdout.indexOf(SUCCESS_PREFIX) + SUCCESS_PREFIX.length).trim(); const result = JSON.parse(jsonStr); return resolve(result); } catch (parseError) { return reject(new Error(`Failed to parse script output: ${parseError.message}`)); } } // If we get here, something unexpected happened reject(new Error(`Unexpected script output: ${stdout}`)); }); }); }

Other Tools

Related Tools

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/merajmehrabi/Outlook_Calendar_MCP'

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