Skip to main content
Glama

jules_list_tasks

View and filter Google Jules AI coding tasks by status to monitor development progress and manage workflow automation.

Instructions

List all Jules tasks with their status

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of tasks to return (default 10)
statusNoFilter tasks by status

Implementation Reference

  • The core handler function for the 'jules_list_tasks' tool. Loads tasks from local JSON persistence, filters by optional status parameter, limits results, formats a human-readable summary, and returns it as tool content.
    private async listTasks(args: any) { const { status = 'all', limit = 10 } = args; const data = await this.loadTaskData(); let filteredTasks = data.tasks; if (status !== 'all') { filteredTasks = data.tasks.filter(task => task.status === status); } const tasks = filteredTasks.slice(0, limit); const taskList = tasks.map(task => `${task.id} - ${task.title}\n` + ` Repository: ${task.repository}\n` + ` Status: ${task.status}\n` + ` Created: ${new Date(task.createdAt).toLocaleDateString()}\n` + ` URL: ${task.url}\n` ).join('\n'); return { content: [ { type: 'text', text: `Jules Tasks (${tasks.length} of ${filteredTasks.length} total):\n\n${taskList || 'No tasks found.'}` } ] }; }
  • Input schema for the jules_list_tasks tool, defining optional 'status' filter (enum) and 'limit' parameter.
    inputSchema: { type: 'object', properties: { status: { type: 'string', enum: ['all', 'active', 'pending', 'completed', 'paused'], description: 'Filter tasks by status', }, limit: { type: 'number', description: 'Maximum number of tasks to return (default 10)', }, }, },
  • src/index.ts:375-376 (registration)
    Registration of the jules_list_tasks handler in the CallToolRequestSchema switch statement.
    case 'jules_list_tasks': return await this.listTasks(args);
  • src/index.ts:159-175 (registration)
    Tool descriptor registration in the ListToolsRequestSchema response, including name, description, and schema.
    name: 'jules_list_tasks', description: 'List all Jules tasks with their status', inputSchema: { type: 'object', properties: { status: { type: 'string', enum: ['all', 'active', 'pending', 'completed', 'paused'], description: 'Filter tasks by status', }, limit: { type: 'number', description: 'Maximum number of tasks to return (default 10)', }, }, }, },
  • Helper method to load persistent task data from JSON file, used by listTasks and other task operations.
    private async loadTaskData(): Promise<{ tasks: JulesTask[] }> { try { const data = await fs.readFile(this.dataPath, 'utf-8'); return JSON.parse(data); } catch (error) { if ((error as any).code === 'ENOENT') { return { tasks: [] }; } throw error; }

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/mberjans/google-jules-mcp'

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