Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GTASKS_TIMEZONENoDefault IANA timezone used for task digests.UTC
GTASKS_READ_ONLYNoWhen true, hide all write tools and reject writes in the API client.false
GTASKS_TOKEN_PATHNoPath to the private stored user authorization token file. Defaults to the checkout's token.json.token.json
GTASKS_CREDENTIALS_PATHNoPath to the Desktop OAuth credentials JSON file. Defaults to the checkout's credentials.json.credentials.json

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_server_infoA

Show local configuration and stored permission status without exposing secrets or contacting Google.

list_task_listsA

List one page of task lists with exact IDs. Names need not be unique; continue using next_page_token.

get_task_listB

Read one task list by its exact Google ID.

list_tasksA

Read one page of tasks from an exact list ID, excluding completed tasks by default.

Date bounds are inclusive YYYY-MM-DD calendar dates. A filtered page can be empty and still have next_page_token. include_completed also requests hidden tasks completed in Google's own apps. Notes are omitted by default. Default listings omit tasks assigned from Docs/Chat.

get_taskA

Read one task by exact list ID and task ID, including its full notes.

search_tasksB

Search titles and notes with case-insensitive substring matching.

Omit task_list_id to scan multiple lists. Follow pages up to max_tasks and max_lists; truncated=true means results are incomplete. No fuzzy matching or ambiguous name-based mutations are performed.

get_task_digestA

Group open tasks into overdue, due today, upcoming, and undated.

Supply an IANA timezone such as America/Los_Angeles; the configured default is UTC unless GTASKS_TIMEZONE is set. Upcoming includes tomorrow through today plus days, inclusive. Return at most limit_per_group tasks per group with counts for all scanned matches. truncated=true means some results are omitted; scan_truncated tells whether scanning itself was incomplete.

create_taskA

Create a task, optionally as a subtask or after a sibling. due is a calendar date, never a time.

Requires Google write permission. Creation is not idempotent: check the list before repeating a call whose outcome is unknown.

update_taskA

Patch only supplied fields, preserving all other task data.

Omit notes to preserve them or use an empty string to clear them. Omit due to preserve it or set clear_due=true to remove it. Do not pass both. Use complete_task/reopen_task for status and move_task for hierarchy.

complete_taskA

Mark a task complete without overwriting its title, notes, or due date.

reopen_taskA

Reopen a completed task and clear its completion timestamp.

move_taskA

Move using Google's native API, optionally to another list. Never copy then delete.

Omitting parent_id moves to the top level; omitting previous_id places the task first among its siblings. Repeating tasks cannot move between lists. Use IDs returned by this call for subsequent operations.

delete_taskA

Permanently delete a task after user confirmation. Requires its exact current title and confirm=true.

Recurrence metadata is not exposed by Google. Do not promise that this deletes only one instance of a repeating task; prefer completion when appropriate.

create_task_listB

Create a task list. This is not idempotent; duplicate names are permitted by Google.

rename_task_listA

Rename a task list by exact ID, preserving its tasks.

delete_task_listA

Permanently delete a task list. Requires its exact current title and confirm=true.

Lists with tasks are refused unless allow_nonempty=true after the user approves deletion of their contents. The task check includes hidden and completed tasks.

clear_completed_tasksA

Hide completed tasks after user confirmation. This does not permanently delete them.

They remain retrievable by list_tasks with include_completed=true.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 17 tools

Disambiguation5/5

Each tool targets a distinct resource and action: task-list operations, individual task operations, search, digest, and status changes are clearly separated. Read-oriented tools like list_tasks, search_tasks, and get_task_digest overlap only at a high level and are differentiated by scope and output.

Naming Consistency5/5

All tools use a predictable snake_case verb_noun convention, including create_task_list, get_task, update_task, complete_task, move_task, and delete_task. Minor multi-word nouns like task_list and server_info remain consistent with the pattern.

Tool Count4/5

The 17-tool surface is slightly above the typical 3-15 range but remains reasonable for Google Tasks, which has both task lists and tasks plus status, hierarchy, search, and digest operations. Most tools earn their place, though the server is on the heavier side.

Completeness5/5

The tool set covers task-list creation, listing, retrieval, renaming, and deletion, plus task creation, retrieval, listing, search, update, completion, reopening, moving, deletion, and clearing completed items. No obvious lifecycle gaps remain for the stated Google Tasks domain.

Maintenance

ActivityMaintained
ResponsivenessNo issues