Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add costory-io/costory-finops-mcp-skills --skill bigquerygit clone --depth 1 https://github.com/costory-io/costory-finops-mcp-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/costory-io/costory-finops-mcp-skills/bigquery)<a href="https://agentmods.dev/skills/costory-io/costory-finops-mcp-skills/bigquery"><img src="https://agentmods.dev/badge/skills/costory-io/costory-finops-mcp-skills/bigquery/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/costory-io/costory-finops-mcp-skills/bigquery"><img src="https://agentmods.dev/badge/skills/costory-io/costory-finops-mcp-skills/bigquery.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00115 | $0.03447 |
| Opus 5.5 | $0.00046 | $0.01379 |
| Sonnet 5.5 | $0.00023 | $0.00689 |
| Haiku 4.5 | $0.00012 | $0.00345 |
Grade A, and why
bigquery scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 18d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 189 lines — stays where its author put it; the contents beside it link to each section on GitHub.
BigQuery
Invoice SKUs first. Bytes scanned, slot-ms, and table storage are not on the bill. Teach slots vs on-demand, open [BigQuery] BigQuery Dashboard, then allocate or optimize.
Not this if: GCP spend CUD leftover → recipes → gcp-spend-cud. Generic Explorer → query. Whole-bill "what changed" → recipes → explain-period-change.
Workflow
get_context— currency; notebq_*/user_emailif already ingested- Several organizations: if
get_contextreturns "Multiple organizations" with a list of slugs, do not pick one. Ask the user which org to use (from that list orlist_organizations), then pass thatslugtoget_contextand the following tool calls. If the user already named the org (e.g. "orgacme"), use that slug directly.
- Several organizations: if
search{ type: ["dashboards"], query: "BigQuery" }— use the template [BigQuery] BigQuery Dashboard. Org copies can differ. Never hardcode an id.getthat template for the URL. Do not walk widgets.- Teach Slots vs on-demand (two sentences): On-demand = pay per TiB scanned. Slots = pay for a pool; unused slots still cost, and bytes no longer price the job. Then the SKU table, then the caveat that matches the ask.
- Read the dashboard (order below). Branch: leftover Analysis → assignment / load jobs; storage →
TABLE_STORAGE; showback → Allocate; no labels → Jobs metadata. - Costory
queryonly after the dashboard. Persist viaquery/dashboards/virtual-dimensions. Nocreate_dashboardunless they ask to clone.
Slots vs on-demand
A slot is a unit of BigQuery compute. total_slot_ms in JOBS is how hard the query worked — it is not the invoice line unless you buy slots.
| On-demand | Slots (capacity / editions) | |
|---|---|---|
| What you buy | Nothing in advance | A reservation assigned to a project, folder, or org |
| Invoice meter | Bytes scanned (total_bytes_billed) |
Slot-hours reserved or autoscaled, used or not |
| Costory SKU | cos_sku contains Analysis (not Slots) |
cos_sku contains Edition (Standard / Enterprise / Enterprise Plus); service often BigQuery Reservation API |
| Narrow scan | Cheap | You still pay the reservation |
Wide SELECT * |
Expensive (TiB) | Same reservation price; the job occupies more slots / queues |
| LOAD / COPY / EXTRACT | Free | Uses the reservation if that job type is assigned |
| Idle | $0 | Baseline / committed slots still bill |
| Who used the $ | Each job’s bytes | Shared pool. Invoice does not split Edition SKUs per query unless Costory slot reallocation is on |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 18d ago Changed · +1 lines b19d4879666f
- 1mo ago First seen · 188 lines · 115 tokens per session scan A 0fcf4690895a
bigquery is a skill published in the GitHub repository costory-io/costory-finops-mcp-skills (2 stars, last pushed 7d ago), licensed Apache-2.0. It adds 115 tokens to every session and 3,447 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-10.
Other skills, from other repositories
databricks-platform-provisioning
Provision and test Databricks workspaces. Use when the user asks to create a workspace, set up a new environment, provision infrastructure, bootstrap Databricks, test a workspace, verify a deployment, or run validation checks against a Databricks workspace. Covers Azure, AWS, and GCP.
prowler-compliance
Creates, syncs, audits and manages Prowler compliance frameworks end-to-end. Covers the two supported JSON schemas (universal multi-provider and legacy per-provider), the SDK model tree (legacy attribute classes, universal ComplianceFramework, ConfigRequirements guardrails), output formatters (legacy per-framework +…
prowler-mcp
Creates MCP tools for Prowler MCP Server. Covers BaseTool pattern, model design, and API client usage. Trigger: When working in mcpserver/ on tools (BaseTool), models (MinimalSerializerMixin/fromapiresponse), or API client patterns.
notion
Notion workspace integration for searching pages, managing databases, creating postmortems, and exporting RCA findings.
datadog
Datadog monitoring integration for querying logs, metrics, monitors, events, traces, hosts, and incidents during RCA investigations.
scaleway
Scaleway cloud integration for managing instances, Kapsule Kubernetes clusters, object storage, and managed databases via CLI and Terraform.