Skip to main content
Glama

get-someday

Retrieve tasks marked for future consideration from Things 3, with options to control detail level and quantity of results.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
detailNoResponse detail level. Defaults to compact.
limitNoMaximum number of todos to return

Implementation Reference

  • The `get-someday` tool handler, which fetches all "Someday" todos using the `getSomedayTodos` helper and formats them using `toTaskView`.
      "get-someday",
      {
        detail: z.enum(["compact", "full"]).optional().describe("Response detail level. Defaults to compact."),
        limit: z.number().int().positive().optional().describe("Maximum number of todos to return"),
      },
      async ({ detail, limit }) => {
        const requestedDetail = detail ?? "compact";
        const todos = await withDatabase((db) =>
          applyLimit(getSomedayTodos(getAllTasks(db)), limit).map((task) =>
            toTaskView(task, requestedDetail)
          )
        );
        return buildTextResponse(`Found ${todos.length} someday todos`, {
          todos,
          detail: requestedDetail,
          limit: limit ?? null,
        });
      }
    );
  • The `getSomedayTodos` helper function that processes all tasks to filter out the relevant "Someday" todos.
    function getSomedayTodos(tasks: TaskRecord[]) {
      const incomplete = filterNonTrashedIncompleteTodos(tasks);
      const { somedayProjectIds, headingToProject } = getSomedayContext(tasks);
      const byId = new Map<string, TaskRecord>();
    
      for (const task of incomplete) {
        if (task.start === "Someday" && task.startDate === null) {
          byId.set(task.id, task);
          continue;
        }
    
        if (isTaskInSomedayProject(task, somedayProjectIds, headingToProject)) {
          byId.set(task.id, task);
        }
      }
    
      return [...byId.values()];
    }

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/soycanopa/SupaThings-MCP'

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