Overview / MP office pages / Mr Angus MacDonald

Mr Angus MacDonald's MP Office Data Index for LLMs

A generated, source-linked public-data index for Inverness, Skye and West Ross-shire office workflows. It gives an LLM a small entry point first, then separate data indexes for the exact evidence it needs. For staff browsing and comparison, use the main tracker instead; it is structured for human review.

Liberal Democrat Inverness, Skye and West Ross-shire Generated 30 Apr 2026

What This Page Is For

This generated page is the office workflow hand-off for local LLMs such as Copilot or Claude. It is not an official MP website or an endorsement. The page explains the available sources, and the data links split votes, spoken contributions, written questions, EDMs, constituency mentions, geography terms, and current office reference data into smaller JSON files.

The intended use is: read llm.md, fetch data.json, then open only the source index and month file relevant to the user request.

Coverage Summary

666Written questions in own-activity scope
130Spoken contributions in own-activity scope
307Votes in own-activity scope
66Constituency mentions in local-evidence scope

Own MP activity covers 4 Jul 2024 to 30 Apr 2026 where available. Constituency mentions cover 4 Jul 2024 to 30 Apr 2026.

Coverage Scope

post-2024-election office-data history. Own MP activity counts use the available post-2024 election office-data history for this MP. They can be read as since-election counts for the stated coverage dates.

The static own-activity counts already cover the post-2024 election range; use official source links for full source text.

Current Office Reference Data

Open current-snapshot/index.json for the underlying awaiting-answer written questions, registered interests summary, committee records, and bill records.

0Awaiting written-question answerscurrent office snapshot
7Registered interestslatest register snapshot
2Committee recordscurrent office snapshot
0Bill recordscurrent office snapshot

Broader Tracker Workflows

Review date-filtered activity

Open Mr Angus MacDonald in the broader tracker for profile panels, date filters, and tracker-backed older-history tools where available.

Open tracker profile

Build source-backed briefing

Use the tracker briefing builder for draft blocks from tracker-held speeches, written questions, votes, and EDMs. Constituency-mention JSON on this page is separate; open it from the LLM Data Map when local evidence is needed.

Open briefing builder

Votes differing from Liberal Democrat majority

11 recorded votes where Mr Angus MacDonald's vote differed from the Liberal Democrat majority in the tracker voting-pattern dataset. This does not mean zero votes; total votes in this page's own-activity scope: 307. This is descriptive context, not a score.

Check selected-party vote differences

LLM Data Map

Open thisUse it forRecords
Search manifestFast topic, status, source, and official-URL triage before opening source shards.2,123 records
Topic bundlesDeterministic cross-source evidence bundles with official-source deepening guidance.10 topics
Places indexPlace-first routing for Constituency Mentions with ambiguity and confidence signals.486 places
Open follow-upsCanonical awaiting-answer written-question queue reconciled from current office data and generated own-activity records.Scope: current office snapshot reconciled against generated own-activity records. Coverage dates: 2024-07-04 to 2026-04-30.Canonical public follow-up queue for written questions still awaiting answer; open the official question URL for live status and answer text.0 records
Written questionsWritten questions tabled by the MP in this page's own-activity coverage.Scope: post-2024-election office-data history. Coverage dates: 2024-07-04 to 2026-04-30.Compact records include question text, status, department, answer date/member where available, and official URL; full written answers are not embedded.666 records
Spoken contributionsHansard spoken contributions by the MP in this page's own-activity coverage.Scope: post-2024-election office-data history. Coverage dates: 2024-07-04 to 2026-04-30.Compact records include a short summary and Hansard URL; do not treat the summary as the full contribution text.130 records
VotesCommons divisions recorded for the MP in this page's own-activity coverage.Scope: post-2024-election office-data history. Coverage dates: 2024-07-04 to 2026-04-30.Compact division records show this MP's recorded vote and official division URL; open the official source for full division context.307 records
Early Day MotionsEarly Day Motions signed by the MP in this page's own-activity coverage.Scope: post-2024-election office-data history. Coverage dates: 2024-07-04 to 2026-04-30.Compact EDM records include title, date, signature context where available, and official URL; open the official source for motion text.1,017 records
Constituency mentionsHansard contributions matched to the constituency name or mapped local places.Scope: post-2024-election constituency mention extract. Coverage dates: 2024-07-04 to 2026-04-30.Evidence-ranked Hansard matches include match basis, confidence, signals, matched terms, and official URL; check context before reuse.66 records
Geography termsConstituency name and source-derived place terms used for Constituency Mentions.Constituency name and public source-derived place terms used to find Constituency Mentions; no boundary geometry is embedded.492 terms
Current office reference dataAwaiting written-question answers, registered interests, committee records, and bill records from the current office snapshot.Scope: current office snapshot. Coverage dates: 2024-07-04 to 2026-04-30.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.9 records across components

Constituency Mentions

Constituency Mentions are not just searches for the constituency name. The generator also uses mapped place terms for Inverness, Skye and West Ross-shire, keeps match evidence such as matched terms and confidence, and links back to the Hansard contribution so the office can check context before reuse.

Mapped place terms used for matching (491)

These constituency place terms are searched alongside the constituency name. Open geography/index.json for the machine-readable list with source metadata. Check matched mentions against the linked Hansard context before reuse.

City

  • Invernesscity

Hamlet

  • A' Chillhamlet
  • Aberchalderhamlet
  • Achinteehamlet
  • Achluachrachhamlet
  • Achnacarryhamlet
  • Achnandarachhamlet
  • Achnashellachhamlet
  • Airdhamlet
  • Aird-dhubhhamlet
  • Aisighamlet
  • Allt a' Chruinnhamlet
  • Allt nan Sùghhamlet
  • Alltsighhamlet
  • An Dùnanhamlet
  • An Gearraidh Mòrhamlet
  • An Sruthanhamlet
  • An t-Ollachhamlet
  • An t-Òrdhamlet
  • An Àird Dhorchahamlet
  • Annathamlet
  • Annishaderhamlet
  • Ardaneaskanhamlet
  • Ardarrochhamlet
  • Ardheslaighamlet
  • Arinacrinachdhamlet
  • Arnisdalehamlet
  • Attadalehamlet
  • Auchnahillinhamlet
  • Auchtertyrehamlet
  • Ault-na-goirehamlet
  • Back of Keppochhamlet
  • Badicaulhamlet
  • Balbeghamlet
  • Balchragganhamlet
  • Balgownhamlet
  • Balmeanachhamlet
  • Balmeanachhamlet
  • Balmorehamlet
  • Balnacrahamlet
  • Bhatairsteinnhamlet
  • Blackwoodhamlet
  • Blarmachfoldachhamlet
  • Borreraighamlet
  • Bracadalehamlet
  • Bracarahamlet
  • Bridgendhamlet
  • Bun na Caimhamlet
  • Bundallochhamlet
  • Buntaithamlet
  • Calligarryhamlet
  • Cam Dhàilhamlet
  • Camas Tianabhaighamlet
  • Camas-luiniehamlet
  • Camuslongarthamlet
  • Camusterrachhamlet
  • Carbosthamlet
  • Carn-gormhamlet
  • Carnduhamlet
  • Caroyhamlet
  • Cille Bhrìgndehamlet
  • Clachamishhamlet
  • Clachanhamlet
  • Cluneshamlet
  • Coille Mhorgilhamlet
  • Coillorehamlet
  • Corranhamlet
  • Corrimonyhamlet
  • Craighamlet
  • Craighamlet
  • Croachyhamlet
  • Cuidrachhamlet
  • Cul nan Cnochamlet
  • Culduiehamlet
  • Culnameanhamlet
  • Dalchreicharthamlet
  • Dhuhallowhamlet
  • Drinanhamlet
  • Drumbuiehamlet
  • Drumuiehamlet
  • Duisdeil Beaghamlet
  • Dunanshamlet
  • Dunlichityhamlet
  • Duntulmhamlet
  • Ealaiseadarhamlet
  • Easter Mandallyhamlet
  • Easter Miltonhamlet
  • Eilanreachhamlet
  • Erbusaighamlet
  • Errogiehamlet
  • Eubosthamlet
  • Eyrehamlet
  • Faichemhamlet
  • Fearnmorehamlet
  • Feorlaighamlet
  • Fersaidhamlet
  • Flaiseaderhamlet
  • Galltairhamlet
  • Galtraigeallhamlet
  • Gead an t-Sailleirhamlet
  • Gearyhamlet
  • Gillenhamlet
  • Glen Cononhamlet
  • Glenbernisdalehamlet
  • Glenbrittlehamlet
  • Glengrascohamlet
  • Glenmorehamlet
  • Grealinhamlet
  • Halistrahamlet
  • Hallinhamlet
  • Heatherfieldhamlet
  • Heribosthamlet
  • Highbridgehamlet
  • Hungladderhamlet
  • Incherilhamlet
  • Inchlagganhamlet
  • Inchmorehamlet
  • Inverfarigaighamlet
  • Invershielhamlet
  • Keistlehamlet
  • Kenmorehamlet
  • Kerrowhamlet
  • Kilbeghamlet
  • Kilbridehamlet
  • Killiananhamlet
  • Kilmonivaighamlet
  • Kilmorehamlet
  • Kingsburghhamlet
  • Kinlochhamlet
  • Kinloch Hournhamlet
  • Kirktonhamlet
  • Kirktonhamlet
  • Kishornhamlet
  • Knockbreckhamlet
  • Knotthamlet
  • Leacanashiehamlet
  • Leachachanhamlet
  • Leacnasaidehamlet
  • Leanachhamlet
  • Letterfinlayhamlet
  • Lionacrohamlet
  • Lochendhamlet
  • Lochgarthsidehamlet
  • Lonbainhamlet
  • Luibhamlet
  • Malagarhamlet
  • Marishaderhamlet
  • Melvaighamlet
  • Merkadalehamlet
  • Miltonhamlet
  • Miltownhamlet
  • Morvichhamlet
  • Muirshearlichhamlet
  • Na Faingeanhamlet
  • Naasthamlet
  • Newtownhamlet
  • North Fearnshamlet
  • Nostiehamlet
  • Orabosthamlet
  • Oshamlet
  • Oskaighamlet
  • Park Bernisdalehamlet
  • Peighinn a' Chorrainhamlet
  • Peinahahamlet
  • Peinmorehamlet
  • Peinmorehamlet
  • Penifilerhamlet
  • Port Mòrhamlet
  • Portneorahamlet
  • Raigbeghamlet
  • Raonapollhamlet
  • Redpointhamlet
  • Rhenetrahamlet
  • Roaghamlet
  • Roskhillhamlet
  • Rychragganhamlet
  • Scaniporthamlet
  • Sgalamushamlet
  • Sgeitheabosthamlet
  • Sheaderhamlet
  • Shenvalhamlet
  • Shiel Bridgehamlet
  • Sròndubhhamlet
  • Steinhamlet
  • Strome Ferryhamlet
  • Stromemorehamlet
  • Stronabahamlet
  • Stronehamlet
  • Stròlamashamlet
  • Suledalehamlet
  • Sàsaighamlet
  • Taliskerhamlet
  • Tarbethamlet
  • Toravaighamlet
  • Torcastlehamlet
  • Tornesshamlet
  • Toscaighamlet
  • Totaighamlet
  • Totehamlet
  • Totscorehamlet
  • Tournaighamlet
  • Trumpanhamlet
  • Uigshaderhamlet
  • Upper Feorlighamlet
  • Valtoshamlet
  • Vattenhamlet
  • Viewhillhamlet
  • Waterloohamlet
  • Wester Alliginhamlet
  • Wester Mandallyhamlet

Other Settlement

  • Abriachanother settlement
  • Achnacloichother settlement
  • Achnaconeranother settlement
  • Airdother settlement
  • Airorother settlement
  • An Fasadh Feàrnaother settlement
  • An Lethalltother settlement
  • An t-Aodann Banother settlement
  • Aonachanother settlement
  • Ardnarffother settlement
  • Armadaleother settlement
  • Arnishother settlement
  • Auchterawother settlement
  • Aultgrishanother settlement
  • Aultvoulinother settlement
  • Avernishother settlement
  • Baile nan cnocother settlement
  • Balachuirnother settlement
  • Balmeanachother settlement
  • Balmeanachother settlement
  • Big Sandother settlement
  • Blackparkother settlement
  • Bohuntineother settlement
  • Boorother settlement
  • Bornesketaigother settlement
  • Braeintraother settlement
  • Breabostother settlement
  • Breckreyother settlement
  • Bualinturother settlement
  • Carbostother settlement
  • Cleadaleother settlement
  • Coille Ghillidhother settlement
  • Coulagsother settlement
  • Coveother settlement
  • Cradlehallother settlement
  • Cuaigother settlement
  • Cul na Creaganother settlement
  • Cullochy Lockother settlement
  • Daviotother settlement
  • Diggother settlement
  • Dochgarrochother settlement
  • Druim an Teampuillother settlement
  • Druim Fhearnaother settlement
  • Druimindarrochother settlement
  • Drynochother settlement
  • Duirinishother settlement
  • Dundregganother settlement
  • Easter Portclairother settlement
  • Eynortother settlement
  • Feabuieother settlement
  • Fernileaother settlement
  • Fhaighear Mhòirother settlement
  • Findhornbridgeother settlement
  • Flodigarryother settlement
  • Galmisdaleother settlement
  • Gearr Lochaidhother settlement
  • Gearrosother settlement
  • Glasnakilleother settlement
  • Glebeother settlement
  • Glen Moreother settlement
  • Glen Moristonother settlement
  • Glenancrossother settlement
  • Glenuachdarachother settlement
  • Greepother settlement
  • Griseornaisother settlement
  • Grotaigother settlement
  • Heasteother settlement
  • Husabostother settlement
  • Inverasdaleother settlement
  • Kalnakillother settlement
  • Keppochother settlement
  • Kildonanother settlement
  • Kilfinnanother settlement
  • Killilanother settlement
  • Kinlocheilother settlement
  • Kinloidother settlement
  • Kirkibostother settlement
  • Kylerheaother settlement
  • Leachkinother settlement
  • Lettereweother settlement
  • Letterfearnother settlement
  • Levishieother settlement
  • Lower Toteother settlement
  • Lòndubhother settlement
  • Mol-chlachother settlement
  • Mugearyother settlement
  • Ness-sideother settlement
  • North Erradaleother settlement
  • Opinanother settlement
  • Peterburnother settlement
  • Point of Sleatother settlement
  • Port Hendersonother settlement
  • Portclairother settlement
  • Ramasaigother settlement
  • Sallachyother settlement
  • Sandaigother settlement
  • Satranother settlement
  • Shieldaigother settlement
  • Skinidinother settlement
  • South Erradaleother settlement
  • Srath Carranother settlement
  • Stratherrickother settlement
  • Struyother settlement
  • Suisnishother settlement
  • Swordlandother settlement
  • Talladaleother settlement
  • Tarscabhaigother settlement
  • Tokavaigother settlement
  • Tomacharichother settlement
  • Tomdounother settlement
  • Tomonieother settlement
  • Totardorother settlement
  • Treaslaneother settlement
  • Tullochother settlement
  • Uigother settlement
  • Uiginisother settlement
  • Ullinishother settlement
  • Upper Toteother settlement
  • Wester Portclairother settlement

Suburban Area

  • An Garadh Fadasuburban area
  • An Leth-Pheighinnsuburban area
  • An Àrdsuburban area
  • Auchtercairnsuburban area
  • Ballifearysuburban area
  • Ballochsuburban area
  • Balmacqueensuburban area
  • Blackparksuburban area
  • Blairsuburban area
  • Braesuburban area
  • Braigh an Aodainn Bhainsuburban area
  • Brogaigsuburban area
  • Carbostbegsuburban area
  • Carbostmoresuburban area
  • Charlestownsuburban area
  • Citadelsuburban area
  • Clachansuburban area
  • Clachnaharrysuburban area
  • Claggansuburban area
  • Cnoc Dubhsuburban area
  • Coastsuburban area
  • Coishlettersuburban area
  • Corrysuburban area
  • Crownsuburban area
  • Culcabocksuburban area
  • Cullodensuburban area
  • Dalneighsuburban area
  • Druimarbinsuburban area
  • Easter Muckoviesuburban area
  • Fasachsuburban area
  • Feriniquarriesuburban area
  • Glaspheinsuburban area
  • Glaspheinsuburban area
  • Glebesuburban area
  • Hamaramoresuburban area
  • Hamaraverinsuburban area
  • Haughsuburban area
  • Hiltonsuburban area
  • Holmisdalesuburban area
  • Idrigillsuburban area
  • Inshessuburban area
  • Inverlochysuburban area
  • Kendramsuburban area
  • Kilmichaelsuburban area
  • Kinmyliessuburban area
  • Kirktonsuburban area
  • Lochardilsuburban area
  • Lonemoresuburban area
  • Lower Ardelvesuburban area
  • Lower Drummondsuburban area
  • Malaig Bheagsuburban area
  • Merkinchsuburban area
  • Mialsuburban area
  • Millburnsuburban area
  • North Cuilsuburban area
  • Pairc an Aoilsuburban area
  • Raigmoresuburban area
  • Resauriesuburban area
  • Rhasuburban area
  • Sartailsuburban area
  • Scorguiesuburban area
  • Smithstownsuburban area
  • Smithtonsuburban area
  • Solitotesuburban area
  • South Cuilsuburban area
  • South Kessocksuburban area
  • Steinnseallsuburban area
  • Strathsuburban area
  • Upper Ardelvesuburban area
  • Upper Auchintoresuburban area
  • Upper Drummondsuburban area
  • Westhillsuburban area
  • Woodside of Cullodensuburban area

Town

  • An Gearasdantown

Village

  • Achachorkvillage
  • Achantraidvillage
  • Achmorevillage
  • Am Plocvillage
  • An t-Àth Leathannvillage
  • An Teangavillage
  • Applecrossvillage
  • Ardelvevillage
  • Ardvasarvillage
  • Arisaigvillage
  • Badachrovillage
  • Balmacaravillage
  • Balnainvillage
  • Banbhaidhvillage
  • Bernisdalevillage
  • Borvevillage
  • Braefieldvillage
  • Breacaisvillage
  • Camascrossvillage
  • Camustielvillage
  • Cannichvillage
  • Caolvillage
  • Ceann Sail Eighrevillage
  • Colbostvillage
  • Corpachvillage
  • Doresvillage
  • Dornievillage
  • Drumnadrochitvillage
  • DuisdeiI Mòrvillage
  • Dunveganvillage
  • Ealagholvillage
  • Earlaisvillage
  • Eilean Iarmainvillage
  • Farrvillage
  • Ferindonaldvillage
  • Fioscabhaigvillage
  • Fort Augustusvillage
  • Foyersvillage
  • Gairlochvillage
  • Gleann Fhionnainnvillage
  • Glen Dalevillage
  • Glenelgvillage
  • Gorthleckvillage
  • Harloshvillage
  • Harrapulvillage
  • Inveralliginvillage
  • Inverarishvillage
  • Invergarryvillage
  • Inverievillage
  • Inverinatevillage
  • Invermoristonvillage
  • Inverroyvillage
  • Kilmaluagvillage
  • Kilvaxtervillage
  • Kinlochewevillage
  • Kyle of Lochalshvillage
  • Kyleakinvillage
  • Lagganvillage
  • Lewistonvillage
  • Lochcarronvillage
  • Lonmorevillage
  • Lower Breakishvillage
  • Lower Diabaigvillage
  • Lustavillage
  • Mallaigvillage
  • Milovaigvillage
  • Miltonvillage
  • Morarvillage
  • Moyvillage
  • Na Torrinvillage
  • Newlands of Cullodenvillage
  • Poolewevillage
  • Portnalongvillage
  • Portreevillage
  • Rataganvillage
  • Reraigvillage
  • Roybridgevillage
  • Sgonnsairvillage
  • Shieldaigvillage
  • Spean Bridgevillage
  • Staffinvillage
  • Taobh Lochaidhvillage
  • Tomatinvillage
  • Tomichvillage
  • Torlundyvillage
  • Torridonvillage
  • Uigvillage
  • Whitebridgevillage

Facet counts overlap: one contribution can be counted in more than one match category.

2Contributions by this MP
64Contributions by other speakers
65Constituency-name matches
2Mapped-place term matches
59Lower-confidence matches to check

Recent Examples

These are not a separate date-range sample. Each panel shows up to four most recent records from that source index. Open the relevant source index for the full coverage dates and month files.

Written Questions

Important Limits

This is descriptive public-data infrastructure for an office workflow. It is not a score, a ranking, or a judgement of parliamentary performance. Constituency Mention matches should be checked against the linked source before being used in casework, newsletters, or public copy.

Compact JSON records are retrieval pointers, not complete source transcripts. Open the official URLs before quoting written answers, Hansard wording, EDM motion text, or register details.