Skip to main content
Glama

Approve a week of hours

approve_timesheet
Destructive

Approves a week of hours a person on the user's projects submitted for approval: its hours stay closed to that person (the user, as the project owner, can still change them) and the person gets a notification. A rejected week has to be submitted again first. A Pro feature. Needs confirm: true; without it the result is a preview with the week's hours by project and task.

Input Schema

NameRequiredDescriptionDefault
noteNoUp to 500 characters, sent to the person with the notification.
confirmNotrue performs the action. Without it (or with any value other than the boolean true) nothing changes and the result is a preview of the effects.
timesheetIdYesA week handed in for approval (the user's own, or one handed to the user).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only say destructiveHint=true and readOnlyHint=false; the description adds the real consequences: hours are locked for the submitter, the project owner retains edit rights, a notification is sent, and without confirm nothing changes but a preview is returned. This is exactly the behavioral context annotations cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core action and its consequences are front-loaded, and each sentence carries information. The first sentence is somewhat long and packs several facts (lock, owner override, notification), but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter mutation with no output schema, the description covers preconditions, consequences, the confirm gating rule, and the Pro-tier requirement. An agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description goes beyond it by explaining what the preview from a missing confirm contains ('the week's hours by project and task') and by tying note to the notification, adding usage meaning the schema doesn't.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Approves a week of hours') and clarifies the scope: a submission by a person on the user's projects. This clearly distinguishes it from reject_timesheet, submit_timesheet, and withdraw_timesheet in the sibling list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a concrete precondition ('A rejected week has to be submitted again first') and an operational rule for the confirm flag (preview without it). It does not explicitly name a sibling alternative such as reject_timesheet, so it falls just short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources