Skip to main content
Glama

Find Hot Buyers

find_hot_buyers
Read-only

Company list hiring filter: takes 2 to 25 domains and marks which are hiring hardest (hot). Step 1 is free and returns a quote_id. Step 2: send that quote_id alone and pay $0.25 per hot company (at most $1.00) for each full profile with its intent_score. No hot company, no charge. Use when filtering a prospect list by hiring activity. 5 free scans/day, shared with batch.

Input Schema

NameRequiredDescriptionDefault
contextNoOptional. A few words on why you are calling this tool. Recorded without your identity to improve the tools; leave out personal data.
domainsNoPublic company domains without a URL scheme, path or port.
quote_idNoquote_id from step 1. Send it alone to pay and receive the results.
min_intent_scoreNoMinimum hiring intent score (0–100) for a company to be included in the paid hot-company quote.

Output Schema

NameRequiredDescriptionDefault
codeNo
coldNohot-buyers: domains below the threshold, free.
nextNo
statusNoquote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.
resultsNoPaid rows, after step 2.
sandboxNo
quote_idNo
statusesNoStatus of every domain, free.
price_usdNo
expires_atNo
billable_countNo
price_micro_usdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedInput schema / description
      Added value: +"Create a quote with domains (2–25) and optional min_intent_score, OR redeem with quote_id and no scan fields. Never mix quote_id with domains or min_intent_score."
    • removedInput schema / oneOf
      Removed value: -[
      -  {
      -    "not": {
      -      "required": [
      -        "quote_id"
      -      ]
      -    },
      -    "required": [
      -      "domains"
      -    ]
      -  },
      -  {
      -    "not": {
      -      "anyOf": [
      -        {
      -          "required": [
      -            "domains"
      -          ]
      -        },
      -        {
      -          "required": [
      -            "min_intent_score"
      -          ]
      -        }
      -      ]
      -    },
      -    "required": [
      -      "quote_id"
      -    ]
      -  }
      -]
    • removedOutput schema / anyOf
      Removed value: -[
      -  {
      -    "properties": {
      -      "billable_count": {
      -        "type": "integer"
      -      },
      -      "cold": {
      -        "description": "hot-buyers: domains below the threshold, free.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "expires_at": {
      -        "format": "date-time",
      -        "type": "string"
      -      },
      -      "next": {
      -        "type": "string"
      -      },
      -      "price_micro_usd": {
      -        "type": "integer"
      -      },
      -      "price_usd": {
      -        "type": "number"
      -      },
      -      "quote_id": {
      -        "type": "string"
      -      },
      -      "results": {
      -        "description": "Paid rows, after step 2.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "sandbox": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "demo_domain": {
      -            "const": true,
      -            "type": "boolean"
      -          },
      -          "note": {
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "demo_domain",
      -          "note"
      -        ],
      -        "type": "object"
      -      },
      -      "status": {
      -        "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.",
      -        "enum": [
      -          "quote",
      -          "nothing_billable",
      -          "ok"
      -        ],
      -        "type": "string"
      -      },
      -      "statuses": {
      -        "description": "Status of every domain, free.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "status"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": true,
      -    "properties": {
      -      "code": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "status": {
      -        "maximum": 599,
      -        "minimum": 400,
      -        "type": "integer"
      -      }
      -    },
      -    "required": [
      -      "status",
      -      "code"
      -    ],
      -    "type": "object"
      -  }
      -]
    • addedOutput schema / description
      Added value: +"Fields only; full schema in GET /v1/catalog."
    • addedOutput schema / properties
      Added value: +{
      +  "billable_count": {},
      +  "code": {},
      +  "cold": {
      +    "description": "hot-buyers: domains below the threshold, free."
      +  },
      +  "expires_at": {},
      +  "next": {},
      +  "price_micro_usd": {},
      +  "price_usd": {},
      +  "quote_id": {},
      +  "results": {
      +    "description": "Paid rows, after step 2."
      +  },
      +  "sandbox": {},
      +  "status": {
      +    "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results."
      +  },
      +  "statuses": {
      +    "description": "Status of every domain, free."
      +  }
      +}
  2. Changed5 schema fields changed
    • removedInput schema / description
      Removed value: -"Create a quote with domains (2–25) and optional min_intent_score, OR redeem with quote_id and no scan fields. Never mix quote_id with domains or min_intent_score."
    • addedInput schema / oneOf
      Added value: +[
      +  {
      +    "not": {
      +      "required": [
      +        "quote_id"
      +      ]
      +    },
      +    "required": [
      +      "domains"
      +    ]
      +  },
      +  {
      +    "not": {
      +      "anyOf": [
      +        {
      +          "required": [
      +            "domains"
      +          ]
      +        },
      +        {
      +          "required": [
      +            "min_intent_score"
      +          ]
      +        }
      +      ]
      +    },
      +    "required": [
      +      "quote_id"
      +    ]
      +  }
      +]
    • addedOutput schema / anyOf
      Added value: +[
      +  {
      +    "properties": {
      +      "billable_count": {
      +        "type": "integer"
      +      },
      +      "cold": {
      +        "description": "hot-buyers: domains below the threshold, free.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "expires_at": {
      +        "format": "date-time",
      +        "type": "string"
      +      },
      +      "next": {
      +        "type": "string"
      +      },
      +      "price_micro_usd": {
      +        "type": "integer"
      +      },
      +      "price_usd": {
      +        "type": "number"
      +      },
      +      "quote_id": {
      +        "type": "string"
      +      },
      +      "results": {
      +        "description": "Paid rows, after step 2.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "sandbox": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "demo_domain": {
      +            "const": true,
      +            "type": "boolean"
      +          },
      +          "note": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "demo_domain",
      +          "note"
      +        ],
      +        "type": "object"
      +      },
      +      "status": {
      +        "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.",
      +        "enum": [
      +          "quote",
      +          "nothing_billable",
      +          "ok"
      +        ],
      +        "type": "string"
      +      },
      +      "statuses": {
      +        "description": "Status of every domain, free.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "status"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": true,
      +    "properties": {
      +      "code": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "status": {
      +        "maximum": 599,
      +        "minimum": 400,
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "status",
      +      "code"
      +    ],
      +    "type": "object"
      +  }
      +]
    • removedOutput schema / description
      Removed value: -"Fields only; full schema in GET /v1/catalog."
    • removedOutput schema / properties
      Removed value: -{
      -  "billable_count": {},
      -  "code": {},
      -  "cold": {
      -    "description": "hot-buyers: domains below the threshold, free."
      -  },
      -  "expires_at": {},
      -  "next": {},
      -  "price_micro_usd": {},
      -  "price_usd": {},
      -  "quote_id": {},
      -  "results": {
      -    "description": "Paid rows, after step 2."
      -  },
      -  "sandbox": {},
      -  "status": {
      -    "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results."
      -  },
      -  "statuses": {
      -    "description": "Status of every domain, free."
      -  }
      -}
  3. Changed3 schema fields changed
    • removedOutput schema / anyOf
      Removed value: -[
      -  {
      -    "properties": {
      -      "billable_count": {
      -        "type": "integer"
      -      },
      -      "cold": {
      -        "description": "hot-buyers: domains below the threshold, free.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "expires_at": {
      -        "format": "date-time",
      -        "type": "string"
      -      },
      -      "next": {
      -        "type": "string"
      -      },
      -      "price_micro_usd": {
      -        "type": "integer"
      -      },
      -      "price_usd": {
      -        "type": "number"
      -      },
      -      "quote_id": {
      -        "type": "string"
      -      },
      -      "results": {
      -        "description": "Paid rows, after step 2.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "sandbox": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "demo_domain": {
      -            "const": true,
      -            "type": "boolean"
      -          },
      -          "note": {
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "demo_domain",
      -          "note"
      -        ],
      -        "type": "object"
      -      },
      -      "status": {
      -        "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.",
      -        "enum": [
      -          "quote",
      -          "nothing_billable",
      -          "ok"
      -        ],
      -        "type": "string"
      -      },
      -      "statuses": {
      -        "description": "Status of every domain, free.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "status"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": true,
      -    "properties": {
      -      "code": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "status": {
      -        "maximum": 599,
      -        "minimum": 400,
      -        "type": "integer"
      -      }
      -    },
      -    "required": [
      -      "status",
      -      "code"
      -    ],
      -    "type": "object"
      -  }
      -]
    • addedOutput schema / description
      Added value: +"Fields only; full schema in GET /v1/catalog."
    • addedOutput schema / properties
      Added value: +{
      +  "billable_count": {},
      +  "code": {},
      +  "cold": {
      +    "description": "hot-buyers: domains below the threshold, free."
      +  },
      +  "expires_at": {},
      +  "next": {},
      +  "price_micro_usd": {},
      +  "price_usd": {},
      +  "quote_id": {},
      +  "results": {
      +    "description": "Paid rows, after step 2."
      +  },
      +  "sandbox": {},
      +  "status": {
      +    "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results."
      +  },
      +  "statuses": {
      +    "description": "Status of every domain, free."
      +  }
      +}
  4. Changed2 schema fields changed
    • addedInput schema / description
      Added value: +"Create a quote with domains (2–25) and optional min_intent_score, OR redeem with quote_id and no scan fields. Never mix quote_id with domains or min_intent_score."
    • removedInput schema / oneOf
      Removed value: -[
      -  {
      -    "not": {
      -      "required": [
      -        "quote_id"
      -      ]
      -    },
      -    "required": [
      -      "domains"
      -    ]
      -  },
      -  {
      -    "not": {
      -      "anyOf": [
      -        {
      -          "required": [
      -            "domains"
      -          ]
      -        },
      -        {
      -          "required": [
      -            "min_intent_score"
      -          ]
      -        }
      -      ]
      -    },
      -    "required": [
      -      "quote_id"
      -    ]
      -  }
      -]
  5. Changed4 schema fields changed
    • removedInput schema / anyOf
      Removed value: -[
      -  {
      -    "required": [
      -      "domains"
      -    ]
      -  },
      -  {
      -    "required": [
      -      "quote_id"
      -    ]
      -  }
      -]
    • addedInput schema / oneOf
      Added value: +[
      +  {
      +    "not": {
      +      "required": [
      +        "quote_id"
      +      ]
      +    },
      +    "required": [
      +      "domains"
      +    ]
      +  },
      +  {
      +    "not": {
      +      "anyOf": [
      +        {
      +          "required": [
      +            "domains"
      +          ]
      +        },
      +        {
      +          "required": [
      +            "min_intent_score"
      +          ]
      +        }
      +      ]
      +    },
      +    "required": [
      +      "quote_id"
      +    ]
      +  }
      +]
    • addedInput schema / properties / quote_id / pattern
      Added value: +"^q_[a-f0-9]{32}$"
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "billable_count": {
      -        "type": "integer"
      -      },
      -      "cold": {
      -        "description": "hot-buyers: domains below the threshold, free.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "expires_at": {
      -        "format": "date-time",
      -        "type": "string"
      -      },
      -      "next": {
      -        "type": "string"
      -      },
      -      "price_micro_usd": {
      -        "type": "integer"
      -      },
      -      "price_usd": {
      -        "type": "number"
      -      },
      -      "quote_id": {
      -        "type": "string"
      -      },
      -      "results": {
      -        "description": "Paid rows, after step 2.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "status": {
      -        "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.",
      -        "enum": [
      -          "quote",
      -          "nothing_billable",
      -          "ok"
      -        ],
      -        "type": "string"
      -      },
      -      "statuses": {
      -        "description": "Status of every domain, free.",
      -        "items": {
      -          "type": "object"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "status"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": true,
      -    "properties": {
      -      "code": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "status": {
      -        "maximum": 599,
      -        "minimum": 400,
      -        "type": "integer"
      -      }
      -    },
      -    "required": [
      -      "status",
      -      "code"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "billable_count": {
      +        "type": "integer"
      +      },
      +      "cold": {
      +        "description": "hot-buyers: domains below the threshold, free.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "expires_at": {
      +        "format": "date-time",
      +        "type": "string"
      +      },
      +      "next": {
      +        "type": "string"
      +      },
      +      "price_micro_usd": {
      +        "type": "integer"
      +      },
      +      "price_usd": {
      +        "type": "number"
      +      },
      +      "quote_id": {
      +        "type": "string"
      +      },
      +      "results": {
      +        "description": "Paid rows, after step 2.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "sandbox": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "demo_domain": {
      +            "const": true,
      +            "type": "boolean"
      +          },
      +          "note": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "demo_domain",
      +          "note"
      +        ],
      +        "type": "object"
      +      },
      +      "status": {
      +        "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.",
      +        "enum": [
      +          "quote",
      +          "nothing_billable",
      +          "ok"
      +        ],
      +        "type": "string"
      +      },
      +      "statuses": {
      +        "description": "Status of every domain, free.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "status"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": true,
      +    "properties": {
      +      "code": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "status": {
      +        "maximum": 599,
      +        "minimum": 400,
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "status",
      +      "code"
      +    ],
      +    "type": "object"
      +  }
      +]
  6. Changed1 schema field changed
    • addedInput schema / properties / context
      Added value: +{
      +  "description": "Optional. A few words on why you are calling this tool. Recorded without your identity to improve the tools; leave out personal data.",
      +  "type": "string"
      +}
  7. Changed3 schema fields changed
    • addedOutput schema / anyOf
      Added value: +[
      +  {
      +    "properties": {
      +      "billable_count": {
      +        "type": "integer"
      +      },
      +      "cold": {
      +        "description": "hot-buyers: domains below the threshold, free.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "expires_at": {
      +        "format": "date-time",
      +        "type": "string"
      +      },
      +      "next": {
      +        "type": "string"
      +      },
      +      "price_micro_usd": {
      +        "type": "integer"
      +      },
      +      "price_usd": {
      +        "type": "number"
      +      },
      +      "quote_id": {
      +        "type": "string"
      +      },
      +      "results": {
      +        "description": "Paid rows, after step 2.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "status": {
      +        "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.",
      +        "enum": [
      +          "quote",
      +          "nothing_billable",
      +          "ok"
      +        ],
      +        "type": "string"
      +      },
      +      "statuses": {
      +        "description": "Status of every domain, free.",
      +        "items": {
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "status"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": true,
      +    "properties": {
      +      "code": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "status": {
      +        "maximum": 599,
      +        "minimum": 400,
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "status",
      +      "code"
      +    ],
      +    "type": "object"
      +  }
      +]
    • removedOutput schema / properties
      Removed value: -{
      -  "billable_count": {
      -    "type": "integer"
      -  },
      -  "cold": {
      -    "description": "hot-buyers: domains below the threshold, free.",
      -    "items": {
      -      "type": "object"
      -    },
      -    "type": "array"
      -  },
      -  "expires_at": {
      -    "format": "date-time",
      -    "type": "string"
      -  },
      -  "next": {
      -    "type": "string"
      -  },
      -  "price_micro_usd": {
      -    "type": "integer"
      -  },
      -  "price_usd": {
      -    "type": "number"
      -  },
      -  "quote_id": {
      -    "type": "string"
      -  },
      -  "results": {
      -    "description": "Paid rows, after step 2.",
      -    "items": {
      -      "type": "object"
      -    },
      -    "type": "array"
      -  },
      -  "status": {
      -    "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.",
      -    "enum": [
      -      "quote",
      -      "nothing_billable",
      -      "ok"
      -    ],
      -    "type": "string"
      -  },
      -  "statuses": {
      -    "description": "Status of every domain, free.",
      -    "items": {
      -      "type": "object"
      -    },
      -    "type": "array"
      -  }
      -}
    • removedOutput schema / required
      Removed value: -[
      -  "status"
      -]
  8. Changed1 schema field changed
    • addedInput schema / properties / min_intent_score / description
      Added value: +"Minimum hiring intent score (0–100) for a company to be included in the paid hot-company quote."
  9. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "billable_count": {
      +      "type": "integer"
      +    },
      +    "cold": {
      +      "description": "hot-buyers: domains below the threshold, free.",
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "expires_at": {
      +      "format": "date-time",
      +      "type": "string"
      +    },
      +    "next": {
      +      "type": "string"
      +    },
      +    "price_micro_usd": {
      +      "type": "integer"
      +    },
      +    "price_usd": {
      +      "type": "number"
      +    },
      +    "quote_id": {
      +      "type": "string"
      +    },
      +    "results": {
      +      "description": "Paid rows, after step 2.",
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "status": {
      +      "description": "quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results.",
      +      "enum": [
      +        "quote",
      +        "nothing_billable",
      +        "ok"
      +      ],
      +      "type": "string"
      +    },
      +    "statuses": {
      +      "description": "Status of every domain, free.",
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "status"
      +  ],
      +  "type": "object"
      +}
  10. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint; the description supplies everything that actually matters operationally: a free step 1 returning a quote_id, $0.25 per hot company capped at $1.00, no charge when nothing is hot, and a 5-scan/day limit shared with batch. That is exactly the billing and rate-limit context annotations cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the purpose, then the two-step mechanic and cost, then the usage cue — no filler sentences. It is dense and slightly run-on (pricing, rate limit and usage guidance packed into one paragraph), but every sentence carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a paid, two-phase tool with an output schema already covering return values, the description supplies the full cost model, the free-scan budget, the phase handoff, and the intent_score output reference. Nothing an agent needs to call this without surprising itself is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% so the baseline is 3, but the description adds real meaning: domains belong to step 1, quote_id alone belongs to step 2, and min_intent_score governs what enters the paid quote. The exclusivity rule is largely restated from the schema, which keeps it from a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening clause names a specific verb, resource and scope: a company-list hiring filter that takes 2–25 domains and marks which are hiring hardest. The batch framing implicitly separates it from single-company siblings like get_company_hiring_intent, so an agent can route correctly without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the trigger explicitly ('Use when filtering a prospect list by hiring activity') and lays out the two-step quote-then-redeem flow with the constraint that quote_id is sent alone. It does not name a concrete alternative tool for single-company lookups, so it stops short of full when-not/alternatives guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources