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
Own MP activity covers 13 Apr 2026 to 1 Jul 2026 where available. Constituency mention evidence covers 4 Jul 2024 to 2 Jul 2026.
Coverage Scope
current office-data window. Own MP activity counts are still backfilling and currently use the office-data window shown here, not a full since-2024 election total. Use date filters in the tracker or official source links for older own-MP activity.
Constituency mention evidence uses the separate full post-2024-election local-evidence window (4 Jul 2024 to 2 Jul 2026), so its counts should not be compared directly with shorter own-MP activity counts.
For older own-MP votes, speeches, written questions, and EDMs, the tracker can run bounded live lookups against public Parliament sources.
Current Office Reference Data
Open current-snapshot/index.json for the underlying awaiting-answer written questions, registered interests summary, committee records, and bill records.
Broader Tracker Workflows
Review date-filtered activity
Open Dave Doogan in the broader tracker for profile panels, date filters, and tracker-backed older-history tools where available.
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.
Votes differing from Scottish National Party majority
1 recorded vote where Dave Doogan's vote differed from the Scottish National Party majority in the tracker voting-pattern dataset. This does not mean zero votes; total votes in this page's own-activity scope: 9. This is descriptive context, not a score.
LLM Data Map
| Open this | Use it for | Records |
|---|---|---|
| Search manifest | Fast topic, status, source, and official-URL triage before opening source shards. | 81 records |
| Topic bundles | Deterministic cross-source evidence bundles with official-source deepening guidance. | 4 topics |
| Places index | Place-first routing for Constituency Mentions with ambiguity and confidence signals. | 251 displayed places |
| Open follow-ups | Canonical 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: 2026-04-03 to 2026-07-02.Canonical public follow-up queue for written questions still awaiting answer; open the official question URL for live status and answer text. | 3 records |
| Written questions | Written questions tabled by the MP in this page's own-activity coverage.Scope: current office-data window. Coverage dates: 2026-04-13 to 2026-07-01.Compact records include question text, status, department, answer date/member where available, and official URL; full written answers are not embedded. | 11 records |
| Spoken contributions | Hansard spoken contributions by the MP in this page's own-activity coverage.Scope: current office-data window. Coverage dates: 2026-04-13 to 2026-07-01.Compact records include a short summary and Hansard URL; do not treat the summary as the full contribution text. | 35 records |
| Votes | Commons divisions recorded for the MP in this page's own-activity coverage.Scope: current office-data window. Coverage dates: 2026-04-13 to 2026-07-01.Compact division records show this MP's recorded vote and official division URL; open the official source for full division context. | 9 records |
| Early Day Motions | Early Day Motions signed by the MP in this page's own-activity coverage.Scope: current office-data window. Coverage dates: 2026-04-13 to 2026-07-01.Compact EDM records include title, date, signature context where available, and official URL; open the official source for motion text. | 16 records |
| Constituency mention evidence | Hansard contributions matched to local/geographic terms, plus separately labelled parliamentary member-reference phrases.Scope: post-2024-election constituency mention extract. Coverage dates: 2024-07-04 to 2026-07-02.Evidence-ranked Hansard matches include mention category, match basis, confidence, signals, matched terms, and official URL; member-reference phrases are not ordinary local/geographic mentions. | 69 records (20 local/geographic, 49 member-reference) |
| Geography terms | Constituency 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. | 256 terms |
| Current office reference data | Awaiting written-question answers, registered interests, committee records, and bill records from the current office snapshot.Scope: current office snapshot. Coverage dates: 2026-04-03 to 2026-07-02.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. | 10 records across components |
Constituency Mentions
Constituency mention evidence separates local/geographic matches from parliamentary member-reference phrases such as references to the MP for Angus and Perthshire Glens. The generator keeps match evidence such as matched terms, mention category, confidence, and Hansard links so the office can check context before reuse.
Mapped place terms used for matching (255)
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.
Hamlet
- Aberlemnohamlet
- Airliehamlet
- Airntullyhamlet
- Aldclunehamlet
- Amulreehamlet
- Ardtalnaighamlet
- Arthurstonehamlet
- Backmuir of Liffhamlet
- Baldovanhamlet
- Balhallhamlet
- Balkeeriehamlet
- Ballathiehamlet
- Ballindarghamlet
- Balmacneilhamlet
- Balnaguardhamlet
- Balrowniehamlet
- Baluainhamlet
- Bandirranhamlet
- Barnheadhamlet
- Blackgatehamlet
- Bogindollohamlet
- Brewlands Bridgehamlet
- Bridge of Dunhamlet
- Bridgend of Lintrathenhamlet
- Caldhamehamlet
- Calvinehamlet
- Campmuirhamlet
- Cargillhamlet
- Chapelhillhamlet
- Clovahamlet
- Collacehamlet
- Cortachyhamlet
- Coshievillehamlet
- Craigiehamlet
- Craigtonhamlet
- Douglastownhamlet
- Dowallyhamlet
- Drumgleyhamlet
- Dunalastairhamlet
- Dunskiaghamlet
- Dykeheadhamlet
- Easter Lednathiehamlet
- Farnellhamlet
- Fernhamlet
- Foldahamlet
- Fornethhamlet
- Forterhamlet
- Freuchieshamlet
- Gallinhamlet
- Galllowfauldhamlet
- Gallowhill (Angus / Perth and Kinross)hamlet - 2 source places
- Gannochyhamlet
- Gatesidehamlet
- Glenogilhamlet
- Glenprosen Villagehamlet
- Grandtullyhamlet
- Guayhamlet
- Harrietfieldhamlet
- Inchbarehamlet
- Innerwickhamlet
- Inverhamlet
- Inverarityhamlet
- Invervarhamlet
- Keltneyburnhamlet
- Killichonanhamlet
- Killiecrankiehamlet
- Kindallachanhamlet
- Kinnochtryhamlet
- Kirkinchhamlet
- Kirkton of Airliehamlet
- Kirkton of Craighamlet
- Kirkton of Glenislahamlet
- Kirkton of Kingoldrumhamlet
- Kirkton of Tealinghamlet
- Lawershamlet
- Leyshamlet
- Logie Perthamlet
- Longleyshamlet
- Lundiehamlet
- Markethillhamlet
- Melgundhamlet
- Memushamlet
- Middletonhamlet
- Miltonhamlet
- Milton of Edradourhamlet
- Milton of Ogilviehamlet
- Milton of Tulliemethamlet
- Netherton (Angus / Perth and Kinross)hamlet - 2 source places
- Newtonmillhamlet
- North Corstonhamlet
- North Craigohamlet
- Oakwoodhamlet
- Oathlawhamlet
- Old Montrosehamlet
- Old Struanhamlet
- Over Blelockhamlet
- Pearsiehamlet
- Petterdenhamlet
- Pitnacreehamlet
- Pubilhamlet
- Rannochhamlet
- Redgortonhamlet
- Rescobiehamlet
- Rossie Millshamlet
- Saucherhamlet
- Spittal of Glensheehamlet
- Strathmartinehamlet
- Struanhamlet
- Tarfsidehamlet
- Tigertonhamlet
- Trinafourhamlet
- Trinityhamlet
- Trochryhamlet
- Tulloch of Pitnacreehamlet
- Usanhamlet
- Waterloohamlet
Multiple
- Kinnaird (Angus / Perth and Kinross)multiple - 2 source places
- Kirkton (Angus / Perth and Kinross)multiple - 2 source places
- Maryton (Angus; 2 source types)multiple - 2 source places
Other Settlement
- Auchnafreeother settlement
- Balfieldother settlement
- Ballintuimother settlement
- Barns of Claverhouseother settlement
- Blackcraigother settlement
- Blacklunansother settlement
- Bridge of Gaurother settlement
- Bridgendother settlement
- Burnbank Parkother settlement
- Camusvrachanother settlement
- Carieother settlement
- Clunieother settlement
- Dronleyother settlement
- Drumcroy Lodgesother settlement
- Dunother settlement
- Eassieother settlement
- Enochdhuother settlement
- Fossother settlement
- Kiltyrieother settlement
- Kinclavenother settlement
- Kingswoodother settlement
- Kirkton of Collaceother settlement
- Kirkton of Lethendyother settlement
- Kirkton of Menmuirother settlement
- Logieother settlement
- Lownie Moorother settlement
- Lurglomandother settlement
- Moneydieother settlement
- Sawmill Cottagesother settlement
- St Martinsother settlement
- Stracathroother settlement
- Stralochother settlement
- Strathtummelother settlement
- Tomnacroichother settlement
- Turinother settlement
- West Clochieother settlement
- West Toftsother settlement
Suburban Area
- Bertha Parksuburban area
- Blairgowriesuburban area
- Borrowfieldsuburban area
- Fenderbridgesuburban area
- Ferrydensuburban area
- Gowanbanksuburban area
- Middlebridgesuburban area
- Moulinsuburban area
- North Whitehillssuburban area
- Northmuirsuburban area
- Old Bridge of Tiltsuburban area
- Port na Craigsuburban area
- Rattraysuburban area
- Rosemountsuburban area
- Rossie Islandsuburban area
- South Whitehillssuburban area
- Wellbanksuburban area
Town
- Aberfeldytown
- Alythtown
- Blairgowrie and Rattraytown
- Brechintown
- Coupar Angustown
- Forfartown
- Kirriemuirtown
- Montrosetown
- Pitlochrytown
Village
- Acharnvillage
- Ardlervillage
- Auchterhousevillage
- Balbeggievillage
- Ballinluigvillage
- Balrudderyvillage
- Bankfootvillage
- Birkhillvillage
- Birnamvillage
- Blair Athollvillage
- Bridge of Callyvillage
- Bridgefootvillage
- Burreltonvillage
- Butterstonevillage
- Camserneyvillage
- Caputhvillage
- Carestonvillage
- Carsievillage
- Charlestonvillage
- Craigovillage
- Dalguisevillage
- Dullvillage
- Dunkeldvillage
- Edzellvillage
- Fearnanvillage
- Finavonvillage
- Fortingallvillage
- Fowlisvillage
- Gellyburnvillage
- Glamisvillage
- Guildtownvillage
- Hillsidevillage
- Inveraldievillage
- Kenmorevillage
- Kettinsvillage
- Kingsmuirvillage
- Kinlochvillage
- Kinloch Rannochvillage
- Kinrossievillage
- Kirkmichaelvillage
- Kirkton of Auchterhousevillage
- Liffvillage
- Little Ballinluigvillage
- Little Brechinvillage
- Little Dunkeldvillage
- Logieraitvillage
- Lunanheadvillage
- Luncartyvillage
- Meiglevillage
- Meikleourvillage
- Muirheadvillage
- Murthlyvillage
- New Alythvillage
- Newtylevillage
- Noransidevillage
- Padanaramvillage
- Piperdamvillage
- Ruthvenvillage
- Spittalfieldvillage
- Stanleyvillage
- Strathtayvillage
- Tannadicevillage
- Tealingvillage
- Tummel Bridgevillage
- Weemvillage
- Westmuirvillage
- Wolfhillvillage
- Woodsidevillage
Facet counts use the Constituency Mention evidence window. Scope: post-2024-election constituency mention extract. Coverage dates: 2024-07-04 to 2026-07-02. Facet counts overlap: one contribution can be counted in more than one match category. Member-reference phrases identify references to the MP for this seat and are not ordinary local/geographic mentions.
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
- Fuel Oil: Prices24 Jun 2026 | Answered | Department for Energy Security and Net Zero
- Pigmeat12 Jun 2026 | Answered | Department for Environment, Food and Rural Affairs
- Pigmeat: Imports12 Jun 2026 | Answered | Department for Environment, Food and Rural Affairs
- Civil Servants: Workplace Pensions12 Jun 2026 | Answered | Cabinet Office
Spoken Contributions
- Engagements1 Jul 2026
- Defence Investment Plan30 Jun 2026
- Department for Work and Pensions30 Jun 2026
- Defence Spending and Readiness23 Jun 2026
Constituency Mention Evidence
- Defence24 Mar 2026
- Fuel Duty18 Mar 2026
- Fuel Duty18 Mar 2026
- Firearms Licensing23 Feb 2026
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 evidence 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.