Skip to main content
Glama

get_recent_media

Retrieve Todoist tasks with media content created within the last 30 days, providing structured task details for tracking and management.

Instructions

Get all media tasks created in the last 30 days from Todoist, excluding subtasks and watched items. Returns structured JSON data with task details including id, content, description, completion status, labels, priority, due date, and comment count.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The handler function for the 'get_recent_media' tool. It calls the getRecentMedia helper, formats the result as JSON text content, and returns it.
    handler: async () => { console.error('Executing get_recent_media...'); const result = await getRecentMedia(); console.error('get_recent_media completed successfully'); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], }; },
  • The schema definition for the 'get_recent_media' tool, specifying name, description, and empty input schema.
    schema: { name: 'get_recent_media', description: 'Get all media tasks created in the last 30 days from Todoist, excluding subtasks and watched items. Returns structured JSON data with task details including id, content, description, completion status, labels, priority, due date, and comment count.', inputSchema: { type: 'object', properties: {}, required: [], }, },
  • The core helper function that fetches recent media tasks from Todoist using a predefined filter (RECENT_MEDIA_FILTER).
    export async function getRecentMedia(): Promise<TodoistTask[]> { return await fetchRawTasksByFilter(RECENT_MEDIA_FILTER, 'get recent media'); }
  • Registration of the 'get_recent_media' handler in the toolsWithoutArgs registry used by the tool request handler.
    const toolsWithoutArgs: Record<string, () => Promise<ToolResponse>> = { list_personal_inbox_tasks: listPersonalInboxTasksTool.handler, list_brian_inbox_per_becky_tasks: listBrianInboxPerBeckyTasksTool.handler, list_becky_inbox_per_brian_tasks: listBeckyInboxPerBrianTasksTool.handler, list_next_actions: listNextActionsTool.handler, get_brian_only_projects: getBrianOnlyProjectsTool.handler, get_brian_shared_projects: getBrianSharedProjectsTool.handler, get_becky_shared_projects: getBeckySharedProjectsTool.handler, get_inbox_projects: getInboxProjectsTool.handler, get_context_labels: getContextLabelsTool.handler, get_chores_due_today: getChoresDueTodayTool.handler, get_tasks_due_tomorrow: getTasksDueTomorrowTool.handler, get_tasks_due_this_week: getTasksDueThisWeekTool.handler, get_tickler_tasks: getTicklerTasksTool.handler, list_gtd_projects: listGtdProjectsTool.handler, get_waiting_tasks: getWaitingTasksTool.handler, get_recent_media: getRecentMediaTool.handler, get_areas_of_focus: getAreasOfFocusTool.handler, get_shopping_list: getShoppingListTool.handler, list_brian_time_sensitive_tasks: listBrianTimeSensitiveTasksTool.handler, list_becky_time_sensitive_tasks: listBeckyTimeSensitiveTasksTool.handler, };
  • src/index.ts:109-109 (registration)
    Registration of the tool schema in the MCP ListTools response.
    getRecentMediaTool.schema,

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/bkotos/todoist-mcp'

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