{"schema_version":1,"page_version":"mp-office-page-v1","slug":"cat-eccles-stourbridge","generated":"2026-04-30","rollout":"generated","purpose":"Generated LLM-friendly public-data index for MP office workflows. Fetch this file first, then follow the source index links needed for the task.","member":{"member_id":5293,"name":"Cat Eccles","party":"Labour","party_slug":"labour","tracker_party_slug":"labour","constituency":"Stourbridge","constituency_id":4339,"tracker_has_full_history":false,"tracker_coverage_start":"2026-04-21","tracker_coverage_end":"2026-05-01"},"theme":{"accent":"#D50000","accent_dark":"#8F0000","accent_tint":"#F6D6D6","accent_soft":"#FFF4F4"},"coverage":{"own_activity_start":"2026-02-02","own_activity_end":"2026-04-28","own_activity_history_scope":"current office-data window","own_activity_counts_are_since_2024_election":false,"local_mentions_start":"2024-07-04","local_mentions_end":"2026-04-30","office_snapshot_start":"2026-01-30","office_snapshot_end":"2026-04-30"},"count_scopes":{"own_activity":{"scope":"current office-data window","start":"2026-02-02","end":"2026-04-28","count_keys":["votes_available","spoken_contributions_available","edms_available","written_questions_available"]},"constituency_mentions":{"scope":"post-2024-election constituency mention extract","start":"2024-07-04","end":"2026-04-30","count_keys":["constituency_mentions_available","constituency_mentions_since_2024_election"]},"current_office_reference_data":{"scope":"current office snapshot","start":"2026-01-30","end":"2026-04-30","count_keys":["awaiting_written_question_answers","registered_interests","committees","bills"]},"selected_party_voting_context":{"scope":"tracker voting-pattern dataset","status":"available","count_key":"party_majority_different_votes_available","count_semantics":"recorded votes where this MP's vote differed from the selected party majority among party MPs who voted"}},"counts":{"constituency_mentions_since_2024_election":70,"votes_available":23,"spoken_contributions_available":6,"edms_available":29,"written_questions_available":17,"constituency_mentions_available":70,"awaiting_written_question_answers":0,"registered_interests":3,"committees":2,"bills":0,"party_majority_different_votes_available":8},"constituency_mention_facets":{"own_member":16,"other_speakers":54,"constituency_name":69,"mapped_place":16,"review_matches":34},"constituency_mention_facets_are_non_exclusive":true,"selected_party_voting_context":{"status":"available","count":8,"count_semantics":"recorded votes where this MP's vote differed from the selected party majority among party MPs who voted","selected_party_slug":"labour","selected_party_label":"Labour","tracker_href":"/mp-tracker?party=labour&mp=5293&view=patterns","party_dataset_pattern_count":2177,"party_dataset_recent_pattern_count":50,"party_dataset_first_pattern_date":"2024-07-23","party_dataset_last_pattern_date":"2026-04-28","divisions_checked":23,"mixed_divisions":92,"source":"commonsvotes-api","meaning":"Recorded votes where this MP's vote differed from the Labour majority in the tracker voting-pattern dataset.","does_not_mean":["A zero count does not mean the MP has no votes.","This is descriptive context, not a score, ranking, or judgement of intent."]},"links":{"html":"/mps/cat-eccles-stourbridge","llm_markdown":"/mps/cat-eccles-stourbridge/llm.md","data_json":"/mps/cat-eccles-stourbridge/data.json","search_manifest":"/mps/cat-eccles-stourbridge/search-manifest.json","topics_index":"/mps/cat-eccles-stourbridge/topics/index.json","places_index":"/mps/cat-eccles-stourbridge/places/index.json","raw_office_data":"/office-data/datasets/office-data-v1-wpc-2024/offices/cat-eccles-stourbridge/index.json","tracker":"/mp-tracker?party=labour&mp=5293","tracker_profile":"/mp-tracker?party=labour&mp=5293&view=profile","tracker_briefing":"/mp-tracker?party=labour&mp=5293&view=newsletter","tracker_voting":"/mp-tracker?party=labour&mp=5293&view=patterns","raw_tracker_party_data":"/mp-tracker/data/labour.json"},"source_indexes":{"votes":{"label":"Votes","description":"Commons divisions recorded for the MP in this page's own-activity coverage.","href":"/mps/cat-eccles-stourbridge/votes/index.json","count":23,"count_semantics":"records in this generated source index","first_date":"2026-02-03","last_date":"2026-04-22","coverage":{"start":"2026-02-02","end":"2026-04-28","scope":"current office-data window"},"source_note":"Compact division records show this MP's recorded vote and official division URL; open the official source for full division context.","attribution_keys":["uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":4,"href":"2026-04.json"},{"month":"2026-03","count":16,"href":"2026-03.json"},{"month":"2026-02","count":3,"href":"2026-02.json"}],"topic_hints":[{"term":"young people","count":10},{"term":"children s wellbeing schools bill","count":9},{"term":"finance (no. 2) bill report stage","count":3},{"term":"opposition day","count":2},{"term":"crime and policing bill","count":1},{"term":"crime and policing bill: government motion in relation to la439","count":1},{"term":"crime policing bill","count":1},{"term":"in relation to la439","count":1},{"term":"children's wellbeing and schools bill: govt motion to insist on amdt 38j and disagree with amdts 38v to 38x","count":1},{"term":"children's wellbeing and schools bill","count":1},{"term":"pensions schemes bill: govt motion relating to lords reason 88d","count":1},{"term":"pensions schemes bill","count":1}],"vote_counts":{"Aye":17,"No":6}},"months":[{"month":"2026-04","count":4,"href":"2026-04.json"},{"month":"2026-03","count":16,"href":"2026-03.json"},{"month":"2026-02","count":3,"href":"2026-02.json"}]},"spoken-contributions":{"label":"Spoken contributions","description":"Hansard spoken contributions by the MP in this page's own-activity coverage.","href":"/mps/cat-eccles-stourbridge/spoken-contributions/index.json","count":6,"count_semantics":"records in this generated source index","first_date":"2026-02-02","last_date":"2026-04-23","coverage":{"start":"2026-02-02","end":"2026-04-28","scope":"current office-data window"},"source_note":"Compact records include a short summary and Hansard URL; do not treat the summary as the full contribution text.","attribution_keys":["uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":2,"href":"2026-04.json"},{"month":"2026-02","count":4,"href":"2026-02.json"}],"topic_hints":[{"term":"energy bills: small businesses","count":2},{"term":"energy bills","count":2},{"term":"small businesses","count":2},{"term":"business of the house","count":1},{"term":"business of house","count":1},{"term":"health","count":1},{"term":"allied health professionals","count":1},{"term":"engagements","count":1},{"term":"indefinite leave to remain","count":1}]},"months":[{"month":"2026-04","count":2,"href":"2026-04.json"},{"month":"2026-02","count":4,"href":"2026-02.json"}]},"edms":{"label":"Early Day Motions","description":"Early Day Motions signed by the MP in this page's own-activity coverage.","href":"/mps/cat-eccles-stourbridge/edms/index.json","count":29,"count_semantics":"records in this generated source index","first_date":"2026-02-02","last_date":"2026-04-28","coverage":{"start":"2026-02-02","end":"2026-04-28","scope":"current office-data window"},"source_note":"Compact EDM records include title, date, signature context where available, and official URL; open the official source for motion text.","attribution_keys":["uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":5,"href":"2026-04.json"},{"month":"2026-03","count":13,"href":"2026-03.json"},{"month":"2026-02","count":11,"href":"2026-02.json"}],"topic_hints":[{"term":"health","count":2},{"term":"international workers’ memorial day 2026","count":1},{"term":"international workers memorial day 2026","count":1},{"term":"israel’s treatment of palestinian prisoners","count":1},{"term":"bermuda and oil industry tax","count":1},{"term":"bermuda oil industry tax","count":1},{"term":"social care","count":1},{"term":"health and social care","count":1},{"term":"health social care","count":1},{"term":"palestinian nakba commemoration march","count":1},{"term":"support for the ceramics industry","count":1},{"term":"support ceramics industry","count":1}]},"months":[{"month":"2026-04","count":5,"href":"2026-04.json"},{"month":"2026-03","count":13,"href":"2026-03.json"},{"month":"2026-02","count":11,"href":"2026-02.json"}]},"written-questions":{"label":"Written questions","description":"Written questions tabled by the MP in this page's own-activity coverage.","href":"/mps/cat-eccles-stourbridge/written-questions/index.json","count":17,"count_semantics":"records in this generated source index","first_date":"2026-02-20","last_date":"2026-04-10","coverage":{"start":"2026-02-02","end":"2026-04-28","scope":"current office-data window"},"source_note":"Compact records include question text, status, department, answer date/member where available, and official URL; full written answers are not embedded.","attribution_keys":["uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":1,"href":"2026-04.json"},{"month":"2026-03","count":9,"href":"2026-03.json"},{"month":"2026-02","count":7,"href":"2026-02.json"}],"topic_hints":[{"term":"health","count":8},{"term":"social care","count":5},{"term":"department for environment, food and rural affairs","count":3},{"term":"ministry of housing, communities and local government","count":2},{"term":"cats: animal breeding","count":2},{"term":"cats","count":2},{"term":"animal breeding","count":2},{"term":"state retirement pensions: women","count":2},{"term":"retirement pensions","count":2},{"term":"women","count":2},{"term":"department for work and pensions","count":2},{"term":"young people","count":1}],"top_departments":[{"department":"Department for Work and Pensions","count":5},{"department":"Department of Health and Social Care","count":5},{"department":"Department for Environment, Food and Rural Affairs","count":3},{"department":"Ministry of Housing, Communities and Local Government","count":2},{"department":"Department for Energy Security and Net Zero","count":1},{"department":"Department for Business and Trade","count":1}],"status_counts":{"Answered":17}},"months":[{"month":"2026-04","count":1,"href":"2026-04.json"},{"month":"2026-03","count":9,"href":"2026-03.json"},{"month":"2026-02","count":7,"href":"2026-02.json"}]},"constituency-mentions":{"label":"Constituency mentions","description":"Hansard contributions matched to the constituency name or mapped local places.","href":"/mps/cat-eccles-stourbridge/constituency-mentions/index.json","count":70,"count_semantics":"records in this generated source index","first_date":"2024-07-10","last_date":"2026-04-23","coverage":{"start":"2024-07-04","end":"2026-04-30","scope":"post-2024-election constituency mention extract"},"source_note":"Evidence-ranked Hansard matches include match basis, confidence, signals, matched terms, and official URL; check context before reuse.","attribution_keys":["ons_wpc_2024","os_open_names_2026_04","osni_gazetteer_2025_10_14","project_common_place_collision_words","uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":4,"href":"2026-04.json"},{"month":"2026-02","count":5,"href":"2026-02.json"},{"month":"2026-01","count":6,"href":"2026-01.json"},{"month":"2025-12","count":3,"href":"2025-12.json"},{"month":"2025-11","count":15,"href":"2025-11.json"},{"month":"2025-10","count":1,"href":"2025-10.json"}],"topic_hints":[{"term":"stourbridge","count":66},{"term":"council of europe and the european convention on human rights","count":12},{"term":"health","count":8},{"term":"black country day","count":6},{"term":"allied health professionals","count":4},{"term":"lye","count":3},{"term":"business of the house","count":3},{"term":"business of house","count":3},{"term":"domestic abuse-related deaths: nhs prevention","count":3},{"term":"domestic abuse","count":3},{"term":"related deaths","count":3},{"term":"railways bill","count":3}],"confidence_band_counts":{"high":36,"medium":34}},"months":[{"month":"2026-04","count":4,"href":"2026-04.json"},{"month":"2026-02","count":5,"href":"2026-02.json"},{"month":"2026-01","count":6,"href":"2026-01.json"},{"month":"2025-12","count":3,"href":"2025-12.json"},{"month":"2025-11","count":15,"href":"2025-11.json"},{"month":"2025-10","count":1,"href":"2025-10.json"},{"month":"2025-07","count":11,"href":"2025-07.json"},{"month":"2025-06","count":1,"href":"2025-06.json"},{"month":"2025-05","count":1,"href":"2025-05.json"},{"month":"2025-04","count":6,"href":"2025-04.json"},{"month":"2025-03","count":4,"href":"2025-03.json"},{"month":"2024-12","count":3,"href":"2024-12.json"},{"month":"2024-11","count":4,"href":"2024-11.json"},{"month":"2024-10","count":4,"href":"2024-10.json"},{"month":"2024-09","count":1,"href":"2024-09.json"},{"month":"2024-07","count":1,"href":"2024-07.json"}]},"geography":{"label":"Geography terms","description":"Constituency name and source-derived place terms used for Constituency Mentions.","href":"/mps/cat-eccles-stourbridge/geography/index.json","count":18,"mapped_place_term_count":17,"mapped_place_term_counts_by_type":{"suburban area":16,"town":1},"source_note":"Constituency name and public source-derived place terms used to find Constituency Mentions; no boundary geometry is embedded.","attribution_keys":["ons_wpc_2024","os_boundary_line_2025_10","os_open_names_2026_04","osni_gazetteer_2025_10_14","project_common_place_collision_words"]},"open-follow-ups":{"label":"Open follow-ups","description":"Canonical awaiting-answer written-question queue reconciled from current office data and generated own-activity records.","href":"/mps/cat-eccles-stourbridge/open-follow-ups/index.json","count":0,"count_semantics":"canonical awaiting-answer written-question records","coverage":{"start":"2026-01-30","end":"2026-04-30","scope":"current office snapshot reconciled against generated own-activity records"},"source_note":"Canonical public follow-up queue for written questions still awaiting answer; open the official question URL for live status and answer text.","attribution_keys":["uk_parliament"]},"current-snapshot":{"label":"Current office reference data","description":"Awaiting written-question answers, registered interests, committee records, and bill records from the current office snapshot.","href":"/mps/cat-eccles-stourbridge/current-snapshot/index.json","count":5,"record_count":5,"section_count":2,"count_semantics":"underlying records across current office reference-data components","component_counts":{"awaiting_written_question_answers":0,"registered_interests":3,"committees":2,"bills":0},"coverage":{"start":"2026-01-30","end":"2026-04-30","scope":"current office snapshot"},"source_note":"Current office reference data from the office snapshot. The count is the sum of component records: awaiting written-question answers, registered interests, committee records, and bill records.","attribution_keys":["uk_parliament"]}},"retrieval_indexes":{"search_manifest":{"href":"/mps/cat-eccles-stourbridge/search-manifest.json","count":78,"source_counts":{"committees":2,"edms":29,"interests":1,"spoken-contributions":6,"votes":23,"written-questions":17},"bytes":61805,"sharded":false,"attribution_keys":["uk_parliament"]},"topics":{"href":"/mps/cat-eccles-stourbridge/topics/index.json","count":5,"topic_slugs":["health","young-people","social-care","crime-and-policing-bill","registered-interests"],"attribution_keys":["ons_wpc_2024","os_open_names_2026_04","uk_parliament"]},"places":{"href":"/mps/cat-eccles-stourbridge/places/index.json","count":18,"mentioned_place_count":8,"attribution_keys":["ons_wpc_2024","os_open_names_2026_04","uk_parliament"]},"open_follow_ups":{"href":"/mps/cat-eccles-stourbridge/open-follow-ups/index.json","count":0,"description":"Canonical awaiting-answer written-question queue reconciled from current office data and generated own-activity records.","attribution_keys":["uk_parliament"]}},"licences":[{"key":"ons_wpc_2024","label":"ONS Westminster Parliamentary Constituency boundaries","licence":"Open Government Licence v3.0","licence_url":"https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/","notice":"Contains public sector information licensed under the Open Government Licence v3.0; source: Office for National Statistics.","source_version":"WPC July 2024 Boundaries EW BFE"},{"key":"os_boundary_line_2025_10","label":"OS Boundary-Line","licence":"Open Government Licence v3.0","licence_url":"https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/","notice":"Contains OS data © Crown copyright and database right.","source_version":"OS Boundary-Line 2025-10 enrichment-only"},{"key":"os_open_names_2026_04","label":"OS Open Names","licence":"Open Government Licence v3.0","licence_url":"https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/","notice":"Contains OS data © Crown copyright and database right.","source_version":"OS Open Names 2026-04"},{"key":"osni_gazetteer_2025_10_14","label":"OSNI Place Names Gazetteer","licence":"Open Government Licence compatible OSNI attribution","licence_url":"https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/","notice":"Contains Ordnance Survey of Northern Ireland data.","source_version":"OSNI Place Names Gazetteer 2025-10-14"},{"key":"project_common_place_collision_words","label":"Project common place-collision terms","licence":"project-reviewed term list; no external wordlist package","notice":"Used for deterministic dictionary-collision detection in the generated ambiguous register.","source_version":"project-common-place-collision-terms-v1"},{"key":"uk_parliament","label":"UK Parliament public data","licence":"Open Parliament Licence v3.0","licence_url":"https://www.parliament.uk/site-information/copyright-parliament/open-parliament-licence/","notice":"Contains Parliamentary information licensed under the Open Parliament Licence v3.0."}],"limitations":["This is a descriptive index of public parliamentary data, not a performance score.","Current office snapshot data is reference data. Own MP activity uses full post-2024-election tracker or office-data history where available, otherwise the current office-data window.","Constituency Mentions are evidence-ranked matches and should be checked against the linked Hansard source before reuse."]}
