Skip to main content
Glama

Flow numbers of a project - cycle time, lead time, throughput, WIP, stuck cards, bugs and releases - for a date range (Premium, spec D152)

get_project_insights
Read-onlyIdempotent

Flow numbers of a project - cycle time, lead time, throughput, WIP, stuck cards, bugs and releases - for a date range (Premium, spec D152).

MCP tool get_project_insights (read-only, Premium: Free / Pro -> 403 plan_required, details.feature insights). Flow numbers from board history, no AI. Cycle time = first move into in-progress -> done (median, p85, calendar days); only cards with a recorded first move are measured: say "measured cycle_measured of cycle_total cards", never fill the gap. Lead time = created -> done. Default range: last 30 days (omit from/to); compare adds the equal-length period before. people (per-person load, stuck cards, and the cards / points each one finished in the range — D191) and unassigned appear only when the token owner is a project or company admin: when absent say so, never guess it. Done counts go to the card's current assignee; the rows plus unassigned add up to the cards / points done in the range. to < from or over 366 days -> 400 invalid_range.

Insights (D152): summarise the numbers for the user in plain words (cycle time median / p85 in days, throughput, WIP, stuck cards, bugs) and name issue keys where the result lists them. When cycle data is partial say "measured n of m cards" (cycle_measured of cycle_total) — never extrapolate to the unmeasured cards. If people is absent the token owner is not an admin: say per-person data is not available to you and never invent it. "Who finished how many cards / points" (D191) = people[].done_cards / done_points plus unassigned (cards with no assignee); they count the card's current assignee and add up to the cards done in the range. The default range is 30 days; pass from / to (and compare) only when the user names a range. Exports (CSV) are web only.

Input Schema

NameRequiredDescriptionDefault
toNoLast day (Asia/Bangkok), inclusive. Default: today.
fromNoFirst day (Asia/Bangkok), inclusive. Default: 29 days before `to` (30 days).
compareNoInclude the previous period (`prev`, `delta_*`, `better`). Default true.
project_keyYesProject key, e.g. `KJ`. 2–10 chars, uppercase letters and digits, starts with a letter.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior5/5

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

Even though the annotations already declare read-only, idempotent and non-destructive, the description adds a lot of behavior an agent cannot get from them: the Premium gate (403 plan_required with details.feature), admin-only people/unassigned fields, the 400 invalid_range condition for reversed or >366-day ranges, and how done counts are attributed (current assignee, rows plus unassigned sum). It also discloses the measurement limitation that only cards with a recorded first move count toward cycle time.

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

Conciseness3/5

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

Purpose is front-loaded in the first sentence, but the text is long and repeats itself — the 'measured n of m cards' / cycle_measured-of-cycle_total instruction appears twice, and the current-assignee attribution summing to done cards is also stated twice. The duplication costs space that could carry new information.

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, yet the description compensates by explaining the conditional fields an agent will see (people, unassigned, cycle_measured/cycle_total, prev, delta_*, better) and how to report them. For a read-only analytics tool, nothing an agent needs in order to call it or interpret the response 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?

Schema coverage is 100%, so the schema already documents all four parameters, but the description adds real meaning: the default window is the last 30 days, compare pulls the equal-length prior period, and people/unassigned are conditionally returned based on admin status rather than being inputs. It goes beyond the schema rather than restating 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?

The description names a specific verb and resource — flow numbers of a project — and enumerates the exact metrics (cycle time, lead time, throughput, WIP, stuck cards, bugs, releases) over a date range. It is clearly distinguishable from sprint- or company-level siblings by scope, though it never names get_company_insights or get_burndown as the alternatives an agent should consider.

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 concrete usage rules: omit from/to to get the default 30-day window, pass from/to and compare only when the user names a range, and note that CSV exports are web-only. What is missing is explicit routing guidance for when an agent should prefer get_burndown or get_company_insights instead.

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