Skip to main content
Glama
aaronmsoto

finops-framework-mcp

by aaronmsoto

Get KPIs (full records)

get_kpis
Read-onlyIdempotent

Retrieve FinOps KPI records with formulas, data sources, related capabilities, and featured locations. Look up one by slug or filter by capability and featured status; paginate the library.

Instructions

Full KPI records: description, formula + candidate data sources (present for the 44 KPIs the site details in capability-page popups), official related capabilities, and where each is featured. Look up one KPI with slug, or filter by capability and/or featured_only — filters combine (AND), so a slug that doesn't match the capability filter returns zero records. Without filters, pages through the whole 88-entry library.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugNoExact KPI slug for a single-record lookup, e.g. 'allocation-accuracy-index-aai'
limitNo
cursorNo
capabilityNoOnly KPIs featured on or officially related to this capability
featured_onlyNoWith `capability`: only KPIs featured on that capability's own page; alone: only KPIs featured on some page

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
kpisYes
totalYes
nextCursorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, closed-world behavior, so the bar is lower. The description adds genuinely useful context beyond them: that formula and data-source fields exist only for the 44 detailed KPIs (partial data, not an error), that the library is 88 entries, and that unfiltered calls paginate through the entire set.

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?

Very tight — every clause carries information (data availability, lookup mode, filter logic, pagination scope) and the record contents are front-loaded. The heavy backtick-per-parameter style makes it slightly dense to parse, but there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need no explanation, and annotations cover the safety profile. The description covers data completeness caveats, filter combination, and pagination scope, leaving only the mechanics of `limit`/`cursor` continuation slightly implicit. Adequate for a 5-param, no-required-args read tool.

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 60% and the description fills key gaps: it defines slug as exact-match lookup, explains capability as 'featured on or officially related to', and clarifies featured_only's dual meaning with and without capability. It also explains filter interaction (AND) and the resulting empty result set. `limit` and `cursor` remain undocumented in both places, costing a point.

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?

States a specific verb (look up / filter / page through) and resource (full KPI records), and enumerates exactly what a record contains: description, formula plus candidate data sources, related capabilities, and featured locations. That level of content specification lets an agent distinguish it from sibling list/detail tools like list_capabilities and get_capability without opening the schema.

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 clearly states the two usage modes — single-record lookup via `slug` versus filtered/paged browsing — and explains the AND combination rule plus the zero-record gotcha when a slug conflicts with a capability filter. It does not, however, point to any sibling tool for adjacent needs (e.g., when to use get_capability instead), so it stops short of explicit alternatives.

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