Skip to main content
Glama

YESbusiness

Cost centers

get_cost_centers
Read-onlyIdempotent

The company's cost centers: the two families (the company's own axes, e.g. Department and Project) and the cost centers inside each. A family with an empty title is one the company does not use. Archived cost centers are excluded — they stay on old bookings but are never offered for new work. Call this before answering anything about cost centers, departments or projects, or before naming one in a booking. An empty list means the company has not set any up; whether the feature is on at all is cost_centers_activated on the company.

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": {
      "company_id": "<company_id>"
    },
    "name": "get_cost_centers"
  }
}

Input Schema

NameRequiredDescriptionDefault
company_idYesThe company to work on — one of list_my_companies' company_id values.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

The annotations already establish this as a safe read-only, idempotent lookup. The description adds valuable behavior beyond that: archived cost centers are excluded from new work but remain on old bookings, unused families appear with empty titles, and an empty list has a specific meaning distinct from the feature activation flag.

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

Conciseness5/5

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

The description is dense but front-loaded, beginning with what the tool returns and then covering exclusions, usage timing, and empty-result semantics. Every sentence adds relevant operational context without filler.

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?

There is no output schema, so the description carries the burden of explaining return values and edge cases. It does so by describing the family/center structure, archived exclusions, empty-title semantics, and what an empty list means, while pointing to the company feature flag for activation status.

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?

The single company_id parameter is fully described in the schema, including its UUID format and reference to list_my_companies. The description adds no additional parameter syntax or meaning beyond that, so the baseline 3 is appropriate.

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?

It states a specific resource and return structure: the company's cost centers split into two families and the cost centers inside each. It also clarifies that families correspond to company axes such as Department and Project, making the tool distinguishable from generic department/project lookups.

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?

It gives an explicit usage trigger: call this before answering anything about cost centers, departments, or projects, or before naming one in a booking. It does not name a sibling alternative or a when-not-to-use condition, but no dedicated sibling is present in the supplied list.

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