Skip to main content
Glama

solidtime_project_update

Idempotent

Update a project's details and billing settings; omit confirm for a dry-run preview, because billable rate changes can reprice past time entries.

Instructions

Update a project. PUT .../projects/{project}. Billable rate changes can reprice past entries. Omit confirm for a dry-run.

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": {
      "project_id": "<project_id>",
      "name": "<name>",
      "color": "<color>",
      "is_billable": "<is_billable>",
      "client_id": "<client_id>"
    },
    "name": "solidtime_project_update"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYes
colorYes
confirmNoSet to the boolean true to execute the write. Omit this field for a dry-run preview. false and the string true are rejected.
client_idYes
is_publicNo
project_idYes
is_archivedNo
is_billableYes
billable_rateNo
estimated_timeNo
organization_idNoOrganization UUID. Falls back to SOLIDTIME_ORGANIZATION_ID, then a single membership from GET /v1/users/me/memberships.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already cover safety (readOnlyHint=false, idempotentHint=true, destructiveHint=false), and the description adds real value beyond them: the billable-rate change can retroactively reprice past entries, and the confirm/dry-run protocol. The repricing side effect is a meaningful warning that the annotations do not express. It still omits permission requirements and whether unspecified fields are cleared.

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?

Three short fragments, front-loaded with the action, with no filler. The endpoint fragment is slightly technical but cheap and informative. It is arguably too terse rather than too verbose.

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 an 11-parameter mutation with no output schema and low schema description coverage, the description covers the highest-risk aspect (repricing) and the confirmation protocol but leaves the bulk of parameters and the full-replacement behavior implicit. Adequate to call safely, not adequate to call confidently.

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 only 18% across 11 parameters, so the description needs to compensate. It adds useful meaning for billable_rate (retroactive repricing) and confirm (dry-run), and 'PUT' hints at full-replacement semantics. But name, color, client_id, is_public, is_archived, and is_billable receive no explanation in either the schema or the description.

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?

States a specific verb and resource ('Update a project') plus the endpoint, so it is clearly distinguishable from solidtime_project_create and solidtime_project_delete. It does not explicitly contrast itself with the other project siblings such as solidtime_project_get, but the verb makes the intent unambiguous.

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?

The 'Omit confirm for a dry-run' line gives concrete invocation guidance, which is genuinely useful for a write tool. However, there is no statement of when to prefer this over other project tools, no prerequisite/permission context, and no note that all five required fields must be resupplied.

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