Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TPM_CLIENT_IDNoThe client ID of your Microsoft Entra (Azure AD) app registration.
TPM_TENANT_IDNoThe tenant ID of your Microsoft Entra (Azure AD) app registration.
TPM_TOKEN_CACHENoThe path where the sign-in token is cached and refreshed silently afterwards.
TPM_REDIRECT_URINoThe Web platform redirect URI registered for the app in confidential client mode (default http://localhost:8400/callback).http://localhost:8400/callback
TPM_CLIENT_SECRETNoThe client secret of your app registration, used for confidential client mode with browser sign-in. Omit it to use the public client (device code) mode instead, which requires 'Allow public client flows: Yes' on the app registration.

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
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
whoamiA

Return the signed-in user (verifies Graph auth is working).

todo_list_listsA

List all Microsoft To Do task lists (id + displayName + wellknownListName).

todo_find_listA

Find a To Do list by (case-insensitive) display name. Returns the first match or {}.

todo_create_listC

Create a new To Do list.

todo_update_listC

Rename a To Do list.

todo_delete_listC

Delete a To Do list.

todo_list_tasksB

List tasks in a list. Optional status filter (notStarted|inProgress|completed|waitingOnOthers|deferred).

todo_get_taskC

Get a single To Do task with full detail.

todo_create_taskC

Create a To Do task. due_date/reminder_date accept 'YYYY-MM-DD' or ISO datetime. importance: low|normal|high. body is the task note text.

todo_update_taskC

Update any subset of a task's fields. status: notStarted|inProgress|completed|waitingOnOthers|deferred.

todo_complete_taskC

Mark a task completed.

todo_delete_taskC

Delete a task.

todo_list_checklist_itemsC

List checklist items (subtasks) of a task.

todo_add_checklist_itemC

Add a checklist item (subtask) to a task.

todo_check_checklist_itemC

Mark a checklist item checked/unchecked.

todo_delete_checklist_itemC

Delete a checklist item.

planner_my_tasksA

List Planner tasks assigned to me across all plans (the 'Assigned to me' view).

planner_list_plansA

List Planner plans I can see: shared with me, plus plans in my M365 groups.

planner_get_planC

Get a plan's metadata.

planner_list_bucketsB

List the buckets (columns) of a plan.

planner_create_bucketC

Create a bucket in a plan.

planner_list_tasksC

List all tasks in a plan.

planner_get_taskB

Get a Planner task plus its details (checklist, description, references).

planner_create_taskA

Create a Planner task. due_date/start_date: 'YYYY-MM-DD' or ISO datetime. assignee_ids: AAD user ids to assign. priority: 0-10 (1 urgent, 3 important, 5 medium, 9 low). Assigning people who haven't signed up needs the user's confirmation (see confirm_code).

planner_update_taskB

Update task fields (ETag handled automatically). percent_complete: 0|1-99|100. Changing a task that involves people who haven't signed up needs the user's confirmation.

planner_assign_taskB

Assign a task to one or more users (AAD user ids). Adds to existing assignees. Involving people who haven't signed up needs the user's confirmation (see confirm_code).

planner_unassign_taskA

Remove one or more users from a task's assignees. Involving people who haven't signed up needs the user's confirmation (see confirm_code).

planner_complete_taskA

Mark a Planner task complete (percentComplete=100). Involving people who haven't signed up needs the user's confirmation (see confirm_code).

planner_delete_taskC

Delete a Planner task. Involving people who haven't signed up needs the user's confirmation (see confirm_code).

planner_set_descriptionB

Set the task's description (on plannerTaskDetails). Involving people who haven't signed up needs the user's confirmation (see confirm_code).

planner_add_checklist_itemB

Add a checklist item to a Planner task (stored on task details). Involving people who haven't signed up needs the user's confirmation (see confirm_code).

planner_list_plan_membersA

List the members of a plan's owning M365 group (to get user ids for assignment).

planner_find_memberA

Find plan members by name or email substring (returns user ids for assignment).

onenote_list_notebooksA

List my OneNote notebooks (owned, shared with me, and my groups' team notebooks).

onenote_list_sectionsA

List sections, either in one notebook or across all notebooks (includes nested section groups).

onenote_list_pagesA

List pages in a section, or my most recently modified pages across all notebooks.

onenote_search_pagesA

Find pages whose TITLE contains the text (case-insensitive). Does not search page bodies.

onenote_get_pageB

Read a page: metadata plus its content as plain text (to-dos shown as [ ] / [x]).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 38 tools

Disambiguation4/5

Tools are cleanly partitioned by domain prefix (todo_, planner_, onenote_) and action, so most purposes are clearly distinct. Minor overlap exists between planner_find_member and planner_list_plan_members (both exist to obtain user ids for assignment), and todo_update_task vs todo_complete_task are close, but descriptions disambiguate.

Naming Consistency4/5

Consistent snake_case verb_noun pattern with domain prefixes throughout (todo_create_task, planner_assign_task, onenote_get_page). Deviations are minor: the awkward todo_list_lists (list_lists) and the prefix-less whoami, which breaks the otherwise uniform scheme.

Tool Count3/5

38 tools is heavy for a single server, sitting above the comfortable range. It is mitigated by spanning three distinct products (roughly 14 To Do, 17 Planner, 5 OneNote), each of which is reasonably scoped on its own, but the aggregate surface is large.

Completeness4/5

To Do has full list/task/checklist CRUD lifecycle and Planner covers task CRUD plus assignment and membership lookup. Gaps remain: Planner buckets can be created/listed but not updated/deleted, plans cannot be created/deleted, and OneNote is entirely read-only (no page creation or editing).

Maintenance

ActivityMaintained
ResponsivenessNo issues