Skip to main content

Query

Tool Reference

55 tools, with every value their parameters accept

The tool register

All 55 tools.

think

Use this tool FIRST to plan your query strategy before calling any data tool. Reason about which tools to call, in what order, and why. Identify if tools can run in parallel (no dependencies) or must be sequential (one tool needs another's output).

requires reasoning, plan

Free-form: reasoning string, plan array

search_facilities

Search and filter compute infrastructure facilities (data centers, semiconductor fabs, packaging plants, HPC centers). Returns facility details including power capacity, GPU count, status, location, and roles[]: each organisation the record names, under the relationship its own source establishes (site owner, site operator, AI hardware owner, or another relationship such as PeeringDB listing holder or developer). Describe an organisation as a site's owner or operator ONLY where roles[] says so; withheld_roles[] lists recorded attributions the cited source does not establish. Each figure is the record's own: power_not_operating_reason is null when the power figure is operating capacity and otherwise names why not (announced, under construction, a campus build-out figure on an operating site, and so on), so never add these figures together as capacity.

facility_type hyperscale_dc · colocation · edge · logic_fab · memory_fab · packaging · hpc_center · ai_training · unknown
status announced · permitted · under_construction · operational · expanding · decommissioned
sort_by power_capacity_mw · total_gpu_count · peak_pflops_fp16 · name

Free-form: query string, country string, owner_org_ids array, owner_org_name string, min_power_mw number, max_power_mw number, min_gpu_count number, limit number

get_facility_details

Get complete details for a specific facility including roles[] (each organisation under the relationship its source establishes) and withheld_roles[], all relationships, investments, nearby facilities, supply chain connections through the recorded organisation, and compute capacity timeline. Use when you need the full picture of a single facility.

requires facility_id

Free-form: facility_id string

get_nearby_facilities

Find facilities within a radius of a geographic point. Useful for geographic clustering analysis or finding what infrastructure exists near a specific facility.

requires lat, lng

Free-form: lat number, lng number, radius_km number

search_organizations

Search public organization records by name or alias, or browse by organization type. Text search returns a bounded, ranked and deduplicated set; its total matching population is unknown even when no rows are returned. Type-only browsing counts matching public organization rows before the limit; those rows are not deduplicated organizations. Country filters apply within the selected mode. result_scope distinguishes these populations and reports actual returned rows; disclose unknown completeness, known truncation and unavailable selected records. Requires a nonempty query or org_type.

org_type chip_designer · fab_operator · equipment_maker · cloud_provider · ai_lab · colocation_provider · government · investor · epc · power_provider · other

Free-form: query string, country_hq string, limit number

get_org_profile

Get a complete organization profile: financials (revenue, capex, market cap), the facilities whose records name the organisation in any role (count of every status; operating power and operating accelerators, with figures on non-operating records listed by status and never added in; each listed facility gives only the roles its record establishes for the organisation, so a listed site is not necessarily owned or run by it), supply chain summary (top suppliers, top customers), and investment history. For deep dives on a single company.

Free-form: org_id string, org_name string

get_league_table

Get ranked list of organizations by a metric. For competitive landscape analysis and identifying the biggest players. Power and accelerator ranks use operating figures only; each row lists the figures on its non-operating records by status beside them.

requires rank_by

rank_by facility_count · operating_gpu_count · operating_power_mw
org_type chip_designer · fab_operator · equipment_maker · cloud_provider · ai_lab · colocation_provider · government · investor · epc · power_provider · other

Free-form: limit number

get_org_supply_chain

Get upstream suppliers and/or downstream customers for an organization. Returns supply chain links with value and, only where the record's own cited source states them for the pair, product/service, category, criticality score (1-10), sole-source status and alternative suppliers; attribute_withholding gives the reason for each withheld field.

direction upstream · downstream · both
category semiconductor_equipment · foundry_services · advanced_packaging · osat_services · memory · substrates · gpu_accelerator · networking · power_delivery · construction · cooling · raw_materials · software_ip

Free-form: org_id string, org_name string

get_chokepoint_analysis

Identify supply chain chokepoints: suppliers carrying a sole-source flag that the record's own cited source states, with their categories and any criticality the source states. An empty result means no cited source states a sole-source relationship, not that no chokepoint exists: stored flags that rest on market share, industry structure or no source are withheld. Use for "which categories rest on a source-stated sole supplier?".

Free-form: category string, min_criticality number

get_country_interdependence

Analyze a country's dependency on foreign suppliers in the AI compute supply chain. Returns total links, foreign dependency percentage, sole-source foreign dependencies (only flags the record's own cited source states), and critical foreign suppliers by category.

requires country

Free-form: country string

get_full_supply_chain_graph

Get the complete supply chain graph with all edges. Returns supplier/customer org details, value, and, only where the record's own cited source states them, product/service, category, criticality and sole-source status; attribute_withholding gives the reason for each withheld field. Use sparingly; it returns a large dataset.

Free-form: category string

search_investments

Search investments in AI compute infrastructure: CHIPS Act grants, sovereign AI programs, hyperscaler capex, VC/PE rounds, loans. Open records return amounts, dates and programs; licensed records return an amount band, a year and a round class instead, never the amount, date or round label. Ranked largest first by band; records from partial extracts are excluded from the ranking and the count, and counted in metadata.

investment_type chips_act_grant · eu_chips_act · sovereign_ai_program · hyperscaler_capex · vc_round · pe_investment · corporate_balance_sheet · project_finance · government_loan · tax_incentive
status announced · committed · disbursed · cancelled

Free-form: country string, org_name string, min_amount_usd number, limit number

get_investment_timeline

Get yearly investment aggregations: record counts and the type mix per announced year, and a USD total where at least 5 licensed amounts from at least 3 recipients back it (rounded to two significant figures; exact for years holding only open records; otherwise null with the reason). Records from partial extracts are excluded and counted separately.

Free-form: year number

get_sovereign_programs

Get sovereign AI investment records with program names, investment types, status, recorded USD amounts, announcement/commitment/disbursement dates and estimate flags. The response reports the number of returned investment records.

Free-form: country string

get_bis_designations

Get BIS Entity List entries and other export control designations. Returns entity names, countries, designation dates, grounds for listing, and Federal Register citations. Rows may have data_quality_flags (provenance and caveat notes, such as a country derived from the entity address rather than named in the notice, the sourcing of a removal date, or — on rows covered only by inference from BIS's 50% Affiliates Rule — that the rule is suspended and that the ownership evidence behind the inference no longer reproduces from current data) and a coverage_note stating the 50%-Affiliates-Rule suspension status. Results are ordered most-recent designation_date first and capped (default 50 rows, max 200 via limit); count reports the full matching total and metadata.note flags truncation. For recent-changes questions pass designated_after rather than reading the whole list.

Free-form: country string, search string, active_only boolean, designated_after string, designated_before string, limit number

get_bis_cross_references

Cross-reference BIS Entity List designations against organizations in the Scrutica database. Match methods (match_method field): 4-layer name matching (exact name, alias, Jaccard similarity, trigram fuzzy) plus affiliate-graph closure ("closure" — a corporate ownership/affiliate-graph walk from the designated entity; each returned row names its match_method) and a small curated override set. Returns matched organizations with facility count, supply chain connections, match_method, and match confidence score.

Free-form: country string, min_confidence number

get_entity_list_changes

What CHANGED in the BIS Entity List — the change log behind /export-controls/changes and its RSS feed. PREFER this over get_bis_designations for freshness questions ('what changed this month', 'latest additions', 'recent removals'): designation rows arrive already grouped into per-Federal-Register-notice change events — one event per printed BIS rule (pinpoint-page citations of one rule merge via the federalregister.gov document-number map), each with its canonical FR citation and link, the notice title and publication date where resolved, a derived event date labeled with its source column, entry/entity/address/removal counts (entry_count counts entries as the Register does: an entity under two destinations is two entries), per-country counts, a bounded entity-name sample, and the entities cross-referenced to compute-infrastructure organizations. Removal actions are separate date-keyed events (a screening list maintained from additions alone over-blocks forever). Also returns a last-N-ISO-week activity rollup counting BOTH additions and removals — a zero-count week means the Federal Register carried no BIS action that week, not that the week is missing from the rollup. Results are bounded summaries: at most 48 events per call (default 12, newest first) with truncation declared in metadata; cite totals from the count field and per-event entry_count, never by summing truncated lists. Every entry is filed under the Federal Register notice that added it (Tier 1): the notice the Entity List's own eCFR citations for the entry resolve to, or for a removed record the notice its own citation resolves to; the event date is derived (modal designation_date, falling back to modal effective_date) and labeled with its source.

Free-form: limit number, weeks number, company_id string

get_country_analytics

Operating MW, accelerators and peak FP16 PFLOP/s by host country across publicly visible facility records: each figure sums operational records only, and lists the figures on records under construction, announced, retired, without a status, campus build-out figures on operating sites and earlier phases of operating clusters by status beside it, never added in. facility_count and status_counts cover every status. Operating power and PFLOPS are not deduplicated by physical campus; accelerators are counted once across adjudicated shared fleets. Stored scalar sums may contain estimated inputs; this operation does not infer compute from an inventory and does not establish a national inventory. The provenance estimated_fraction counts original flagged facility records across all country facility records, including those missing a metric; it does not incorporate correction-specific estimate flags or measure the estimated share of any scalar total. result_scope reports matching country rows before the limit, returned rows and truncation. Omit limit for all matching country rows; disclose any truncation and restrict absence claims to returned rows. Country-row completeness does not establish complete facility records or metric values.

sort_by facility_count · operating_power_mw · operating_gpu_count · operating_peak_pflops

Free-form: country string, limit number

get_compute_overview

Get all-source aggregate record counts and operating facility MW, accelerators and PFLOP/s, with the figures on non-operating records listed by status beside each and status counts over every record. Includes records unavailable to the public country-analytics reader; its totals need not equal those country rows. Operating power is not deduplicated by physical campus. Failed organization/investment counts are null.

get_facility_type_breakdown

Get count and operating capacity by facility type (hyperscale DC, colocation, logic fab, memory fab, packaging, HPC, etc.); counts cover every status and each capacity figure lists the figures on non-operating records by status beside it. For understanding the composition of global compute infrastructure.

compare_entities

Side-by-side comparison of facilities, organizations, or countries. Returns a structured comparison with all relevant metrics aligned. Organization and country capacity figures are operating figures with non-operating figures listed by status; facility rows carry each record's own figures and status. For direct comparison queries.

requires entity_type, entity_names

entity_type facility · organization · country

Free-form: entity_names array

search_hardware

Search the hardware catalog for GPU, TPU, ASIC, and interconnect specifications. Returns compute performance, memory, TDP, process node, and export control status. For comparing chip specs or identifying which hardware is export-controlled. Half-precision throughput comes back as TWO distinct fields measuring different things — fp16_tflops (dense tensor-core) and fp16_vector_tflops (dense non-tensor vector), which differ by up to 58x on the same part — so name which one you are quoting and never rank across them. Results are ordered by tensor throughput first, then by vector throughput among parts with no published tensor figure.

category gpu · cpu · tpu · asic · fpga · interconnect · memory

Free-form: search string, manufacturer string, export_controlled boolean, limit number

search_deployments

Search compute deployments: GPU clusters, training runs, cloud regions. Returns hardware type, GPU count, cluster name, training FLOPS, organization, and linked facility. For understanding who is deploying what compute where.

deployment_type training_run · gpu_cluster · cloud_region · inference_fleet
status announced · active · completed · cancelled

Free-form: org_name string, hardware_type string, min_gpu_count number, limit number

get_compute_pricing

Get cloud GPU pricing data by provider, hardware type, region, and pricing model. Returns price per GPU-hour for comparison across cloud providers.

pricing_model on_demand · reserved_1yr · reserved_3yr · spot

Free-form: provider string, hardware_type string

search_trade_flows

Query recorded bilateral semiconductor trade flows (HS 8542 integrated circuits) from six sources: UN Comtrade, CEPII BACI, Taiwan Customs, China GACC, Japan e-Stat and the US Census Bureau. The sources measure the same trade (Korea -> China appears in both BACI and Comtrade), so every aggregate group is one data_source and one direction: compare groups across sources, never add them. China GACC files each partner's imports and exports as one direction "both" (two-way trade), which an export or import query does not return. result_scope distinguishes rows retrieved by the filtered paginated read from groups formed from those rows; matched_count is not a database snapshot count or a count of distinct economic flows. Output can be truncated in raw and aggregate modes. Group scope records input-row count separately. Use this for recorded trade by year, partner, HS code or direction.

direction export · import · both
aggregate_by year · partner · hs_code · direction · none

Free-form: reporter_country string, partner_country string, hs_code string, year_start number, year_end number, data_source string, limit number

search_pjm_queue

Query recorded PJM interconnection queue rows. Aggregate totals are available only when a bounded read proves it retrieved every matching row; otherwise aggregation fails and filters must be narrowed. Raw results may be partial or have unknown coverage and must not be summed as complete totals. result_scope distinguishes queue rows from groups and records the aggregate input-row count separately. Queue capacity is not delivered power or data-center capacity.

queue_status Active · In Service · Under Construction · Engineering and Procurement · Withdrawn · Suspended
aggregate_by state · queue_status · fuel_type · transmission_owner · none

Free-form: state string, is_dc_region boolean, min_capacity_mw number, limit number

get_capacity_snapshots

Get recorded capacity snapshot rows under facility, organization and date filters, ordered by snapshot date ascending. The capped result contains the earliest matching dates; selection among equal dates is unspecified. result_scope counts snapshot rows, which may repeat a facility. An unknown total or truncated result cannot establish completeness, latest capacity or a complete history. Use returned_count for returned rows and disclose matched_count and truncation when known.

Free-form: facility_id string, org_id string, year_start number, year_end number, limit number

get_threshold_compliance

Compare the curated model training-compute estimates with numerical components of regulatory instruments. Pass model_name for a model, regime_id for an instrument and models above its numerical line, or neither for cohort counts. Qualitative rules such as the CAC Interim Measures have no numerical crossing or count. Results retain sources, estimate flags, operation types and legal status; they do not establish designation, applicability or compliance.

Free-form: model_name string, regime_id string

list_threshold_capable_facilities

Rank retrieved candidate facility rows by the nameplate power recorded on operating facilities within the country filter of a regulatory regime; records not operating (announced, under construction, campus build-out figures on operating sites, earlier phases of operating clusters, retired, no status) are never ranked and are counted by status in metadata.held_above_min_power. The starting inventory combines public rows with positive raw power or GPU count and public rows whose reviewed corrections supply positive power or GPU count; numerical correction data and organization-country lookups must succeed, then row corrections apply where present. Country selection uses the HQ country of the organisation recorded in the facility owner field (the AI-hardware owner when that field is empty; a recorded organisation, not an established owner), falling back to facility country. result_scope counts this selected candidate array before the output cap, not all matching facilities or distinct sites; separate page reads are not a frozen database snapshot. This is a jurisdiction-filtered list, not a global physical-capacity ranking; use get_country_analytics and search_facilities for global capacity questions. Use this for the structural question "which facilities have the physical compute capacity to support a model that triggers regulatory obligations under regime X" — the model-level question is get_threshold_compliance. Returns facilities with status, operating_power_mw, total_gpu_count, owner country, and is_estimated flag. The LLM must reason from power capacity to FLOP plausibility itself, not assert "this facility CAN train a 10²⁵ model".

Free-form: regime_id string, min_power_mw number, limit number

get_compute_visibility_index

Get the Compute Visibility Index — a per-country capacity-weighted distribution of the ownership-transparency tiers of each facility's linked organisation (Tier 1 public-filing UBO; Tier 2 licensed-database-sourced; Tier 3 documented-but-secondary; Tier 4 linked org named, no ancestors documented; Data_Gap no linked org, not yet investigated), weighted by operating capacity with non-operating figures listed by status. Tier 4 is NOT a claim that the chain is concealed: just under half its capacity sits under an organization that declared to the global LEI registry why it reports no consolidating parent, including declarations that no parent exists. Pass country (ISO2) for one country's breakdown; omit for the global summary plus top-10 countries by capacity. The Index is the source of truth for "Compute Under Control" estimates by country. Backed by mv_compute_visibility_by_country and the visibility_index_snapshots table (snapshot citation handle: scrutica:compute-visibility-index:YYYY-MM-DD).

Free-form: country string

get_compute_visibility_breakdown

Per-facility tier breakdown for a given country — every facility with its assigned visibility tier (Tier_1 / Tier_2 / Tier_3 / Tier_4 / Data_Gap) and the tier_reason string explaining the classification. Use after get_compute_visibility_index to drill into the facilities driving a country's tier mix. Operating facilities first by operating power, then every other record by its recorded figure.

requires country

tier_filter Tier_1 · Tier_2 · Tier_3 · Tier_4 · Data_Gap

Free-form: country string, limit number

walk_ownership_chain

Walk an organization's ownership chain upward toward its documented controlling parent: the same walk its company record prints. A holding the control review finds confers no control (a nominee holding shares for other investors, a funding-round stake, any holding where a filing says no shareholder controls the company) is listed as a holding, never followed as a parent. Returns the hops in order (at most 8 above the start): each hop's name, country and link_to_previous_hop (the holder, the record's own sentence about its relation to the hop below, the source label, as_of_date, confidence HIGH/MEDIUM/LOW and authority tier). terminal says why the walk stopped: reached_ubo (no further parent is recorded), opacity (it ends at an opaque entity, named in terminal_detail), cycle_detected, depth_capped, contested (sources name different parents of the last hop at equal confidence and tier, listed in contested_claims, and the walk elects neither) or no_controlling_holder (the last hop has recorded holders and none establishes control: they are in its holdings_without_control, and terminal_statement quotes the filing that says no shareholder controls it, cited by terminal_citation, where one exists). A holding that another listed holder's figure counts is listed once, inside that holder's of_which, at the figure that holder's own filing gives it; its controlled_by cites the recorded relation that puts it there (an edge citing that filing, or one the control review confirms), and its other_reading is its own strongest record when that is a different reading. Weaker records of a holding are not returned. chain_text is the record's citable plain-text chain. Use this for "who controls X" and "who ultimately owns X" questions and for tracing PE-fund chains to their LP base. Citation: cite each hop's source individually; the chain itself is not a single source.

Free-form: org_id string, org_name string

search_procurement_records

Search the Scrutica sovereign-execution procurement records (USAspending federal contracts, simpler.grants.gov federal solicitations, EU TED tenders, Korean MSIT awards, manual curations). One row per primary record; the record_type column distinguishes solicitation / award / subaward / modification / cancellation. Returns the per-record classifier breakdown (confidence + category + ai_relevance + reasoning) plus the per-component authority tiers (announced / committed / disbursed / deployed_chip / deployed_facility / deployed_utility) so the LLM can cite the MIN-of-inputs composite tier per the classifier methodology. Each record also carries its admission under the site's rule (counted only when rated high or medium AI relevance, with confidence at or above 0.7 or a person's review, and not superseded) and any data-quality notes on its own fields; the metadata states the rule. A solicitation's amount is an advertised budget, not spending. Earlier postings of a re-posted solicitation are left out unless include_superseded is true. Use for queries like "DoD AI contracts in Q4 2025", "EU Tier-1 frontier-AI tenders", "FedRAMP awards classified as training_compute", "awards over $10M with confidence above 0.9". Each record carries created_at, the date it was added from its source; each awardee name is resolved against the organization alias table as its row is written.

data_source usaspending · simpler_grants_gov · eu_ted · msit_korea · koneps · manual_curation
record_type solicitation · award · subaward · modification · cancellation
execution_stage announced · committed · disbursed · deployed
classifier_category training_compute · inference · research_grant · datacenter_construction · general_it_services · other · unclassifiable
classifier_ai_relevance high · medium · low · none
sort_by total_value_usd · procurement_date · classifier_confidence

Free-form: country string, awardee_name string, awarding_agency string, naics_psc_cpv_code string, fiscal_year number, date_from string, date_to string, min_value_usd number, min_confidence number, min_authority_tier number, human_reviewed_only boolean, include_superseded boolean, limit number

get_executed_allocation_rollup

Per-country, per-stage rollup of sovereign procurement execution (announced → committed → disbursed → deployed). A record counts only when the classifier rated it high or medium AI relevance, with confidence at or above 0.7 or a person's review, and no later posting supersedes it. The headline totals are counted records at the committed stage or later; counted solicitations are reported apart as advertised budgets, not spending; low-rated records are disclosed as their own band and not counted; the rest are counted by reason; each source's record dates are given. Above $100M a headline is withheld (null, withheld: true) until the country's below-floor records are reviewed. Backed by a rollup table that database triggers keep in step with every write to the procurement records, with mean classifier confidence (the model's own score, not a measured accuracy) and the sovereign-wealth-fund execution_stage_note joined back from those records at read time. Returns the disclosure_state classification (with_records / amounts_unrecorded / disclosed_zero / announced_only / none_counted / withheld_for_review / structurally_undisclosed / no_ingest_yet) so the LLM can frame structural non-disclosure as a disclosure state rather than as a data gap. Composite authority tier is computed MIN-of-inputs per the classifier methodology (a tier-1 facility-evidence claim does NOT inflate a tier-3 chip-allocation press report into a tier-1 deployed assertion). Use for queries like "Saudi sovereign AI execution by stage", "compare announced vs deployed for top sovereign programs", "Korean MSIT FY2024 disbursement". For per-record drill-down use search_procurement_records.

Free-form: country string, countries array, human_reviewed_only boolean

get_regulatory_impact_prescore

Simulate the structural reach of a hypothetical BIS Entity List addition (or other designation type). Given a seed organization, computes the affiliate-graph closure (downward through SUBSIDIARY/JV/AFFILIATE edges, max 4 hops; an edge the ownership control review records as conferring no control, such as a funding-round stake, is not followed), the facilities operated/owned by entities in that closure, country distribution, sovereign-LP exposure breakdown (PIF, Mubadala, Temasek etc.; each fund commitment counted once; disclosed amounts are given in disclosed_total per LP and total_disclosed_sovereign overall, each as a sum to two significant figures where at least 5 amounts from 3 funds make it up (the overall total only where each LP total is), otherwise a size band from 3 amounts, otherwise a count only; no single amount is given), and coordination-gap classifications. Returns an ImpactReport: closure size, affected facility count, total power MW + H100-equivalent GPUs, country rollups, sovereign-LP breakdown. NOT a legal interpretation — see caveats[] in the result. NOT a prediction of BIS behavior — structural reach only. Use this for "if BIS designated X, what would be caught" pre-decision analysis.

designation_type BIS_ENTITY_LIST · SDN · EU_SANCTIONS

Free-form: org_id string, org_name string

simulate_cascade_scenario

Retrieve generic cascade assumptions and historical examples: inventory buffers, substitution definitions, and total graph counts. This handler DOES NOT execute a shock-specific propagation simulation, scale buffers, or identify affected nodes; the perturbation, organisation and duration are echoed as context only. Use get_org_supply_chain and get_chokepoint_analysis for actual supplier relationships. Parameters are estimates, not forecast effects or a disruption timeline. Historical reference rows cover the Samsung Austin power outage (April 2021 report), TSMC materials-supply assessment (April 2022 call), and CoWoS capacity expansion (October 2023 call), each with its own primary source and authorityTier. These cases have not been used to calibrate the model.

scenario_id tokyo-earthquake · iran-threat · scs-cable · taiwan-strait · abqaiq

Free-form: perturbation string, affected_org_name string, duration_days number, include_substitution_paths boolean

get_scenario_model

Return the structured scenario data for one of Scrutica's five named scenario models. (1) tokyo-earthquake — the corresponding dataset (memory and equipment locations, authored seismic and compound scenarios, supplier shares and HHI, dated factory accounts and a DDR3 2Gb Q2 2011 contract-price observation; site lists and radii are chosen inputs, with no production-geography percentages or calculated earthquake losses). (2) iran-threat — the corresponding dataset (missile/drone systems, launch sites, air-defense profiles and reported strikes, including damage to AWS facilities in the UAE and Bahrain). (3) scs-cable — the corresponding dataset (selected submarine-cable inventory, landing stations, incident-attribution status, authored rerouting scenarios and chokepoint zones; unsupported project and route records are withheld; cases specify assumed cable sets without capacity-loss, latency or cloud-region exposure estimates). (4) taiwan-strait — the corresponding dataset (TSMC fab facilities, substitution paths, Chinese chip production evidence, Japan–South Korea policy chronology and trade research). (5) abqaiq — the corresponding dataset (Saudi data centres and petroleum facilities, assigned substations and grid zones, dated incident accounts and conditional disruption scenarios; unresolved incident-to-site links are null, with no interception ratios or site-hardening classifications). Use the source URLs returned with the scenario evidence. Attribute scenario assumptions to the named scenario; never cite a source-code constant as a record.

requires scenario_id

scenario_id tokyo-earthquake · iran-threat · scs-cable · taiwan-strait · abqaiq

Free-form: section string

compute_flop_threshold_compliance

For a named facility, retrieve its correction-overlaid record and return compute evidence only when every partition of its complete, reconciled, operational inventory is present capacity with a cited dense-FP16 rate for exactly one accelerator model. Every partition is returned with its own verdict (admitted, or held with a hold code, reason and documented alternatives that are never applied), plus provenance, precision and specification sources; caller-supplied MW and estimator overrides are ignored for named records. Unknown, future, incomplete, mismatched and held-partition records are withheld with a reason code, the partition verdicts and a bounded reported-inventory projection where available. An organization name alone is also withheld because it has no complete facility-inventory aggregate. Without facility_id or org_name, a positive power_capacity_mw runs a clearly labelled generic H100-equivalent scenario; its qualification says that it does not describe a named facility or establish legal compliance. Figures named sustained_* apply the MFU and interconnect assumptions listed with them; peak_fp16_pflop_per_sec is the unadjusted peak.

regime_id eu-ai-act · us-eo-14110 · ca-sb-1047 · ny-raise-act · miri-tgt-monitored · miri-tgt-strict

Free-form: facility_id string, org_name string, power_capacity_mw number, pue_override number, gpu_fraction_override number, mfu_override number

derive_cost_index_per_provider

Return $/petaFLOP-day broken down by cloud provider, GPU type, region, and pricing model. Computes the normalization across AWS, Azure, GCP, Oracle, CoreWeave, Lambda from the corresponding dataset (the cost-index data layer). On-prem TCO 3yr/5yr surfaces alongside as the build-vs-buy boundary. Source per row: provider pricing-page snapshot date + Epoch ML hardware spec (dense BF16 TFLOP/s; no 2:4 sparsity). Filter via params; omit all to return the global rollup. Distinct from get_compute_pricing (which returns raw $/GPU-hour cells) — this returns the petaFLOP-day-normalized, throughput-aware rollup.

pricing_model on_demand · reserved_1yr · reserved_3yr · spot
sort_by cost_per_pflop_day_asc · cost_per_pflop_day_desc · provider · gpu_type

Free-form: provider string, gpu_type string, region string, limit number

get_page_methodology

Return the methodology block for a Scrutica page. Use for "how does Scrutica calculate X?" — returns the actual current methodology text rendered on the page, not a paraphrase. Cite the route + the specific methodology section when summarising.

requires route

Free-form: route string

get_methodology_section

Return one labeled methodology subsection from the /methodology page. Wraps the methodology page's structured data layer + section anchors (e.g., "validation-6", "flop-estimation-bounds", "cascade-criticality-weighting", "threshold-derivation"). Distinct from get_page_methodology (which returns a single page's full methodology); this drills into a specific named subsection within /methodology.

requires section_id

Free-form: section_id string

get_page_content

Return the rendered prose content displayed on a Scrutica page. Use for "what does the [page] currently say about [topic]?" — the model retrieves the rendered prose then summarises against the user's question. Distinct from get_page_methodology (which returns just the methodology block); this returns the displayed body content.

requires route

audience technical · policy · both

Free-form: route string

recent_editorial_corrections

Return selected public correction and withdrawal notices, optionally filtered by date or affected route. This is not a history of development fixes or routine record updates. Entries identify the affected claim and corrected interpretation.

Free-form: limit number, since string, affected_path_filter string

search_corrections_log

Search the selected public correction and withdrawal notices. Absence of a matching notice does not establish that a record has never changed. Routine record updates and private development history are outside this collection.

requires query

Free-form: query string, limit number

get_data_freshness

Return per-data-source freshness state — when each data source was last refreshed, the freshness-class TTL, and the current freshness color (fresh / aging / stale). Freshness classes, each fresh for the window shown: regulatory (7 days, e.g., BIS Federal Register feeds), market (7 days, e.g., trade flows), structural (90 days, e.g., facility ownership), narrative (180 days, e.g., historical scenarios). Use for "how fresh is the [layer] data?" or "what's overdue for refresh?".

freshness_class regulatory · market · structural · narrative

Free-form: data_source string

get_authority_tier_provenance

Return the authority-tier provenance metadata for a facility record: data_source, source_url, is_estimated, authority_tier, data_vintage, confidence_score (where applicable). The Tier 1-4 hierarchy: Tier 1 = primary measurement / regulatory filing, Tier 2 = research database, Tier 3 = press / analyst, Tier 4 = inferred / estimated. The Citations Panel UI consumes this output to render per-claim provenance badges.

requires facility_id

Free-form: facility_id string, field string

get_chokepoint_anatomy

Return the layer-by-layer anatomy of the AI compute supply-chain chokepoint structure — the "hourglass" shape (many AI labs and materials at the ends, extreme concentration in fab/packaging/equipment in the middle). Each layer has: concentration_level (moderate / high / extreme), summary_text, vintage, source. Use for "show me the supply-chain concentration map" or "where is the system most exposed?".

Free-form: layer_filter string

get_concentration_metrics

Return HHI, editorial priority and governance component evidence for recorded chokepoint assessments. Governance scores and rankings are unavailable: country-map tags, docket presence and unvalidated grades do not establish legal jurisdiction or enforcement effectiveness. Category filtering applies before the result limit; top_5 is the separate global concentration-priority cohort. Null HHI or priority is unavailable, not zero.

sort_by hhi_desc · severity_desc · governance_leverage_desc

Free-form: category string, limit number

get_country_profile_summary

Return a country profile with facility counts, reported power and GPU totals, organisations, sovereign programme funding, supply-chain relationship counts, export-control access and Entity List designations. Accepts a country name or ISO alpha-2 code.

requires country

Free-form: country string

get_emerging_chokepoints

Return Scrutica's active emerging-chokepoint feed — supply-chain constraints currently elevated to watch / elevated / high / critical severity, with deadline-bound risks (e.g., "CoWoS capacity shortfall through Q4 2026", "EU power grid pre-emption Phase 1 begins 2026-09-01"). Each entry: id, severity, category, summary, evidence, deadline (where applicable), affected_orgs, governance_leverage. Use for "what supply-chain risks are active right now?" or "what's elevated to critical?".

severity critical · high · elevated · watch

Free-form: category string, with_deadline_only boolean, limit number

search_bis_license_actions

Search BIS annual country-licensing data (Bureau of Industry & Security export-license actions by destination country and ECCN), calendar years 2015-2022. Each row is one ECCN, destination and year for one action, approved or denied: country_iso3, period_year, eccn, eccn_rank, eccn_description, action_type, action_count, pct_of_world_total, reference_url. Rows carry no friction rate, and min_friction_pct and friction_tier are not applied to them (the result says so); per-country friction summaries are on /export-controls (get_page_content). Use for "how many [ECCN] licences to [country] were approved or denied in [year]?".

friction_tier low_friction · elevated_friction · anomalous_friction · unknown

Free-form: country_iso3 string, country_iso2 string, year_start number, year_end number, eccn_prefix string, min_friction_pct number, limit number

get_hbm_market_share

Return quarterly HBM (high-bandwidth memory) merchant market share by manufacturer. Manufacturers: SK Hynix, Samsung, Micron. Product tiers: HBM2E, HBM3, HBM3E. Sources: Astute Group, TrendForce, Yole Développement, manufacturer disclosures. Per-cell is_estimated, authority_tier and vintage. Use for "what's the current HBM3E share split?" or "how have HBM shares moved since 2024?". Where a quarter-and-manufacturer cell carries more than one source the divergence is surfaced rather than averaged away, and the canonical-share function resolves the cell by preferring a measured row over an interpolated one, then the lower authority tier, then the more recent vintage.

product_tier HBM2E · HBM3 · HBM3E · all
manufacturer SK Hynix · Samsung · Micron · all

Free-form: quarter string, canonical_only boolean

get_eu_grid_status

Return EU electricity grid capacity, HVDC interconnects, and per-country grid signal — the records behind the sovereign-AI grid pre-emption analysis. Per-country: nameplate generation MW, current draw MW, headroom MW, hyperscale-DC announcement count, announced power MW vs grid headroom, pre-emption-risk flag. 16,564 records read from PyPSA-eur (TSO-disclosed network model) on 2026-05-09. Sources: ENTSO-E, PyPSA-eur, per-country TSO disclosures. Use for "where is the EU grid being pre-empted by hyperscale buildout?" or "what's [country]'s grid headroom for AI compute?".

sort_by headroom_asc · announced_dc_power_desc · preemption_risk_desc

Free-form: country_iso2 string, include_interconnectors boolean

get_recent_developments

Return the recent-developments feed — Scrutica's timeline of substantive changes across the records (tenant changes, ownership transfers, capacity milestones, regulatory actions, incidents). Each entry: id, effective_date, title, body, data_source, source_url, confidence (high/medium/low), category (tenant_change / ownership_transfer / capacity_milestone / regulatory / incident / other), affected_facility_id (where applicable). Use for "what's changed in the last 30 days?" or "show me [country]'s most recent compute developments".

category tenant_change · ownership_transfer · capacity_milestone · regulatory · incident · other
min_confidence high · medium · low

Free-form: days_back number, facility_id string, limit number

get_training_evidence

Return per-model training evidence — the multi-source per-model dataset Scrutica uses to cross-validate FLOP estimates against lab disclosures. Each model: training_claim (what the lab said), facility_power_evidence (where it ran, how much MW available), chip_availability_evidence (what hardware available + BIS export-control status), financial_evidence (capex / opex commitments), supply_chain_evidence (HBM / packaging / wafer availability), signal_status (consistent / insufficient / unknown). Use for "is [model]'s claimed FLOP budget consistent with the available facility / chip / supply-chain evidence?". Distinct from get_threshold_compliance (which returns regime-crossing verdict); this returns the underlying evidence chain.

signal_status consistent · insufficient · unknown
evidence_type facility_power · chip_availability · financial · supply_chain · all

Free-form: model_name string, limit number

Query limit

The limit is 8 data-tool calls per question, across every round. A question needing more than that comes back partial, with the shortfall named.