Puntersedge
Overview
Description from the maker (original English)
AU/NZ racing and Australian sports odds for AI agents: 36 read-only tools, each stating its cost.
What you can do with it
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
- Connection: Computer or cloud
- Transport: stdio, Streamable HTTP
- Category: Games, sports, food & learning
- You need to fill in: PUNTERSEDGE_API_KEY, X-API-Key
Install
Pick the AI app you use, then copy the settings.
Passed 4/4 checks · What you ask goes through the maker’s server (api.puntersedge.online)
First: which AI do you use?
Pick your app and the steps appear below.
Works with Claude · about 5 min
You need a Puntersedge key (sign up on the maker’s site, may cost money) · Set it up once on claude.ai or the desktop app, then use it in chat · free accounts can add 1
Sign up and create a Puntersedge key
Open the maker’s site, sign up and create an API key for the next step. It may cost money.
Open Claude’s Connectors page
CustomizeConnectors
Click “+ Add” → “Add custom connector” and fill in these 2 fields
Copy each value into the field with the same name in Claude, then click Continue
Name · NamePuntersedgeRemote MCP server URL · Addresshttps://api.puntersedge.online/mcpUnder Request headers, add this name and value
Header nameX-API-KeyValue<paste your key here>Paste the key only into the app’s field, never into a chat or to anyone
Leave Authentication as Claude detected it, then click Add
Turn it on in a chat
+ConnectorsPuntersedge
Try it
Use Puntersedge and tell me what you can do for me, then show me one thing✓ If Claude says it is using Puntersedge or shows a Puntersedge tool in the answer, you are connected
Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version
ChatGPT cannot connect Puntersedge yet
Puntersedge needs your own key to connect, but OpenAI’s help page only describes OAuth sign-in; there is no key option we could verify
What you can do instead
A · Use an app that can connect Puntersedge
- You need a Puntersedge key (sign up on the maker’s site, may cost money) · Set it up once on claude.ai or the desktop app, then use it in chat · free accounts can add 1
- You need a Puntersedge key (sign up on the maker’s site, may cost money)
- You need a Puntersedge key (sign up on the maker’s site, may cost money)
- You need a Puntersedge key (sign up on the maker’s site, may cost money)
B · Others in Games, sports, food & learning that work with ChatGPT
Picked from the most used in the same category, only ones that connect by address with no key
- ShipSwift✓ ChatGPT
- Anime Garden✓ ChatGPT
- StyleKit✓ ChatGPT
Works with Claude Code · about 5 min
You need a Puntersedge key (sign up on the maker’s site, may cost money)
Sign up and create a Puntersedge key
Open the maker’s site, sign up and create an API key for the next step. It may cost money.
Open Terminal
Mac: press Command+Space and type Terminal · Windows: open PowerShell
Paste this command and press Enter
claude mcp add --transport http puntersedge https://api.puntersedge.online/mcp --header 'X-API-Key: your-value'Replace “your-value” with your key before pressing Enter
Paste the key only into the app’s field, never into a chat or to anyone
Type /mcp in Claude Code
You should see Puntersedge listed as connected
Try it
Use Puntersedge and tell me what you can do for me, then show me one thing✓ If Claude Code says it is using Puntersedge or shows a Puntersedge tool in the answer, you are connected
Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Works with Cursor · about 5 min
You need a Puntersedge key (sign up on the maker’s site, may cost money)
Sign up and create a Puntersedge key
Open the maker’s site, sign up and create an API key for the next step. It may cost money.
Fill in your key
In the Puntersedge settings, X-API-Key is empty; add your key and save
Paste the key only into the app’s field, never into a chat or to anyone
Open the AI chat in Cursor in Agent mode
Try it
Use Puntersedge and tell me what you can do for me, then show me one thing✓ If Cursor says it is using Puntersedge or shows a Puntersedge tool in the answer, you are connected
Menu names checked against Cursor’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Works with VS Code · about 5 min
You need a Puntersedge key (sign up on the maker’s site, may cost money)
Sign up and create a Puntersedge key
Open the maker’s site, sign up and create an API key for the next step. It may cost money.
Fill in your key
In the Puntersedge settings, X-API-Key is empty; add your key and save
Paste the key only into the app’s field, never into a chat or to anyone
Open the AI chat in VS Code in Agent mode
Try it
Use Puntersedge and tell me what you can do for me, then show me one thing✓ If VS Code says it is using Puntersedge or shows a Puntersedge tool in the answer, you are connected
Menu names checked against VS Code’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Other apps that use MCP, such as Windsurf, Zed or Gemini CLI, each add servers differently. See how in the app list.
Address for apps that connect over the web
https://api.puntersedge.online/mcpJSON settings are under “For developers” below
For developers: Terminal commands and JSON settings
Over the web
Claude Code
claude mcp add --transport http puntersedge https://api.puntersedge.online/mcp --header 'X-API-Key: your-value'Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"puntersedge": {
"url": "https://api.puntersedge.online/mcp",
"headers": {
"X-API-Key": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"puntersedge": {
"type": "http",
"url": "https://api.puntersedge.online/mcp",
"headers": {
"X-API-Key": "your-value"
}
}
}
}Installed on your computer
Claude Code
claude mcp add puntersedge --env PUNTERSEDGE_API_KEY=your-value --env PUNTERSEDGE_BASE_URL=your-value -- uvx puntersedge-mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"puntersedge": {
"command": "uvx",
"args": [
"puntersedge-mcp"
],
"env": {
"PUNTERSEDGE_API_KEY": "your-value",
"PUNTERSEDGE_BASE_URL": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"puntersedge": {
"command": "uvx",
"args": [
"puntersedge-mcp"
],
"env": {
"PUNTERSEDGE_API_KEY": "your-value",
"PUNTERSEDGE_BASE_URL": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"puntersedge": {
"type": "stdio",
"command": "uvx",
"args": [
"puntersedge-mcp"
],
"env": {
"PUNTERSEDGE_API_KEY": "your-value",
"PUNTERSEDGE_BASE_URL": "your-value"
}
}
}
}Values you fill in
PUNTERSEDGE_API_KEYsecret required envPuntersEdge API key. Free tier is 3,000 credits/month with no card required — get one at https://puntersedge.online/api. The two demo tools work without a key.PUNTERSEDGE_BASE_URLenvOverride the API base URL. Defaults to https://api.puntersedge.online — you should not normally set this.X-API-Keysecret required HTTP headerPuntersEdge API key (Authorization: Bearer also works). Free tier is 3,000 credits/month with no card required: https://puntersedge.online/api
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
At a glance
- Downloads per weeki
- 42/wk
- Connection
- Computer or cloud
- Transport
- stdio, streamable-http
- Latest versioni
- 0.6.0
- Categoryi
- Games, sports, food & learning
- Published to registryi
- Oct 27, 2026
- Code last changedi
- Oct 27, 2026
- Maker
- Propertyscout001
- Packages
pypi: puntersedge-mcp- Website
- puntersedge.online
- Registry status
- Active
Which apps can use it
Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.
Connect over the internet in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
Run on your computer in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Related guides
What it can do
Tool names and descriptions exactly as the server reported them on Nov 7, 2026. The maker wrote them, not us; we show them as plain text.
odds_boardThe next races to run with EVERY bookmaker's current win and place price for every runner, as a compact matrix: each race lists its bookmakers (with the age of each book's quote) and each runner carries price arrays in that order. The fastest way to see the whole live market. For
race_oddsOne upcoming race in full: every runner with every bookmaker's win, place and (where offered) top 2/3/4 price, each book's quote age, scratchings and race conditions. Give the venue plus race_number or race_id; with only a venue you get that venue's next race. The call is billed
race_marketsEvery bookmaker's prices for one race across win, place and top 2/3/4, plus exotic dividends once settled. Live prices before the jump, each book's closing price after it. Give race_id, or venue + meeting_date + race_number. Costs 2 credits. Plan: Plus and above.
race_cardUpcoming races without prices: race_id, venue, race number, start time, distance, track condition, status, runners and scratchings. The cheapest way to find race_ids for the other tools. Costs 1 credit. Every plan.
best_oddsThe best available win and place price for every runner in upcoming races and which bookmaker has it, after PuntersEdge's guards (books pricing under 100%, quotes read before a scratching and placeholder prices never win). Also how many books quote each runner, the best-vs-worst
odds_changesOnly the racing prices that moved since your last call, so an agent or pipeline can follow the whole market cheaply. First call: omit cursor (covers the last 60 seconds). Every reply has next_cursor; pass it back as cursor on the next call, within 30 minutes. Delivery is at-least
market_moversRunners whose price has moved across several bookmakers since they opened (steam and drift), with the consensus open and current price and how many books confirm the move. Costs 3 credits. Every plan.
price_historyEvery bookmaker's price path for each runner in one race: open, close, high and low, and optionally the time series. Give race_id, or venue + race_number + date. Costs 5 credits. Plan: Every plan for races in the last 24 hours; Standard and above for older races.
consensus_priceEach runner's consensus probability and fair price for one race, built by removing every bookmaker's margin and combining the books, with the books included and excluded and why. Costs 3 credits. Every plan.
race_intelligenceA one-race market read: consensus at each mark, how the market has moved, which books lead or lag, and the signals PuntersEdge derives from them. Costs 3 credits. Every plan.
market_summaryPer-runner market summary for past races: opening and closing consensus, the move between them and its signal class (strong_firm, firm, steady, drift, strong_drift). Costs 5 credits. Plan: Standard and above (last 90 days); Plus and above for the full archive.
race_resultsSettled results: placings with settled prices, starting prices where published, and dividends. Use date for a past day or hours_back for the latest. Costs 2 credits. Every plan.
us_toteTVG's live tote odds for US and Canadian races: per runner the morning line and the current win odds (odds-to-1 and decimal) with the WIN pool behind them. Pari-mutuel, so a pre-race price is an estimate of what the pool will pay; settled payoffs are on race_results with country
closing_linesEach bookmaker's closing price per runner from the archive, for model building, CLV and settlement checks. Closing-only rows by default (last quote within 5 minutes of the jump). Costs 5 credits. Plan: Standard and above (last 90 days); Plus and above for the full archive.
evaluate_clvGrade up to 200 bets against the closing line: for each bet, the closing price (that book's, or the market best/median), CLV percent and P&L line. Name each race by race_id or venue + meeting_date + race_number, and each runner by runner_number or runner_name. Costs 5 credits per
race_formRecent runs and form stats for every runner in one race. Give race_id, or venue + meeting_date + race_number. Costs 3 credits. Every plan.
horse_formA thoroughbred's recent starts and statistics, by name or the pe:/ra: reference other tools return. Costs 3 credits. Every plan.
horse_runsEvery run one thoroughbred has in PuntersEdge's own settled results, newest first: venue, date, distance, barrier, jockey, weight, finishing position, margin and starting price. Built from our results rather than Racing Australia, so it answers when horse_form cannot. Name the ho
greyhound_fieldEvery dog in one greyhound race with its recent runs and record, from PuntersEdge's own results. Australian races, and British and Irish ones from 12 October 2026. Give race_id, or venue + meeting_date + race_number. Costs 3 credits. Every plan.
greyhound_formOne dog's runs from PuntersEdge's own results, newest first: track, distance, box, grade, finishing position, time and margin. By name or the grv:/grsa: reference other tools return (those persist). Costs 3 credits. Every plan.
greyhound_statsOne dog's starts, wins and placings grouped the way you ask: by track, distance, box or grade, or a combination such as track and distance. Costs 3 credits. Every plan.
jockey_statsRacing Australia jockey premiership tables: wins, placings, prize money and strike rate for the current or previous season (1 August to 31 July), nationally or by state and scope. Give name to find one jockey across every table. Costs 2 credits. Every plan.
trainer_statsRacing Australia trainer premiership tables, the same shape as jockey_stats. Costs 2 credits. Every plan.
track_conditionsTrack rating, rail, weather and every logged change for a meeting day (defaults to today). Costs 1 credit. Every plan.
venuesEvery venue PuntersEdge carries: venue_id, display name, physical site, country and the codes raced there. Spelling variants of one track share a venue_id, so join on it rather than on the venue string. Costs 1 credit. Every plan.
acceptancesAccepted fields for upcoming Australian meetings: runners, barriers, jockeys, trainers and weights, before the markets open. Costs 2 credits. Every plan.
sports_listEvery sport and league with live odds, its sport_key and how many events and bookmakers it has. Costs 1 credit. Every plan.
sports_oddsEvery bookmaker's head-to-head, line and total prices for a sport's upcoming events. Costs 1 credit per market requested. Every plan.
sports_best_oddsThe best price for each outcome of a sport's upcoming events and which bookmaker has it. Costs 3 credits. Every plan.
sports_movementsHow a sport's prices have moved since a time (default the last 24 hours), per bookmaker and outcome. Costs 5 credits. Plan: Standard and above.
sports_resultsFinal scores from the league's own record for AFL, AFLW, NRL and NRLW, with event_id tying each result to the fixture you hold prices for (null when it could not be matched with certainty). Another sport is refused free of charge. Costs 1 credit. Every plan.
sports_closing_linesEach bookmaker's last head-to-head price, handicap line and total before the start of every match in a range (default the last 7 days, at most 92), with the consensus close. For CLV and model training. Costs 5 credits. Plan: Standard and above.
feed_healthLive health of every bookmaker feed: seconds since its last good poll, whether it is stale or degraded. For operations teams deciding whether to trust a price right now. Costs 1 credit. Every plan.
account_statusThis API key's plan, credits used and remaining this month, burn rate, projected run-out date, requests-per-minute limit and the endpoints using the most credits. Call it before a large job. Free. Every plan.
bulk_datasetsThe downloadable Parquet/CSV datasets (closing lines, price paths, results) and which days and months exist. Files are downloaded over REST with your key, never through MCP: GET https://api.puntersedge.online/v1/bulk/{dataset}/{period} (20 credits per day file, 100 per month file
racing_sampleA small live sample of the next races with a few bookmakers' win prices, to see the data before you connect a key. Free. Needs no API key.
Basic checksi
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 11, 2026
- ✓ Pass
Maker matches the repo
The registry name was verified with the GitHub account Propertyscout001, which owns the repo
- ✓ Pass
Still maintained
Code last changed 15 days ago
- … Not checked yet
Has a licence
We have not read this repo from GitHub yet
- ✓ Pass
Endpoint responds
Responded in 2067 ms (HTTP 200)
- – Not applicable
Sign-in with OAuth
No sign-in needed
- ✓ Pass
No hidden instructions in tool descriptions
Read 36 tool descriptions and found no hidden instructions to the AI
Discussion
Ask, share a tip or report that it does not work. Sorted by what people marked helpful.
No posts yet. Be the first to ask or share.
Posts here are written by users, not the PopNx team.
User reviews
No reviews yet
Compared with others in Games, sports, food & learningi
- More stars than 0% of the other 1447 servers in this category
- Published to the registry more recently than 63% of the other 1447 servers in this category
- Basic checks equal to or better than 100% of the other 1447 servers in this category
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
Common questions
Is Puntersedge safe?
It passed 4 of 4 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
What keys or codes does it need?
You need to fill in: PUNTERSEDGE_API_KEY, X-API-Key
Does it run on my computer or in the cloud?
Either way works: install it on your computer or connect to the cloud version.
Is it still maintained?
The GitHub repo last changed 15 days ago, and the latest version (0.6.0) reached the registry 15 days ago.
Which apps can use it?
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT Business and above.
What can I use instead?
In the same category: Honcho, ShipSwift, Pm Claude Skills
Alternatives
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
ShipSwift
40+ production-ready SwiftUI recipes for building full-stack iOS apps via MCP.
Pm Claude Skills
1310 professional Agent Skills + workflow recipes — searchable & fetchable over MCP.
README from the maker
Open the README
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Australian Racing and Sports Odds MCP Server
A Model Context Protocol server for Australian horse racing, greyhound, harness and sports odds. Point Claude Desktop, Claude Code, Cursor, Windsurf or any MCP client at a live Australian odds feed and ask it what is racing next, what every bookmaker is paying, which runners are firming, and who won.
Racing data MCP · sports odds MCP server · horse racing MCP server · Australian odds for Claude · sports data for Cursor.
You: What's the next race at Randwick and who's favourite?
→ racing_next_to_go(num_races=3, country="AU") ← Wiesners Maiden Plate R1 — 11 runners, 8 bookmakers, data 38s old Favourite: at $2.40 (sportsbet) / $2.55 (tab) / $2.35 (neds)
15 Australian bookmakers on racing (measured 19 Oct 2026; live count at https://puntersedge.online/coverage-report.json). AU thoroughbred, greyhound and harness; NZ thoroughbred and harness; British, Irish and South African racing on smaller panels. AFL, NRL, NBA, NFL, tennis, cricket and more on sports. Free tier: 3,000 credits a month, no card.
There are two PuntersEdge MCP servers. You probably want the Python one.
Being straight about this, because the difference is large.
| `puntersedge-mcp` on PyPI (Python) | This repo (TypeScript) | |
|---|---|---|
| Tools | 26 | 9 |
| Credit cost stated per tool | yes, all 26 | no |
| Works before you have an API key | yes — two keyless demo tools | no |
| Form, premierships, closing lines, track conditions, feed health | yes | no |
| Install | uvx puntersedge-mcp | npx -y github:Propertyscout001/puntersedge-mcp |
| Docs | https://puntersedge.online/developers/mcp-server | this file |
If you just want the odds inside your assistant, use the Python server. It is the fuller server, it is the one the documentation describes, and it will show you live prices before you sign up for anything.
This TypeScript server is a smaller, dependency-light implementation of the five core racing tools and four sports tools. It is real and it works — the install below is verified — but it is a subset.
Python server config, if you came here for that
{
"mcpServers": { "puntersedge": { "command": "uvx", "args": ["puntersedge-mcp"], "env": { "PUNTERSEDGE_API_KEY": "your_key_here" } } } }
Full instructions: https://puntersedge.online/developers/mcp-server?utm_source=github&utm_medium=readme
Install this server
Not published to npm. There is no npm package called puntersedge-mcp — install straight from this repo, which builds itself on install:
npx -y github:Propertyscout001/puntersedge-mcp
First run clones the repo and compiles it with tsc, so it takes a while and needs git plus a working Node toolchain. Node ≥18.
Get a free API key at https://puntersedge.online/api?utm_source=github&utm_medium=readme — 3,000 credits a month, no credit card.
Claude Desktop
Edit claude_desktop_config.json, then fully quit and reopen Claude Desktop:
| OS | Path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
{
"mcpServers": { "puntersedge": { "command": "npx", "args": ["-y", "github:Propertyscout001/puntersedge-mcp"], "env": { "PUNTERSEDGE_API_KEY": "your_key_here" } } } }
Claude Code
One command, from the project directory:
claude mcp add puntersedge \
-e PUNTERSEDGE_API_KEY=your_key_here \ -- npx -y github:Propertyscout001/puntersedge-mcp
Add -s user to make it available in every project instead of just this one. Claude Code writes project servers to .mcp.json in the project root, which you can commit and edit by hand — keep the key out of it and use an environment variable if you do.
Cursor
.cursor/mcp.json for one project, ~/.cursor/mcp.json for all of them:
{
"mcpServers": { "puntersedge": { "command": "npx", "args": ["-y", "github:Propertyscout001/puntersedge-mcp"], "env": { "PUNTERSEDGE_API_KEY": "your_key_here" } } } }
Windsurf
~/.codeium/windsurf/mcp_config.json — same mcpServers shape as Cursor.
VS Code / GitHub Copilot
.vscode/mcp.json in the workspace. VS Code uses a servers key rather than mcpServers:
{
"servers": { "puntersedge": { "type": "stdio", "command": "npx", "args": ["-y", "github:Propertyscout001/puntersedge-mcp"], "env": { "PUNTERSEDGE_API_KEY": "your_key_here" } } } }
Anything else
Any host that accepts a stdio server takes the same three facts: a command, its arguments, and an env block carrying PUNTERSEDGE_API_KEY. Keep the key in the environment, not in a prompt — the server reads it once at start-up and never echoes it in a tool result.
Tools
Nine tools, all read-only. Costs are in API credits and are what the API bills for the underlying endpoint — they are not this server's invention. Figures below were read from https://api.puntersedge.online/openapi.json on 2026-09-15.
Racing
| Tool | What it returns | Cost |
|---|---|---|
racing_next_to_go | The next AU races about to jump, with every bookmaker's price per runner. The primary tool. | 2 credits |
racing_best_odds | Just the best available price per runner, and which book is offering it. | 3 credits |
racing_events | The upcoming schedule — venues, race numbers, jump times. No prices, so cheaper. | 1 credit |
racing_results | Settled results and dividends for races already run. | 2 credits |
racing_movers | Runners firming or drifting sharply across the market. min_books guards against reading one book's reprice as a market move. | 3 credits |
Sports
| Tool | What it returns | Cost |
|---|---|---|
list_sports | Every sport and sport_key currently covered. Call this first if unsure. | 1 credit |
get_sports_odds | Odds for one sport across the bookmakers covering it. | 1 credit per market requested — h2h is 1, h2h,spreads,totals is 3 |
get_best_odds | Best price per selection for one sport. | 3 credits |
Account
| Tool | What it returns | Cost |
|---|---|---|
account_usage | Credits used and remaining this month. | free |
Every response also carries the live X-Credits-* headers through to the tool result, so an assistant can read its remaining balance without spending a call to find out. A 402 means the monthly allowance is spent — a hard stop, no overage billing — and the tool result says so rather than failing quietly.
There is no `horse-racing` sport key. Racing lives under the racing_* tools. Passing sport_key="horse-racing" to a sports tool is an error.
What an assistant can and cannot do with this
Worth being explicit, because "betting odds" and "AI agent" in one sentence invites the wrong assumption.
It can:
- read a live odds feed — current per-bookmaker prices, the upcoming schedule, settled results, and which runners are firming or drifting
- tell you how fresh each number is, per price, not per page
- state what each call costs in credits before it makes it, and report the balance after
It cannot:
- place a bet. There is no tool here that places, stakes, cancels or settles anything. Every tool is an HTTP GET against a read-only endpoint.
- hold or use bookmaker credentials. This server has no bookmaker account, no login, no session with any bookmaker. It reads published prices. The only secret it touches is your PuntersEdge API key, read from the environment and never written to a tool result.
- change your PuntersEdge account. Key rotation, billing and webhook registration are all deliberately left out, so a chat turn cannot rotate your credentials, change what you are billed, or register a URL that then receives your data. Those endpoints exist; reach them from application code or the dashboard, on purpose.
- predict a result. Prices are what bookmakers published. Nothing here forecasts outcomes, rates a runner, or tells you what to back.
It will sometimes be wrong about the market, and the data says so. A stalled scraper does not error — it keeps serving its last value, which looks exactly like a live price. Every quote carries its own age_seconds and a stale flag for that reason. A large apparent edge on a market only one bookmaker is quoting is a data artefact, not an opportunity; check how many books stand behind a price before treating a gap as real.
What comes back
Racing responses carry the full market per runner:
{
"race_name": "Wiesners Maiden Plate", "race_number": 1, "venue": "...", "category": "horse", "country": "AU", "distance_m": 1200, "track_condition": "...", "weather": "...", "places_paid": 3, "data_age_seconds": 38, "stale": false, "stale_bookmakers": [], "scratchings": [], "runners": [{ "name": "...", "number": 1, "barrier": 4, "jockey": "...", "trainer": "...", "weight": 58.0, "form": "11521", "bookmakers": [ { "key": "tabtouch", "win_price": 126.0, "place_price": 12.0, "tote_win": {"PROV": 60.6}, "last_update": "2026-08-17T02:55:3...", "source_url": "https://www.tabtouch.com.au/racing/..." } ] }] }
Every response tells you its own age. data_age_seconds is race-level, each bookmaker entry carries its own last_update, and stale_bookmakers names the specific legs that have gone quiet rather than condemning the whole race. That matters when an assistant is about to state a price as fact — it can say how fresh the number is instead of implying it is live to the second.
Coverage, stated honestly
Racing: 15 Australian bookmakers (measured 19 Oct 2026) — BetRight, Sportsbet, Betr, TAB, Ladbrokes, Neds, Unibet, PointsBet, NextBet, TABtouch, Palmerbet, BetDeluxe, bet365, BetGold and BoostBet, which are 13 independent price sources (BetGold/BoostBet and Ladbrokes/Neds close at the same price on 85%+ of runners). The live count and per-book freshness are published at https://puntersedge.online/coverage-report?utm_source=github&utm_medium=readme.
Betfair and Pinnacle are not in this feed. The Betfair Exchange is ingested but its prices are withheld from customer responses pending a Betfair data licence, so it is not counted above and you will never see a Betfair price through this server. If you need exchange prices, this is not the feed for you.
Bookmaker keys in the API are not always the brand: NextBet is returned as playup, its name before rebranding. Filter on the key, not the display name.
Near the jump, coverage is broad and fairly even. In an earlier measurement, before bet365 joined the panel, over 13 days of captured snapshots — 3,339 Australian races, each within 30 minutes of jumping — every one of the fourteen sources quoted between 75% and 97% of them: TABtouch 97%, PointsBet 96%, then Sportsbet, Neds, Palmerbet, Ladbrokes, BetRight, Betr and TAB all clustered at 80–82%, Unibet 79% and NextBet 75%.
Books publish markets at different times, so a race several hours out often carries only two or three prices where more appear closer to the jump. Every response names the books that actually quoted, so you can read the real depth per race rather than trusting an average.
Sports: fewer again. On 19 Oct 2026 a quoted fixture averaged between 1 and 5 bookmakers depending on the sport, and on some competitions it is usually 1; the live per-sport figures are at https://puntersedge.online/api/coverage. That is a connector-coverage limit, not an outage. Racing is where this feed is strongest, and the tools say so rather than implying a uniform market.
Pass country=AU for racing (GB,IE for Britain and Ireland, ZA for South Africa — the code