Skip to main content
Glama

list_projects

Retrieve a comprehensive list of all projects in OmniFocus to organize and manage tasks efficiently using MCP OmniFocus server.

Instructions

List all projects in OmniFocus.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • MCP tool handler for 'list_projects'. This decorated function serves as the entry point for the tool, delegating the actual work to omnifocus.list_projects().
    @mcp.tool def list_projects() -> list[dict[str, str]]: """List all projects in OmniFocus.""" return omnifocus.list_projects()
  • Core helper function implementing the logic to list projects by executing JavaScript in OmniFocus via evaluate_javascript, using shared common functions for status mapping.
    def list_projects() -> list[dict[str, str]]: """List all projects in OmniFocus. Returns: A list of dictionaries containing project names, ids, statuses, etc. """ script = Template( dedent(""" ${__common_functions__} (() => { return flattenedProjects.map(project => { return { id: project.id.primaryKey, name: project.name, status: projectStatusToString(project.status), flagged: project.flagged, deferDate: project.deferDate ? project.deferDate.toString() : null, dueDate: project.dueDate ? project.dueDate.toString() : null, tags: project.tags ? project.tags.map(tt => tt.name) : [], }; }); })(); """) ) return evaluate_javascript(script.substitute(__common_functions__=__common_functions__))
  • Registration of the 'list_projects' tool using @mcp.tool decorator in the FastMCP server.
    @mcp.tool def list_projects() -> list[dict[str, str]]: """List all projects in OmniFocus.""" return omnifocus.list_projects()

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/someposer/mcp-omnifocus'

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