Civicord · UK · Browse / Midlothian

Midlothian · S14000045 · Scotland · Scotland · 71,210 electorate

Midlothian

Mixed HTTP results — The rounded HTTP response rate at the audit was between 40% and 65%. Inspect each URL for its result. 1 of 2 sites responding (50%) · 1 unreachable · 0 redirected

What happened here

  1. What was recorded

    The April 2025 scrape recorded 2 candidate websites for Midlothian.

    • Kirsty McNeill — Labour and Co-operative Party — https://kirstymcneill.com
    • Owen Thompson — Scottish National Party (SNP) — https://www.owenthompson.scot
  2. What the audit found

    On 7 September 2026 those URLs were requested again — 1 no longer resolved, 1 answered. An HTTP success means the server answered. It does not establish that the campaign page survived.

    • Kirsty McNeill — https://kirstymcneill.com — Answered (HTTP 200).
    • Owen Thompson — https://www.owenthompson.scot — No longer resolved (Connection failed). An outage and a removal look the same in this check.

No sentence comparison is stored for the candidates on this seat.

Midlothian — 1 of 2 sites responding (50%) · 1 unreachable · 0 redirectedHalftone: more / larger paper dots = lower response rate.

Candidates in this seat

Respondingkirstymcneill.com

Kirsty McNeill · Labour and Co-operative Party

  • HTTP 200
  • Candidate-name signal: surname matched in the response body (heuristic only)
Open filtered ledger — 2 sites ↗See what you followBrowse all 2,375 ↗UK overview ←

This link encodes the seat view · Press ⌘K to jump anywhere. This seat's hex is equal-weight (Automatic Knowledge v5, OGL) · How we checked →

Agent viewInspect the data and verify the record$0.002 / seat

Humans read this page for free. Agents pay per jurisdiction — this exact record is one metered call. Everything below is live; nothing here is mocked.

1 Free, same-origin

/api/constituencies/midlothian.json

Plain static JSON, CORS *, no key, 5-minute cache.

2 Metered via x402

https://civicord-aieyq.bazgateway.com/api/constituencies/midlothian

One jurisdiction = one charge. Expect 402, not an error.

3 MCP tool

Same call, as an agent would invoke it over MCP.

getConstituency(slug="midlothian")
-> { name: "Midlothian", stats: { sites, live, livePct, ... }, candidates: [ ... ] }

4 The Graph (live)

On-chain p114626.civicord.eth via/api/graph (Studio proxy) — person id, not seat slug.

{
  candidate(id: "114626") {
    id ensName status url personName textRecordCount
    registeredAt registeredAtBlock owner
  }
  _meta { block { number } hasIndexingErrors }
}

Live queries run on demand; a failure is shown honestly, never replaced with a cached response. Verify independently: ENS ·resolver ·Subgraph Studio ·/api/graph ·openapi.yaml ·source

↑↓ move · ↵ open · Esc close