stierproducts tier lists

S-to-F tier lists for 208 product categories. Every placement cited, with barcodes.

Should I use this

Quality & Safety

A
Description quality
93%
Schema completeness
95%
Naming quality
93%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,760Tokens (tool definitions)
~2.5 KBTypical response size
Moderate attention impact (1.38% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "tier-lists": {
      "url": "https://mcp.stierproducts.com/mcp"
    }
  }
}

Remote endpoints

https://mcp.stierproducts.com/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_categories(query, limit)

List the product categories that have a published tier list, newest research first. Call this first when you do not already know the exact category slug: slugs cannot be guessed reliably and every other tool takes one.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Optional filter matched against the category name and description."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 208,
      "default": 50
    }
  }
}

Output Schema

{
  "type": "object",
  "properties": {
    "source_url": {
      "type": "string"
    },
    "license": {
      "type": "object"
    },
    "attribution": {
      "type": "string"
    },
    "monetization": {
      "type": "object"
    },
    "count": {
      "type": "integer"
    },
    "categories": {
      "type": "array"
    }
  },
  "required": [
    "source_url",
    "license",
    "attribution",
    "monetization",
    "count",
    "categories"
  ]
}
🟢search_products(query, limit)

Find ranked products by name or brand across every board. Returns the slug, category and tier for each match, which is what get_product and get_tier_list need next.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Product or brand name, e.g. \"Bambu Lab X2D\"."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20
    }
  },
  "required": [
    "query"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "source_url": {
      "type": "string"
    },
    "license": {
      "type": "object"
    },
    "attribution": {
      "type": "string"
    },
    "monetization": {
      "type": "object"
    },
    "query": {
      "type": "string"
    },
    "matches": {
      "type": "integer"
    },
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "tier": {
            "type": "string"
          },
          "rank": {
            "type": "integer"
          },
          "lp": {
            "type": "number"
          }
        },
        "required": [
          "slug",
          "name",
          "tier",
          "rank",
          "lp"
        ]
      }
    }
  },
  "required": [
    "source_url",
    "license",
    "attribution",
    "monetization",
    "query",
    "matches",
    "products"
  ]
}
🟢get_tier_list(category, tier)

The full S-to-F tier list for one category: every ranked product with its tier, rank, LP, verdict, pros, cons, citation counts, GTIN barcodes and, where the maker published one, the announcement date. This is the primary tool and one call answers a "what is the best X" question completely. Call get_product for the quotes behind a placement.

Input Schema

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "description": "Category slug, e.g. \"3d-printers\"."
    },
    "tier": {
      "type": "string",
      "enum": [
        "S",
        "A",
        "B",
        "C",
        "D",
        "F"
      ],
      "description": "Optional. Return only this tier."
    }
  },
  "required": [
    "category"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "source_url": {
      "type": "string"
    },
    "license": {
      "type": "object"
    },
    "attribution": {
      "type": "string"
    },
    "monetization": {
      "type": "object"
    },
    "category": {
      "type": "object"
    },
    "summary": {
      "type": "string"
    },
    "products_ranked": {
      "type": "integer"
    },
    "method": {
      "type": "string"
    },
    "tier_meanings": {
      "type": "object"
    },
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "tier": {
            "type": "string"
          },
          "rank": {
            "type": "integer"
          },
          "lp": {
            "type": "number"
          }
        },
        "required": [
          "slug",
          "name",
          "tier",
          "rank",
          "lp"
        ]
      }
    }
  },
  "required": [
    "source_url",
    "license",
    "attribution",
    "monetization",
    "category",
    "summary",
    "products_ranked",
    "method",
    "tier_meanings",
    "products"
  ]
}
🟢get_product(slug, citation_limit, citation_offset)

Everything held on one product: its placement, verdict, pros and cons, GTIN barcodes, the announcement date where the maker published one, and a breakdown of how the cited sources read (how many were glowing, positive, neutral or negative, and whether they were outlets, named authors, video channels or forum owners). Then every citation in full, with a verbatim quote, who said it, and whether the link was fetched and confirmed. Use this when a claim needs backing up.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Product slug, e.g. \"bambu-lab-x2d\"."
    },
    "citation_limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "default": 10,
      "description": "How many citations to return, most notable first. The sentiment and speaker breakdowns always count every source regardless of this."
    },
    "citation_offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Skip this many citations. Use it to page through the rest."
    }
  },
  "required": [
    "slug"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "source_url": {
      "type": "string"
    },
    "license": {
      "type": "object"
    },
    "attribution": {
      "type": "string"
    },
    "monetization": {
      "type": "object"
    },
    "product": {
      "type": "object",
      "properties": {
        "slug": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "tier": {
          "type": "string"
        },
        "rank": {
          "type": "integer"
        },
        "lp": {
          "type": "number"
        }
      },
      "required": [
        "slug",
        "name",
        "tier",
        "rank",
        "lp"
      ]
    },
    "category": {
      "type": "object"
    },
    "sentiment": {
      "type": "object"
    },
    "speaker_mix": {
      "type": "object"
    },
    "citations_total": {
      "type": "integer"
    },
    "citations_shown": {
      "type": "integer"
    },
    "citations_offset": {
      "type": "integer"
    },
    "citations_remaining": {
      "type": "integer"
    },
    "citations_confirmed_live": {
      "type": "integer"
    },
    "citations": {
      "type": "array"
    }
  },
  "required": [
    "source_url",
    "license",
    "attribution",
    "monetization",
    "product",
    "category",
    "citations_total",
    "citations_shown",
    "citations_offset",
    "citations_remaining",
    "citations_confirmed_live",
    "citations"
  ]
}
🟢compare_products(slugs)

Compare two to five products side by side. They must share a category: LP is points on one category ladder and comparing across boards is meaningless, so a mixed request is refused rather than answered misleadingly.

Input Schema

{
  "type": "object",
  "properties": {
    "slugs": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 2,
      "maxItems": 5,
      "description": "Product slugs to compare."
    }
  },
  "required": [
    "slugs"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "source_url": {
      "type": "string"
    },
    "license": {
      "type": "object"
    },
    "attribution": {
      "type": "string"
    },
    "monetization": {
      "type": "object"
    },
    "category": {
      "type": "object"
    },
    "note": {
      "type": "string"
    },
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "tier": {
            "type": "string"
          },
          "rank": {
            "type": "integer"
          },
          "lp": {
            "type": "number"
          }
        },
        "required": [
          "slug",
          "name",
          "tier",
          "rank",
          "lp"
        ]
      }
    }
  },
  "required": [
    "source_url",
    "license",
    "attribution",
    "monetization",
    "category",
    "note",
    "products"
  ]
}
🟢what_to_avoid(category)

The products the research placed in the bottom tiers, and the ones it deliberately entered as traps buyers cross-shop but should not buy. Use it to answer "what should I not buy" and to check whether a product a user is considering was flagged.

Input Schema

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "description": "Category slug, e.g. \"3d-printers\"."
    }
  },
  "required": [
    "category"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "source_url": {
      "type": "string"
    },
    "license": {
      "type": "object"
    },
    "attribution": {
      "type": "string"
    },
    "monetization": {
      "type": "object"
    },
    "category": {
      "type": "object"
    },
    "bottom_tier_count": {
      "type": "integer"
    },
    "flagged_count": {
      "type": "integer"
    },
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "tier": {
            "type": "string"
          },
          "rank": {
            "type": "integer"
          },
          "lp": {
            "type": "number"
          }
        },
        "required": [
          "slug",
          "name",
          "tier",
          "rank",
          "lp"
        ]
      }
    }
  },
  "required": [
    "source_url",
    "license",
    "attribution",
    "monetization",
    "category",
    "bottom_tier_count",
    "flagged_count",
    "products"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools