Add-company-data-points
Add data points to companies in an existing search. Supports enriching ALL companies or specific companies via entityIds. ## Quick Reference - **This tool**: Enrich COMPANIES with funding, tech stack, headcount, etc. - **add-contact-data-points**: Enrich CONTACTS with emails, work history, etc. - Requires a taskId from a previous find-and-enrich-* tool call - **Use entityIds to enrich specific companies** — do NOT create a new search to enrich one company from an existing search - **ANY research question about companies = call this tool** with a Custom data point ## IMPORTANT: When to Call This Tool **Check before enriching:** If the user asks about a specific company's data (e.g. "what's their tech stack?"), call get-task-context FIRST — the user may have already enriched it through the widget. Only call this tool if get-task-context shows the enrichment hasn't been run. Call this tool whenever the user asks to FETCH or ADD new information about companies, including: - Standard data points (tech stack, funding, headcount, etc.) - **Any open-ended research question** — use Custom type for these Do NOT try to answer company research questions from your own knowledge. ALWAYS call this tool or get-task-context to fetch the data. Examples that MUST trigger this tool: - "What's their tech stack?" → Standard type - "Find recent product announcements" → Custom type - "Get me their latest news" → Custom type - "What's their revenue model?" → Custom type - "Find their competitors" → Custom type - "Any recent acquisitions?" → Custom type ## Parameters ### taskId (required) The task ID returned from find-and-enrich-company, find-and-enrich-contacts-at-company, or find-and-enrich-list-of-contacts. - Do NOT fabricate a taskId—use the one from the prior search - If no search exists yet, prompt the user to search first ### dataPoints (required) Array of data points to add. - Standard: { type: "<DataPointType>" } - Custom: { type: "Custom", customDataPoint: "<brief description>" } **Available standard types:** Headcount Growth, Recent News, Investors, Company Competitors, Company Customers, Tech Stack, Website Traffic, Open Jobs, Revenue Model, Annual Revenue, Latest Funding **Custom type**: Use for ANY research question not covered by standard types. Examples: - "recent product announcements" → { type: "Custom", customDataPoint: "recent product announcements" } - "B2B vs B2C classification" → { type: "Custom", customDataPoint: "B2B vs B2C classification" } - "company founders" → { type: "Custom", customDataPoint: "company founders" } ### entityIds (optional) Array of entityIds to enrich. When omitted, enriches all companies in the search. - Use the entityId values from the company data returned by a previous search tool call - Useful when the user wants to enrich specific companies ## Examples | User request | dataPoints | |--------------|------------| | "What's their tech stack?" | [{ type: "Tech Stack" }] | | "Get funding info and headcount" | [{ type: "Latest Funding" }, { type: "Headcount" }] | | "Find recent product announcements" | [{ type: "Custom", customDataPoint: "recent product announcements" }] | | "Are they B2B or B2C?" | [{ type: "Custom", customDataPoint: "B2B vs B2C classification" }] | | "What's in the news about them?" | [{ type: "Custom", customDataPoint: "recent news and headlines" }] | ## Response Behavior - Confirm briefly: "Fetching [data point] for [company/companies]." - For single-company requests, name the company instead of saying "all companies." Clay may render results in a widget in hosts that support MCP Apps, such as ChatGPT, claude.ai, and Cursor. Other terminal/coding-agent hosts such as Codex, Claude Code, Windsurf, and CLI environments do not show the widget. If you are unsure whether the widget is visible, assume it is not visible. - If a widget is visible, avoid repeating the full widget contents unless the user asks for full contents; then call get-task-context with the taskId and answer inline. - In terminal/coding-agent environments, when no widget is visible, or when the user asks for actual values/results, call get-task-context with the taskId and answer inline. - **NEVER tell the user that data was not found, not returned, or unavailable without first calling get-task-context.** The initial search/tool response only includes base fields — enrichment results (emails, X/Twitter profiles, work history, custom data points, etc.) are only available via get-task-context. - **When the user asks about a specific value** (e.g. "what's Patrick's email?", "what X profiles did you get?"), call get-task-context FIRST to check if the data has already been enriched — the user may have triggered enrichments through the widget. Only call add-contact-data-points / add-company-data-points if get-task-context shows the enrichment hasn't been run yet. - Use get-task-context to poll until async results complete; if values are still in-progress, wait and retry rather than answering with missing values. - If get-task-context is not available, fall back to get-task.