Skip to main content
Glama

Get Workspace Metrics

get_workspace_metrics
Read-onlyIdempotent

One cross-domain rollup of the caller's own workspace: council sessions (total, last 30 days, by status, tokens), feedback ratings, tickets (open/done), deals (count by stage, open pipeline value) and invoices (count by status, outstanding total, overdue count). Read-only, recomputed live, and scoped to the caller — it never aggregates across accounts. Amounts are labelled and grouped by recorded currency, never converted or added across currencies; unavailable currency or amount coverage is stated explicitly. Use it for a single 'how is this workspace doing' answer instead of calling the per-domain analytics tools one by one; use those (get_sales_analytics, get_ticket_projects, list_invoices) to drill into whatever this surfaces. Counts of unrecognised stages or statuses are reported under 'unknown' rather than dropped, so each breakdown sums to its own total. Note that open + done need not equal the ticket total: cancelled tickets are neither. Invoice overdue status is computed at read time by comparing due dates against now, not stored on the record, so it is current as of this call and an invoice due today does not yet count as overdue.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "text": {
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "text"
      -  ],
      -  "type": "object"
      -}New value: +null
  2. Added

TDQS

A4.6/5.0
Behavior4/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, covering the safety profile. The description adds valuable behavioral context: it's recomputed live, scoped to caller, never aggregates across accounts, and notably explains currency handling (no conversion across currencies, explicit labeling of currency coverage). It also discloses edge cases like 'unknown' stage/status handling and that ticket open+done may not equal total. This goes beyond annotations with rich, accurate behavior.

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 description is a single dense paragraph, but it is logically organized: starts with the core rollup definition, then scoping constraints, then currency handling, then usage guidance, and finally edge-case disclosures. It is front-loaded with the primary purpose. While it is long, every sentence serves a distinct purpose—covering scope, currency, usage alternates, and exceptional cases—so it earns its length. Slight deduction for density requiring careful reading.

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?

Given the tool's complexity (cross-domain with many fields), no input parameters, and no output schema, the description must carry the full burden of explaining what data comes back. It does so comprehensively: lists all domains, key fields (ticket statuses, deals by stage, invoices by status), explains currency grouping, unknown handling, and temporal semantics (invoice overdue computed at read time). An agent can predict the output structure accurately. Nothing critical is missing.

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?

The input schema has zero parameters, so the description doesn't need to elaborate on parameters. The schema coverage is 100% but there is nothing to cover. The absence of parameters means parameter semantics is not a burden; the baseline of 4 is appropriate as the description provides context on what the tool returns (the rollup contents) which is more relevant than parameter details.

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?

The description explicitly states the tool's purpose: a cross-domain rollup of the caller's workspace covering multiple specific domains (council sessions, feedback, tickets, deals, invoices). It clearly distinguishes itself from per-domain analytics tools by naming them (get_sales_analytics, get_ticket_projects, list_invoices) and specifying it's scoped to the caller, not aggregating across accounts. This is a specific verb-resource-scope trio with high clarity.

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

Usage Guidelines5/5

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

The description explicitly says when to use this tool ('Use it for a single 'how is this workspace doing' answer') and when not to use it ('instead of calling the per-domain analytics tools one by one'), and names the alternatives. It also provides a clear routing rule: use this for high-level overview, use other tools for deep dives. This is textbook usage guidance.

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