Find people asking for a service
find_buying_intentUse this when the user sells a service and wants public posts where people ask for it, such as "who is asking for an SEO audit?", "find posts from people looking for a bookkeeper" or "which companies on Hacker News are hiring for MCP work?". Pass service, for example {"service": "SEO audit"}, and optionally keywords, sources, lookback_days (7 to 365, default 30) and limit (1 to 15, default 10). Returns Hacker News posts, company posts from the newest "Who is hiring?" thread, GitHub issues and Stack Exchange posts, each with a link, date, quote under 15 words, intent score 0 to 100, label (intent or casual_complaint), one-line reason, reply_angle and lead_source. Plain rules, no AI model. Use this, not weekly_brief, for a lookback other than 7 days or a set limit. Not for companies that raised money (use find_buyer_signals) or for finding who wrote a post. A post that reads like a buyer is a lead to read, not a sure sale. No usernames, profiles or contact details. Reddit is not searched.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many posts to return (default 10) | |
| service | Yes | The service you sell, not a company or person. Example call: {"service": "SEO audit"}. "alternative" alone, with no keywords, finds asks to replace any tool. Also try the person form (bookkeeper) | |
| sources | No | Which public sources to read: hackernews (comments and Ask HN), hn_hiring (company posts in the newest monthly Hacker News "Who is hiring?" thread), github (open and closed issues) and stackexchange. Default is all four. Leave one out to skip it, for example stackexchange when it is rate limited | |
| keywords | No | Optional extra words a post must also contain, such as "shopify" or "small business" (up to 5). Every keyword must appear in a post, so a long list returns little. Leave it out for a first look and add one word only to narrow | |
| lookback_days | No | How many days of posts to read (default 30). This is 7 to 365, not the 1 to 60 of find_buyer_signals or the 30 to 365 of stack_pains |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | Yes | ||
| as_of | Yes | ISO 8601 time the data was published by its source or fetched from it. A cached answer keeps the time of its fetch. | |
| notice | Yes | What a score does and does not mean. Pass it on | |
| Yes | |||
| source | Yes | Who the data comes from, to cite and to check it against. | |
| status | Yes | ok: posts found. no_data: no post asked for the service; message says what to try. unavailable: no source could be read; message says whether to retry or skip stackexchange | |
| window | Yes | ||
| dropped | Yes | Posts left out: seller posts and posts that ask for nothing | |
| message | No | The next step when status is not ok or a source was skipped, such as a longer lookback_days, the person form of the service, or leaving stackexchange out of sources | |
| results | Yes | ||
| service | Yes | ||
| how_scored | Yes | The scoring rules, so the user can see why a post scored as it did | |
| posts_read | Yes | Posts read from all sources | |
| attribution | Yes | CC BY-SA attribution for Stack Exchange text | |
| intent_count | Yes | Posts labelled intent | |
| sources_used | Yes | Sources read for this answer | |
| complaint_count | Yes | Posts labelled casual_complaint | |
| untrusted_source | Yes | ||
| posts_about_service | Yes | Posts that name the service | |
| sources_unavailable | Yes | Sources that could not be read and are missing from the answer |