GolfData
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Golf equipment catalog, live retailer prices and daily price history. Keyless search, free key.
| Author | co.golfdata |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 3170 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"GolfData": {
"url": "https://golfdata.co/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (8)
get_buy_linkTracked 27aDay buy link for one marketplace source (source_kind and source_id from get_verified_offer(s), the offer's source ids). Returns a members.27aday.com/go URL carrying a one time ticket issued to your API key; hand it to the shopper unchanged. The link opens the retailer; no purchase or account action happens here. Free with a key. May return 503 when disabled.
Parameters:
source_kind(required) — stringsource_id(required) — string — Marketplace source UUID from get_verified_offer(s)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_verified_offerRead-only golf-offer.v1 using Chip's admission, exact-variant and live redirect gate. Requires a known 27aDay marketplace deal/product source UUID; search_products returns canonical IDs, not these source IDs. Explicit variant_id null means no selectable variant. Returns verified_offer, check_price or unavailable; unknown currency/ratings stay unknown. No account actions, click attribution or purchase is performed. Deployment may be disabled (503). Every price carries observed_at and expires_at; do not quote after expires_at.
Parameters:
source_kind(required) — stringsource_id(required) — string — Known marketplace source UUID, not canonical product UUIDcanonical_product_id(required) — string — canonical product uuid, from search_productsvariant_id(required) — ['string', 'null'] — Exact expected variant UUID or explicit null for nonvariant source
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_verified_offersDiscover admitted marketplace sources for a canonical product ID from search_products, then verify each returned offer through Chip's exact-source commerce gate. If variant_id is omitted or null on a variant-bearing product, returns selection_metadata_not_offer options; unsourced specs stay unknown. Supply the exact variant UUID to get offers. Two sources checked per page within a bounded 16-source live window, use next_offset; this is not exhaustive catalog coverage or a stable snapshot. Results retain golf-offer.v1, including check_price and unknown currency. No member actions or click attribution. Deployment may be disabled (503). Every price carries observed_at and expires_at; do not quote after expires_at.
Parameters:
canonical_product_id(required) — string — Canonical product UUID from search_productsoffset— integer — Use response next_offset within the bounded live window; default 0variant_id— ['string', 'null'] — Exact variant UUID; null or omitted requests nonvariant offers or variant selection metadata
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
search_productsSearch the canonical golf equipment catalog by brand, category, or free text. Call this first to resolve a product_id for the other tools. Categories: drivers, iron-sets, wedges, putters, fairway-woods, hybrids, balls, bags, shoes, gloves, apparel, headcovers, complete-sets, accessories, tech, rangefinders, grips.
Parameters:
q— string — free text matched against the product namebrand— string — brand name, case insensitivelimit— integer — 1 to 100, default 25category— string — one of the categories listed above
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_productOne product plus its enrichment_sources provenance rows. Every enriched field carries the source URL, confidence and checked_at it came from. Check enrichment_status before relying on specs: 'enriched' means model, release_year, msrp, description and specs are all sourced; 'partial' means some are missing.
Parameters:
product_id(required) — string — canonical product uuid, from search_products
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_current_pricesLatest stored advertised prices for one canonical product, with stock observations and stored affiliate links. These are not exact-variant verified buyable offers; use get_verified_offer when a marketplace source ID is known. Every price carries observed_at and expires_at; do not quote after expires_at.
Parameters:
product_id(required) — string — canonical product uuid, from search_products
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_price_historyDated price observations per retailer, where available. Coverage and refresh times vary by source. These rows are asking prices, not proof that a discount or stock state is current. Every price carries observed_at and expires_at; do not quote after expires_at.
Parameters:
product_id(required) — string — canonical product uuid, from search_productsdays— integer — 1 to 365, default 30
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
compare_pricesDated advertised retailer observations for one product plus min, max and median, and recorded 30 and 90 day lows. Coverage varies; these are not exact-variant verified purchase quotes. Every price carries observed_at and expires_at; do not quote after expires_at.
Parameters:
product_id(required) — string — canonical product uuid, from search_products
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.