Skip to main content

Data Activation Companies Server

Overview

The Data Activation Companies Server specializes in analyzing identified company/account data. It provides comprehensive insights into company engagement, intent signals, buying stages, and firmographic information.

Server Details

  • Server Name: data-activation-companies-server
  • Version: 0.0.1
  • Endpoint: /mcp/data-activation-companies
  • Authentication: Organization-level required

Purpose

Analyze identified companies and accounts, track their engagement patterns, intent signals, buying stages, and firmographic attributes to identify opportunities and understand account behavior.

Available Tools

1. companies-schema-tool

Purpose: Get field mappings for the Companies index

When to use: Before constructing queries to understand available fields

Returns: Elasticsearch mapping with field names, types, and descriptions

2. companies-compute-tool

Purpose: Execute Elasticsearch queries against the Companies index

Input: Elasticsearch query JSON Returns: Query results with matching companies and aggregations

3. terminology-tool

Purpose: Translate abbreviations and business terms

4. alert-filters-tool

Purpose: Retrieve alert filter configurations

Purpose: Retrieve signal trend settings

6. settings-buying-stages-scoring-tool

Purpose: Retrieve buying stage scoring rules

7. chart-format-tool

Purpose: Generate Chart.js configurations for visualizing data

Purpose: Generate clickable links to company profiles

Key Fields

Identity Fields

  • Uuid - Unique company identifier
  • Name - Company name
  • Domain - Company domain
  • Website - Company website URL

Scoring Fields

  • Icp - ICP (Ideal Customer Profile) score (0-100)
  • Intent - Intent score (0-100)
  • Intent Signals - Array of intent signals detected
  • Intent Trends - Intent trend direction (rising, stable, declining)

Buying Stage Fields

  • Buying Stage - Current buying stage (Awareness, Consideration, Decision, Purchase)
  • Lifecycle Stage - Lifecycle stage
  • Awareness Date - When account entered Awareness stage
  • Consideration Date - When account entered Consideration stage
  • Decision Date - When account entered Decision stage
  • Purchase Date - When account entered Purchase stage

Engagement Fields

  • Page Views - Total page views
  • Unique Pages - Number of unique pages visited
  • Total Active Time - Total time spent on site (seconds)
  • Visitors Count - Number of identified visitors
  • Urls - Array of URLs visited
  • Last Touch Date - Most recent engagement date
  • First Touch Date - First engagement date

Firmographic Fields

  • Industry - Company industry
  • Sub Industry - Sub-industry classification
  • Employees - Employee count
  • Employees Range - Employee range category
  • Annual Revenue - Annual revenue (if available)
  • City - Company city
  • State - Company state/province
  • Country - Company country

Technology Fields

  • Tech - Array of technologies used
  • Tech Categories - Technology categories

Identification Fields

  • Identified People - Number of identified people
  • Identified People Emails - Array of identified email addresses

Attribution Fields

  • First Touch Channel - First touch channel
  • First Touch UTM Source - First touch UTM source
  • First Touch UTM Medium - First touch UTM medium
  • First Touch UTM Campaign - First touch UTM campaign

CRM Fields

  • CRM Owner - CRM owner name
  • CRM Owner Email - CRM owner email

Common Use Cases

1. High-ICP Accounts with Strong Intent

{
"query": {
"bool": {
"filter": [
{"range": {"Icp": {"gte": 70}}},
{"range": {"Intent": {"gte": 60}}}
]
}
},
"_source": ["Uuid", "Name", "Domain", "Icp", "Intent", "Buying Stage", "Industry"],
"sort": [
{"Intent": "desc"},
{"Icp": "desc"}
],
"size": 50
}

2. Accounts by Buying Stage

{
"size": 0,
"aggs": {
"by_stage": {
"terms": {"field": "Buying Stage.keyword", "size": 10},
"aggs": {
"avg_icp": {"avg": {"field": "Icp"}},
"avg_intent": {"avg": {"field": "Intent"}},
"total_accounts": {"value_count": {"field": "Uuid.keyword"}}
}
}
}
}

3. Recently Engaged Accounts

{
"query": {
"bool": {
"filter": [
{"range": {"Last Touch Date": {"gte": "now-7d/d"}}},
{"range": {"Page Views": {"gte": 3}}}
]
}
},
"_source": ["Uuid", "Name", "Domain", "Last Touch Date", "Page Views", "Unique Pages", "Urls"],
"sort": [{"Last Touch Date": "desc"}],
"size": 100
}

4. Accounts by Industry with High ICP

{
"query": {
"range": {"Icp": {"gte": 70}}
},
"size": 0,
"aggs": {
"by_industry": {
"terms": {
"field": "Industry.keyword",
"size": 20,
"order": {"avg_icp": "desc"}
},
"aggs": {
"avg_icp": {"avg": {"field": "Icp"}},
"avg_intent": {"avg": {"field": "Intent"}},
"account_count": {"value_count": {"field": "Uuid.keyword"}}
}
}
}
}

5. Accounts Using Specific Technology

{
"query": {
"bool": {
"filter": [
{"wildcard": {"Tech": "*salesforce*"}},
{"range": {"Icp": {"gte": 60}}}
]
}
},
"_source": ["Uuid", "Name", "Domain", "Tech", "Tech Categories", "Icp"],
"size": 50
}

6. Accounts Viewing Specific Pages

{
"query": {
"bool": {
"should": [
{"wildcard": {"Urls": "*pricing*"}},
{"wildcard": {"Urls": "*demo*"}},
{"wildcard": {"Urls": "*contact*"}}
],
"minimum_should_match": 1,
"filter": [
{"range": {"Icp": {"gte": 70}}}
]
}
},
"_source": ["Uuid", "Name", "Domain", "Urls", "Last Touch Date", "Icp"],
"size": 100
}

7. Accounts with Multiple Identified People

{
"query": {
"bool": {
"filter": [
{"range": {"Identified People": {"gte": 3}}},
{"range": {"Icp": {"gte": 70}}}
]
}
},
"_source": ["Uuid", "Name", "Domain", "Identified People", "Identified People Emails", "Icp"],
"sort": [{"Identified People": "desc"}],
"size": 50
}

8. Accounts by Company Size

{
"query": {
"bool": {
"filter": [
{"range": {"Employees": {"gte": 100, "lte": 1000}}},
{"range": {"Icp": {"gte": 60}}}
]
}
},
"size": 0,
"aggs": {
"by_size_range": {
"terms": {"field": "Employees Range.keyword", "size": 10},
"aggs": {
"avg_icp": {"avg": {"field": "Icp"}},
"avg_intent": {"avg": {"field": "Intent"}}
}
}
}
}

9. Accounts with Rising Intent

{
"query": {
"bool": {
"filter": [
{"term": {"Intent Trends.keyword": "rising"}},
{"range": {"Intent": {"gte": 50}}}
]
}
},
"_source": ["Uuid", "Name", "Domain", "Intent", "Intent Trends", "Intent Signals", "Icp"],
"sort": [{"Intent": "desc"}],
"size": 50
}

10. Geographic Distribution

{
"query": {
"bool": {
"filter": [
{"term": {"Country.keyword": "United States"}},
{"range": {"Icp": {"gte": 70}}}
]
}
},
"size": 0,
"aggs": {
"by_state": {
"terms": {"field": "State.keyword", "size": 20},
"aggs": {
"account_count": {"value_count": {"field": "Uuid.keyword"}},
"avg_icp": {"avg": {"field": "Icp"}}
}
}
}
}

11. Accounts by First Touch Channel

{
"query": {
"range": {"First Touch Date": {"gte": "now-90d/d"}}
},
"size": 0,
"aggs": {
"by_channel": {
"terms": {"field": "First Touch Channel.keyword", "size": 15},
"aggs": {
"account_count": {"value_count": {"field": "Uuid.keyword"}},
"avg_icp": {"avg": {"field": "Icp"}},
"high_intent_count": {
"filter": {"range": {"Intent": {"gte": 70}}}
}
}
}
}
}

12. Stage Progression Analysis

{
"query": {
"bool": {
"filter": [
{"exists": {"field": "Decision Date"}},
{"range": {"Decision Date": {"gte": "now-30d/d"}}}
]
}
},
"_source": [
"Uuid", "Name", "Domain",
"First Touch Date", "Awareness Date", "Consideration Date", "Decision Date",
"Icp", "Intent"
],
"sort": [{"Decision Date": "desc"}],
"size": 50
}

Best Practices

1. Always Check Schema First

Call companies-schema-tool before querying to ensure correct field names.

Unless exact match is explicitly requested:

{"wildcard": {"Name": "*acme*"}}

3. Combine ICP and Intent for Prioritization

{
"query": {
"bool": {
"filter": [
{"range": {"Icp": {"gte": 70}}},
{"range": {"Intent": {"gte": 60}}}
]
}
}
}

4. Include Key Fields in _source

Always include: Uuid, Name, Domain for generating company links.

5. Use .keyword for Exact Matches

For text fields that need exact matching:

{"term": {"Industry.keyword": "Technology"}}

6. Leverage Engagement Metrics

Combine scoring with engagement for better insights:

{
"query": {
"bool": {
"filter": [
{"range": {"Icp": {"gte": 70}}},
{"range": {"Page Views": {"gte": 5}}},
{"range": {"Last Touch Date": {"gte": "now-14d/d"}}}
]
}
}
}

7. Apply Date Filters

For time-sensitive queries, always filter by date fields:

{"range": {"Last Touch Date": {"gte": "now-30d/d"}}}

After retrieving accounts, call company-links-tool to provide easy access.

Query Patterns

Strong Buying Signals

Interpret as: Intent high OR Intent Signals exists OR Intent Trends rising

{
"query": {
"bool": {
"should": [
{"range": {"Intent": {"gte": 70}}},
{"exists": {"field": "Intent Signals"}},
{"term": {"Intent Trends.keyword": "rising"}}
],
"minimum_should_match": 1
}
}
}

Multiple Filters Combined

{
"query": {
"bool": {
"filter": [
{"range": {"Icp": {"gte": 70}}},
{"term": {"Buying Stage.keyword": "Decision"}},
{"term": {"Industry.keyword": "Technology"}},
{"range": {"Employees": {"gte": 100}}},
{"range": {"Last Touch Date": {"gte": "now-7d/d"}}}
]
}
}
}

Aggregations for Insights

{
"size": 0,
"aggs": {
"icp_distribution": {
"histogram": {"field": "Icp", "interval": 10}
},
"intent_distribution": {
"histogram": {"field": "Intent", "interval": 10}
},
"stage_breakdown": {
"terms": {"field": "Buying Stage.keyword"}
}
}
}