Skip to main content

company_technographic next channel

Status: Modified (batch selectors; snake_case installs; richer filters; sort/offset) This tool is on the private next MCP channel for allow-listed orgs. When promoted, this file moves to mcp-tools/company-technographic.md.

Call this when a user asks what technology a company uses, what their tech stack is, or whether a specific product is installed. Returns installed technologies with product_name, vendor_name, intensity (usage signal — higher = broader/more active use), country_code, 5-level category hierarchy, verification dates, and numeric product_id/vendor_id for downstream chaining (e.g. into company_fai).

Integration required: hginsights_v2__data_api Cache schema version: 4 (differs from base — stale cached payloads from the public channel will not be served)

Parameters

ParameterTypeRequiredDefaultDescription
hg_idsstring[]OptionalHG Insights company IDs for batch technographic lookup (up to 25). Provide hg_ids or domains (at least one is required); both may be combined.
domainsstring[]OptionalCompany domains for batch technographic lookup (e.g. ['cisco.com', 'salesforce.com'], up to 25). Protocol prefixes, leading www., and trailing paths are stripped automatically.
category_idsstring[]OptionalFilter by exact HG Insights category IDs (32-char hex, OR-within-the-list). Get from get_product_category. Preferred over product/vendor IDs when filtering by technology category.
product_idsinteger[]OptionalFilter by exact HG Insights numeric product IDs (OR-within-the-list).
product_namesstring[]OptionalFilter by product name substrings (case-insensitive, OR-within-the-list). Prefer product_ids when you have resolved IDs.
vendor_idsinteger[]OptionalFilter by exact HG Insights numeric vendor IDs (OR-within-the-list). Call get_vendor_information first to resolve vendor names to integer IDs.
vendor_namesstring[]OptionalFilter by vendor name substrings (case-insensitive, OR-within-the-list). Prefer vendor_ids when you have resolved IDs.
country_codesstring[]OptionalISO alpha-2 country codes to include installs from (e.g. ["US","GB"]). The same product may appear as multiple rows — one per country. Deduplicate on product_id if you need a unique product list.
granularity"global" | "country"Optional'global' returns deduplicated rows per product (country_code: null); 'country' returns one row per product per country. Leave unset to include global / unattributed installs by default.
product_attribute_idsinteger[]OptionalFilter by HG Insights numeric product attribute IDs (from get_product_attribute).
last_verified_dateobjectOptionalFilter installs by last-verified date as a range object { from, to } (YYYY-MM-DD, both optional, inclusive).
max_resultsnumberOptional50Maximum number of installs to return (1–100, default 50). For companies with large tech footprints, add filters or reduce to ≤50 to avoid HTTP 422.
offsetintegerOptional0Pagination offset (default 0, max 10 000).
sort"intensity" | "last_seen"OptionalSort order: 'intensity' = highest usage signal first (default upstream behavior); 'last_seen' = most recently verified first.
install_fieldsstring[]OptionalLimit which fields are returned per install. Omit to return all fields. Unknown field names are rejected.
include_descriptionbooleanOptionalfalseWhen false (default), strips product_description from every install (~60% smaller payload). Set to true only when product descriptions are explicitly needed.

Response Format

{
"companies": [
{
"company_id": "3AB6196C…",
"company_domain": "cisco.com",
"installs": [
{
"product_id": 12345,
"product_name": "Snowflake",
"vendor_id": 678,
"vendor_name": "Snowflake Inc.",
"vendor_domain": "snowflake.com",
"product_category_id": "SW012",
"product_category_level1_name": "Software",
"product_category_level2_name": "Data",
"product_category_level3_name": "Database Management",
"product_category_level4_name": null,
"product_category_level5_name": null,
"country_code": null,
"product_first_verified_date": "2021-01-01",
"product_last_verified_date": "2024-01-01",
"intensity": 87,
"location_count": 12
}
],
"installs_count": 1,
"total_installs_count": 340,
"has_more": true
}
]
}

Response notes

  • Companies with no match or zero installs after filtering are omitted from the array.
  • has_more is true when the upstream has more matching installs than were returned. Add filters to narrow the result set.
  • total_installs_count — total matching installs available upstream. Compare with installs_count to know if more pages exist.

Example Usage

{
"tool": "company_technographic",
"parameters": {
"domains": ["cisco.com", "salesforce.com"],
"vendor_ids": [678],
"max_results": 20
}
}

Changelog

2026-08-04 — Unified API PR #326 alignment

Availability: live on the private next MCP channel for allow-listed orgs. The public /api/mcp contract is unchanged.

Why this changed: aligns company_technographic with the additive batch/query capabilities shipped in unified API PR #326.

Breaking change — company selection is now batch-only

  • The singular hg_id / company_domain params are removed. Select companies with batch arrays: hg_ids (array, ≤25) and/or domains (array, ≤25). At least one is required.
  • The output is now a { companies: [...] } array. Companies that don't match are omitted.
  • Migration: hg_id: "abc"hg_ids: ["abc"], company_domain: "cisco.com"domains: ["cisco.com"].

Additive — new optional params (no action required for existing calls):

  • sort"intensity" or "last_seen"; server-side ordering.
  • offset — 0–10000; page into large install sets.
  • vendor_namesstring[]; filter by vendor name substring.
  • product_namesstring[]; filter by product name substring.

The Redis cache schema version was bumped so pre-#326 cached payloads are not served.

Implementation note: migrated to POST /data-api/v2/companies/enrich with fields: ["technographics"]. The install_fields / include_description projection parameters are applied client-side via projectInstalls() (the unified enrich endpoint does not project server-side).

2026-07-31 — Breaking: params and envelope fields renamed to snake_case

Availability: live on the private next MCP channel for allow-listed orgs. The public /api/mcp contract is unchanged.

Before (on next)After
Domain paramcompanyDomaincompany_domain
ID paramhgIdhg_id
Category filtercategoryIdscategory_ids
Product filterproductIdsproduct_ids
Vendor filtervendorIdsvendor_ids
Country filtercountryCodescountry_codes
Attribute filterproductAttributeIdsproduct_attribute_ids
Date filterlastVerifiedDatelast_verified_date
PaginationmaxResultsmax_results
Field projectioninstallFieldsinstall_fields
DescriptionincludeDescriptioninclude_description

Output envelope: companyIdcompany_id, companyDomaincompany_domain, installsCountinstalls_count, totalInstallsCounttotal_installs_count, hasMorehas_more.

2026-07-30 — Breaking: v2-aligned rewrite; products array → installs; richer filters

Why this changed: company_technographic now mirrors the official HG Insights API one-to-one. Response fields use the shared snake_case naming; the products array is now installs.

Breaking changes

  • Company ID param: hg_idhgId (subsequently renamed to hg_id in the 2026-07-31 pass).
  • Category filter: categories (names) → categoryIds (exact 32-char hex IDs from get_product_category).
  • sort and provider params removed.
  • maxResults cap changed from 1–500 to 1–100.
  • Response array renamed: productsinstalls.
  • Fields renamed: productIdproduct_id, productNameproduct_name, categoryName/categoryNameTreeproduct_category_level1_name through product_category_level5_name, firstVerifiedDateproduct_first_verified_date, productLocationslocation_count. vendor_id, vendor_domain, total_installs_count, and has_more are new output fields.
  • Top-level categories and lastUpdated removed.