Open source · Built on the GreyhoundAPI
Nine projects that read the same feed you can. Predictions made before the off and scored against the result, questions answered from the real archive, and the models underneath — all of it public, all of it runnable on your own key.
The lab
Each one is a small, single-purpose tool built on the public API. Clone the repo, connect the hosted ones, or read how each works.
Which trap actually wins, at every track and distance — counted from results and tested for significance, not asserted. The inside trap turns out not to be the best trap.
Reads a racecard and returns a ranked prediction with its reasoning — made before the off, then scored against the real result. Nothing cherry-picked.
Ask the archive a question in ordinary English. It picks its own endpoints, fetches the real races and answers with what it actually found — showing which tools it used.
An MCP server for the feed, so Claude, ChatGPT or Cursor can answer "what is Romford's trap-1 rate this year" straight from the live data — no client to write.
Call the real API from the page, against real racing, on a free key — pick an endpoint, change the parameters and read the actual response before you write any code.
How every sire's and dam's offspring actually run: strike rate, wins against the market, early pace and debut wins, across Great Britain and Ireland, with a page for each parent.
Describe a rule, run it across the whole archive, get honest out-of-sample numbers with the staking maths done properly. Built to make a bad idea obvious quickly.
Does early pace win here? For every track and distance, how often the dog in front at the first split goes on to win — and whether that is different enough from the rest of the region to be a character rather than a fortnight.
Turns a dog's race-by-race record into a readable paragraph a human would actually write — for previews, alerts and anywhere raw form is unreadable.
How every sire's and dam's offspring actually run: strike rate, wins against what the market expected, how often they lead to the first bend and how they go on debut. 1,940 sires and 15,551 dams across 3,915,051 runs, a page for each one, rebuilt every week and free to browse.
Why any of this is public
We sell a feed, not a tipping service. Publishing what can be built on it — including when it does not work — is a better argument than a marketing page.
Every prediction is stored before the race runs and scored afterwards. The accuracy figure includes the bad days, because a number you can only see after the fact is worthless.
Nothing here needs our infrastructure. Clone the repo, point it at your own key, and you get the same output — which is also the fastest way to see whether the feed suits you.
These are research tools. They are built to be inspected and argued with, not followed. No tips, no ratings, no service.
Two minutes
Install, point it at a race, and read the ranked preview in your terminal. The free sandbox key is enough to try it.
# install pip install greyhound-ai # rank tonight's card at Romford greyhound-ai preview --track romford --date today Romford 19:04 · A3 · 400m 1. Trap 1 Swift Cassandra 0.31 2. Trap 6 Coolavanny Pin 0.22 3. Trap 2 Newlawn Fifi 0.18 reasoning: T1 rails runner, +4.7pt draw edge at 400m…
What's next
A strategy harness and a form summariser. Each one ships the same way: an open repo, runnable on your own key.
Read this bit. The lab is for research and education and is not betting advice. Accuracy figures are true out-of-sample — each race predicted before its result was known — but they are still small samples on a hard problem. Treat them as evidence the pipeline works, not as an edge.
No code at all
The same racing data reaches Claude and ChatGPT directly through our MCP server. 23 tools — cards, results, form, sectionals, prices, trainer records — answered from your own key. Nothing to install and nothing to run: it is a hosted address and a header.
# Add custom connector URL https://greyhoundapi.com/mcp Authentication None ← not OAuth Header name x-api-key Header value gapi_test_… # then, in the chat you Show me A Bad Winter's last six runs claude → get_dog_form 6 runs, 2 wins. Best time 28.41 over 460m at Romford on 14 Aug…