Skip to main content
Glama

Manage time entries

time_manage
Destructive

Time tracking. start (the timer, for a contact / company / deal; stops any running one), stop, log (time after the fact), update (edit an entry), delete, bill (entryIds onto a draft invoice), unbill (take one back off).

Input Schema

NameRequiredDescriptionDefault
idNoRequired for: update, delete, unbill.
rateNoUsed by: start, log, update. Hourly, decimal string.
actionYes
dealIdNoUsed by: start, log, update. Also fills in the deal's contact and company.
deleteNo
endedAtNoISO 8601.
billableNoUsed by: start, log, update. Default true.
currencyNoUsed by: start, log. Default: invoicing currency.
durationNoUsed by: log, update, delete.
entryIdsNobill: from time_list (status unbilled).
companyIdNoUsed by: start, log, update.
contactIdNoUsed by: start, log, update.
invoiceIdNobill: a draft invoice.
startedAtNoUsed by: log, update. ISO 8601.
descriptionNoUsed by: start, log, update.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • changedInput schema / properties / billable / description
      Previous value: -"Default true."New value: +"Used by: start, log, update. Default true."
    • addedInput schema / properties / companyId / description
      Added value: +"Used by: start, log, update."
    • addedInput schema / properties / contactId / description
      Added value: +"Used by: start, log, update."
    • changedInput schema / properties / currency / description
      Previous value: -"Default: invoicing currency."New value: +"Used by: start, log. Default: invoicing currency."
    • changedInput schema / properties / dealId / description
      Previous value: -"Also fills in the deal's contact and company."New value: +"Used by: start, log, update. Also fills in the deal's contact and company."
    • addedInput schema / properties / description / description
      Added value: +"Used by: start, log, update."
    • addedInput schema / properties / duration / description
      Added value: +"Used by: log, update, delete."
    • addedInput schema / properties / id / description
      Added value: +"Required for: update, delete, unbill."
    • changedInput schema / properties / rate / description
      Previous value: -"Hourly, decimal string."New value: +"Used by: start, log, update. Hourly, decimal string."
    • changedInput schema / properties / startedAt / description
      Previous value: -"ISO 8601."New value: +"Used by: log, update. ISO 8601."
  2. Added

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, readOnlyHint=false, so the risk profile is covered. The description still earns credit for disclosing a side effect annotations cannot express: start 'stops any running one', a non-obvious implicit mutation. It does not state what delete destroys or whether deletions are recoverable.

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?

One front-loaded sentence of telegraphic action glosses with no filler; every clause maps to a distinct action. It is dense to the point of terseness ('bill (entryIds onto a draft invoice)'), leaning on the schema to decode, but nothing is wasted.

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

Completeness3/5

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

For a 15-parameter, 7-action destructive multiplexer this covers action semantics well, and no output schema exists so return values needn't be described. However, it says nothing about permissions/auth, failure behavior, or the read-side sibling time_list, leaving real gaps for a tool with destructiveHint=true.

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

Parameters3/5

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

Schema coverage is 87%, so per-parameter usage ('Used by: start, log, update') is already documented. The description only adds light semantic hints such as 'for a contact / company / deal' for start; it does not explain formats, defaults, or interdependencies beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

Opens with the resource ('Time tracking') and then enumerates all seven actions with a short gloss each, so an agent can tell exactly what the tool does. It never names the sibling time_list, which is the main read-side alternative, so sibling differentiation is left implicit.

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?

Each action carries the disambiguating context an agent needs to pick it: start is 'the timer... stops any running one', log is 'time after the fact', update 'edit an entry', bill pushes entryIds 'onto a draft invoice', unbill takes one 'back off'. What's missing is explicit routing to time_list for reading entries and any statement of when not to use a given action.

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