menjometre
Menjometre is an independent observatory of Catalan public spending. This MCP server gives any LLM client read-only access to the full dataset and the statistical scoring layer built on top of it. ## Coverage - **\~19.5 M** grant records from the Registre d'Ajuts i Subvencions de Catalunya\ (RAISC), 2016–present - **\~1.7 M** public procurement contracts from Dades Obertes de Catalunya - **\~496 K** beneficiary entities with normalised identities - A **public-figure graph** linking Parlament deputies, Generalitat officials, and the boards of publicly-funded entities - The **Menjometre score** — a statistical indicator flagging concentration and\ recurrence patterns in public spending ## What the 48 tools cover | Domain | What you can ask | | -------------- | -------------------------------------------------------------------- | | `entities` | Search, profile, network, activity timeline for any funded | | organisation | | | `grants` | RAISC lookups, concentration analysis, purpose trees, year-over-year | | trends | | | `contractes` | Procurement lookups, sole-source detection, fragmentation patterns | | `organs` | Granting-body rankings and profiles | | `xarxa` | Public-figure graph, shortest path between two people, cluster | | investigation | | | `pressupostos` | Generalitat budget surface | | `meta` | Methodology, scoring explanation, upstream attribution manifest | ## Example prompts - *"Which ten Catalan entities received the most RAISC funds in 2024?"* - *"Show me the concentration profile of the entity with CIF A08000143."* - *"Which grant-giving bodies award the largest share of their budget to a single\ beneficiary?"* - *"What percentage of Ajuntament de Girona's contracts are sole-source?"* - *"Explain how the Menjometre score is computed."* ## Response envelope Every tool response ships with four things: 1. **Attribution** — a `sources` array citing the upstream dataset, licence\ (CC-BY-4.0 / Llei 37/2007), and publisher 2. **Scope predicate** — personal-data filters enforced at the database query, not\ client-side 3. **Framing** — scored responses embed a `score_meta` block with a
- Version:
- hosted
- Publisher:
- segellfosc-dev-ayfx
Install
Generated from the server’s transport data — never hand-written. Placeholders in angle brackets are yours to fill.
Run it with its own identity, a budget you set, and every call audited — no local config to keep in sync.
Add to a connect0 projectYou will sign in first, then land back on this page.
What it can do
As declared by the publisher
Tools · 48
analyze_conflict_of_interestGiven a person name and an entity identifier, return every known link (BORME role, political position, declarations, grants received while in office, contracts, lobby meetings).
analyze_contract_networkContract graph for an organ or entity: sole-source patterns, repeat suppliers, fragmentation signals.
compare_entitiesSide-by-side comparison of 2–5 entities (slug or CIF).
detect_clustersLouvain communities computed nightly. Returns the top clusters by size.
detect_undisclosed_conflictsProactive scan: politicians with BORME roles in entities receiving grants/contracts during their term but with no matching declaration.
export_dataBulk JSON export of grants/contracts/entities with filters. CSV is emitted as plain text for LLM consumption.
fetch_source_documentServer-side retrieval of an allowlisted source URL. Extracts plain text (first 64 kB) via pdf-parse/readability. SSRF-hardened. 24h cached. URL MUST exist in the DB allowlist.
find_shortest_pathBounded BFS shortest path between two graph nodes. Max depth hard-capped at 5 in the RPC.
get_budget_by_departmentBudget series by department with nominal or CPI-deflated (real) values.
get_budget_partidesLine items within a department + year.
get_budget_transfersAdmin → entity transfer flows with filters.
get_dataset_statsGlobal counts, EUR totals, and last-sync metadata across grants, contracts, entities, and persons.
get_efficiency_analysisCost-per-outcome analysis for selected programmes (EUR spent ÷ outputs where available).
get_ens_publicInstrumental/public body profile including type (consorci, empresa pública, fundació) and parent administration.
get_entityFull entity profile plus Menjometre scores with natural-language explanations. Accepts slug or CIF. Returns null if entity is anonymised or missing.
get_entity_conflictsEntity-side mirror of conflict detection — politicians linked to the entity.
get_entity_contractsContracts awarded to the entity with filters (year, min amount, organ, sole-source flag).
get_entity_financialsYearly financial timeline filed with the Generalitat registry of entities.
get_entity_grantsGrants awarded to the entity with filters (year range, min amount, department) and cursor pagination.
get_entity_networkBFS from a single entity up to a max depth (hard-capped at 3).
get_entity_risk_analysisAggregated risk dossier: concentration, recurrence, sole-source, fragmentation, dependency, accountability — with textual interpretation per axis.
get_equivalenciesTranslate a EUR amount into public-service equivalents (teachers, nurses, daycare places, etc.).
get_fiscal_deficitCatalonia → Spain fiscal deficit for a year range using one of three academic methods: cash\_flow | burden\_benefit | contribution\_cost.
get_lobby_meetingsLobby meetings from the Generalitat transparency portal. Filters: official name, interest group, date range.
get_methodologyScoring methodology, data sources, last-sync timestamps, definitions. Citable for LLM outputs.
get_network_hubsHighest-degree nodes filtered by type + metric.
get_organSingle contracting body profile: total contracts, total amount, % sole-source, % menor, % competitive, top-5 suppliers share.
get_partyParty aggregates: member count, total accumulated years, average salary.
get_person_networkBFS from a single person up to a max depth (hard-capped at 3).
get_politica_hubGlobal political dashboard: counts by institution, top earners, data coverage, last sync.
get_politicianProfile, accumulated years, party, institution, salary, BORME vincles count.
get_politician_conflictsDeclared + detected conflicts for one politician.
get_politician_salary_historyDetailed salary time-series across positions.
get_porta_giratoriaRevolving door catalog. Filters: party, institution, min years of political service before pivot, sector.
get_pressupostos_hubGeneralitat budget dashboard for a single fiscal year: total, by department, execution rate if available.
get_rankingsParameterised top-N ranking across entities. `metric` ∈ total\_public\_funds | menjometre\_score | total\_grants | total\_contracts | sole\_source\_pct | grant\_dependency\_pct. Filters: comarca, beneficiary\_type, org\_type, min\_funds.
get_source_documentsEnumerate every source URL attached to a single record. record\_type ∈ grant | contract | conveni | politician\_position | porta\_giratoria\_case | personal\_eventual\_appointment | official\_appointment | entity.
get_xarxa_by_comarcaGeographic breakdown of network density (edges per comarca).
get_xarxa_statsGlobal network metrics: node counts, edge counts, connectivity, top hubs.
get_yearly_trendsGeneric yearly time-series by dimension/metric (grants, contracts, entities).
get_yearly_trends_budgetGeneric time-series of a budget dimension/metric (deflated or nominal).
investigate_clusterFull member list of a Louvain cluster with entity + person joins.
list_carrecsPositions filtered by institution, party, active status.
list_documents_for_entityEvery source document linked to any record touching the given entity.
list_ens_publicsInstrumental public entities catalog filtered by type/comarca.
list_filter_optionsEnumerate all valid filter values the other tools accept: departments, organs, finalitats, parties, comarques, vegueríes, beneficiary types, procedure types.
list_organsContracting bodies catalog with filters (semaphore, search) and pagination.
searchSearch across entities, politicians, contracts, grants, organs, and persons. Returns top matches with type, name, slug/id, and a short context line.