Skip to main content
Glama

SalesHookAI

Update time entry

updateTimeEntry
Idempotent

Corrects an existing time entry: hours, date, description, customer or project.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "timeEntryId": "<timeEntryId>"
    },
    "name": "updateTimeEntry"
  }
}

Input Schema

NameRequiredDescriptionDefault
dateNoNew date YYYY-MM-DD
hoursNoNew hours (0-24)
projectIdNoNew project ID
descriptionNoNew description
projectNameNoNew project name to resolve to project ID
timeEntryIdYesID of the time entry to update
customerNameNoNew customer name

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and idempotentHint=true, so the safety profile is covered. The description adds that only an existing entry is touched, but silent on the key behavioral question for a partial-update tool: whether omitted fields are preserved or cleared. It also does not say what happens if projectId and projectName conflict.

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?

A single economical sentence with the verb and affected resource front-loaded and no filler. It is arguably over-compressed for a seven-parameter mutation, but nothing in it 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?

With full schema coverage and useful annotations, an agent has most of what it needs to call this correctly. However, for a seven-parameter partial-update tool with no output schema, the description leaves the update semantics (merge vs replace) and the projectId/projectName resolution contract unstated.

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 100%, so every parameter including projectName's resolve-to-ID behavior is already documented, making baseline 3 appropriate. The description's field list mostly restates the schema's own names and adds no format, range, or precedence information beyond it.

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?

"Corrects an existing time entry" gives a specific verb and resource, then enumerates the mutable fields (hours, date, description, customer, project). "Existing" distinguishes it from createTimeEntry without naming it, so an agent can route correctly, though no sibling is named explicitly.

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

Usage Guidelines3/5

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

"Existing" implies this is for modifying already-recorded entries rather than logging new ones, which is enough to separate it from createTimeEntry in practice. There is no explicit when-not-to-use guidance, no prerequisite that a valid timeEntryId must first be fetched, and no mention of how to obtain that ID.

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