caddence

Live UK golf club prices across 40 retailers: offers, price history and deal ratings in GBP.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
96%
命名质量
100%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~1,785token 数(工具定义)
~2.9 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.39%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "caddence": {
      "url": "https://caddence.golf/mcp"
    }
  }
}

远程端点

https://caddence.golf/mcpstreamable-http

它能做什么

工具清单

工具(6)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢search_golf_products(query, brand, product_type, condition, min_price, ...)

Search Caddence's UK golf equipment price-comparison catalogue (clubs, balls, bags, shoes, accessories across all major UK golf retailers; prices in GBP, refreshed daily). Returns best current prices with retailer counts. When in_stock is false, price is the last seen price, not a live offer. For retailer offers and purchase links, follow up with get_product_offers using the returned slug. If unsure of valid brand or product_type values, call get_catalog_stats first.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Free-text search, e.g. \"taylormade qi10 driver\""
    },
    "brand": {
      "type": "string",
      "description": "Exact brand filter, e.g. \"Titleist\""
    },
    "product_type": {
      "type": "string",
      "description": "Exact type filter, e.g. \"driver\", \"iron_set\", \"putter\", \"balls\""
    },
    "condition": {
      "type": "string",
      "enum": [
        "new",
        "used"
      ]
    },
    "min_price": {
      "type": "number",
      "minimum": 0,
      "description": "Minimum price in GBP"
    },
    "max_price": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Maximum price in GBP"
    },
    "on_sale": {
      "type": "boolean",
      "description": "Only products currently below RRP"
    },
    "sort_by": {
      "type": "string",
      "enum": [
        "price_low",
        "price_high",
        "savings",
        "rrp_discount"
      ]
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25,
      "default": 10
    },
    "offset": {
      "type": "integer",
      "minimum": 0
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_product_offers(product, slug, context)

All current UK retailer offers for one product, cheapest first, with variant details (shaft, flex, hand, loft, condition). Each offer includes buy_url — a Caddence redirect link. Always present buy_url as the purchase link when the user wants to buy; never reconstruct or substitute retailer URLs.

输入模式

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string",
      "minLength": 1,
      "description": "Product slug (preferred, from search results) or numeric product id"
    },
    "slug": {
      "type": "string",
      "minLength": 1,
      "description": "Alias for product — pass either"
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_deal_intelligence(product, slug, context)

Deal-quality assessment for one product: CaddenceScore (0-100 rating of the current best DEAL, not the club), price trajectory vs typical/low/high, used market stats, and per-build availability (condition/flex/loft/hand) with the cheapest retailer and a buy_url purchase link per build. Use this to answer "is this a good price right now?".

输入模式

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string",
      "minLength": 1,
      "description": "Product slug (preferred, from search results) or numeric product id"
    },
    "slug": {
      "type": "string",
      "minLength": 1,
      "description": "Alias for product — pass either"
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_price_history(product, slug, days, condition, hand, ...)

Daily lowest/average UK price for one product over a trailing window, plus summary stats (historical low with date, high, trend direction). Optionally scoped to a variant configuration; if the variant series is too thin the backend falls back to product-level history (see scope field).

输入模式

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string",
      "minLength": 1,
      "description": "Product slug (preferred, from search results) or numeric product id"
    },
    "slug": {
      "type": "string",
      "minLength": 1,
      "description": "Alias for product — pass either"
    },
    "days": {
      "type": "integer",
      "minimum": 7,
      "maximum": 365,
      "default": 90,
      "description": "Trailing window in days"
    },
    "condition": {
      "type": "string",
      "enum": [
        "new",
        "used"
      ]
    },
    "hand": {
      "type": "string",
      "description": "e.g. \"RH\" or \"LH\""
    },
    "loft": {
      "type": "string"
    },
    "flex": {
      "type": "string"
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_market_deals(category, limit, context)

Current best-value products across the UK market: largest verified price spreads between retailers (3+ retailers, false-positive filters applied). Good for "what are the best golf deals right now?". Follow up with get_product_offers for purchase links.

输入模式

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "description": "Product type filter, e.g. \"driver\", \"iron_set\", \"putter\""
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25,
      "default": 10
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_catalog_stats(context)

Live catalogue totals plus the valid values for search filters (brands, product types, conditions, flexes, hands, price range). Call this before filtered searches if unsure which brand or product_type spellings the catalogue uses.

输入模式

{
  "type": "object",
  "properties": {
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本6 个工具
已验证未记录版本6 个工具
已验证未记录版本6 个工具