Skip to main content
Glama

Klarix Intelligence Engine

Find matched prospect companies (Semantic Universe Search)

find_matched_prospects
Read-onlyIdempotent

Build a first-pass candidate list from hundreds of thousands of pre-profiled B2B companies using Voyage 4 semantic vector embeddings. Ranks accounts by topical similarity to an ICP description, tech stack, business model, and vertical, then screens the retrieved candidates for buyer-vs-vendor role and corporate status and reports what it withheld. Returns a candidate net, not a qualified list: the similarity figure is not a fit score, and every account should go through score_prospect_fit before outreach.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum prospects to return (1-25, default 10).
screenNoScreen retrieved candidates for buyer-vs-vendor role and corporate status before returning them (default true). Set false for the raw similarity ranking, which will include companies that sell what the ICP describes.
verticalNoFilter by vertical: "AI SaaS & DevTools", "Recruiting & Staffing", "Precision Manufacturing & Hardware", etc.
client_idNoKlarix client id (kebab-case, e.g. "alium-batteries"). Loads company name, domain, value propositions, win themes, and ICP from clients/{client_id}/context.json when that file is reachable. Explicit arguments always override it.
countriesNoRestrict to accounts headquartered in these countries (matched against HQ location), e.g. ["United States", "Canada"].
our_domainNoYour own web domain, e.g. "klarix.ai". Lets the tool research your side of the comparison.
revenue_maxNoMaximum annual revenue in USD. Recorded for downstream scoring; the semantic index carries no revenue field, so it does not narrow retrieval.
revenue_minNoMinimum annual revenue in USD. Recorded for downstream scoring; the semantic index carries no revenue field, so it does not narrow retrieval.
icp_or_queryYesTarget ICP description, search criteria, tech stack, or problem statement, e.g. "AI infrastructure companies serving enterprise ML teams with high GPU usage".
sub_categoryNoFilter by sub-category, e.g. "Serverless GPU Cloud", "Executive Search", "Contract Manufacturing & EMS".
headcount_maxNoMaximum employee headcount. Accounts whose headcount band starts above this are dropped.
headcount_minNoMinimum employee headcount. Accounts whose headcount band tops out below this are dropped.
required_techNoRequire at least one of these technologies in the confirmed tech stack, e.g. ["CUDA", "PyTorch"].
min_similarityNoMinimum vector cosine similarity threshold (0.0 - 1.0, default 0.35). Measures topical closeness to the ICP text, not fit or buying readiness.
exclude_domainsNoDomains to exclude from results (e.g. existing customers or disqualified accounts).
our_company_nameNoYour company name. Curates the analysis toward how YOU win instead of a generic read.
our_differentiatorsNoWhat you actually win on, in your words, e.g. ["3-7 day delivery", "done-for-you, not DIY"]. Anchors talk tracks to claims you can defend.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYes
screenYes
sourceYes
verticalNo
prospectsYes
our_contextNo
total_matchesYes
search_latency_msYes
withheld_accountsYes
index_last_updatedNo
qualification_statusYes
total_universe_indexedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed11 schema fields changed
    • changedInput schema / properties / min_similarity / description
      Previous value: -"Minimum vector cosine similarity threshold (0.0 - 1.0, default 0.35)."New value: +"Minimum vector cosine similarity threshold (0.0 - 1.0, default 0.35). Measures topical closeness to the ICP text, not fit or buying readiness."
    • addedInput schema / properties / screen
      Added value: +{
      +  "description": "Screen retrieved candidates for buyer-vs-vendor role and corporate status before returning them (default true). Set false for the raw similarity ranking, which will include companies that sell what the ICP describes.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / index_last_updated
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / prospects / items / properties / screen_note
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / prospects / items / properties / screen_role
      Added value: +{
      +  "enum": [
      +    "buyer",
      +    "vendor",
      +    "unclear"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / prospects / items / properties / screen_status
      Added value: +{
      +  "enum": [
      +    "acquired",
      +    "inactive",
      +    "unclear"
      +  ],
      +  "type": "string"
      +}
    • changedOutput schema / properties / prospects / items / required
      Previous value: -[
      -  "company_name",
      -  "domain",
      -  "vertical",
      -  "what_they_do",
      -  "tech_stack",
      -  "growth_signals",
      -  "similarity",
      -  "relevance_score",
      -  "suggested_action"
      -]New value: +[
      +  "company_name",
      +  "domain",
      +  "vertical",
      +  "what_they_do",
      +  "tech_stack",
      +  "growth_signals",
      +  "similarity",
      +  "suggested_action"
      +]
    • addedOutput schema / properties / qualification_status
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / screen
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "candidates_retrieved": {
      +      "type": "number"
      +    },
      +    "note": {
      +      "type": "string"
      +    },
      +    "ran": {
      +      "type": "boolean"
      +    },
      +    "withheld": {
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "ran",
      +    "candidates_retrieved",
      +    "withheld",
      +    "note"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / withheld_accounts
      Added value: +{
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "company_name": {
      +        "type": "string"
      +      },
      +      "detail": {
      +        "type": "string"
      +      },
      +      "domain": {
      +        "type": "string"
      +      },
      +      "reason": {
      +        "type": "string"
      +      },
      +      "similarity": {
      +        "type": "number"
      +      },
      +      "vertical": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "company_name",
      +      "domain",
      +      "vertical",
      +      "similarity",
      +      "reason"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "query",
      -  "total_matches",
      -  "total_universe_indexed",
      -  "search_latency_ms",
      -  "source",
      -  "prospects"
      -]New value: +[
      +  "query",
      +  "total_matches",
      +  "total_universe_indexed",
      +  "search_latency_ms",
      +  "source",
      +  "qualification_status",
      +  "screen",
      +  "prospects",
      +  "withheld_accounts"
      +]
  2. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already indicate read-only and idempotent behavior. The description adds meaningful context beyond that: it explains screening for buyer-vs-vendor role and corporate status, that withheld candidates are reported, and that results are raw similarity-ranked candidates rather than qualified accounts. This is useful behavioral nuance, though it doesn't cover runtime limits or error cases.

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

Conciseness5/5

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

The description is compact, front-loaded with the core purpose, and every sentence adds value: the method, the screening behavior, the caveat about similarity, and the explicit next step. There is no filler or repetition of schema details.

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?

Given the rich input schema, output schema, and annotations, the description is complete enough. It explains the high-level retrieval and screening behavior, clarifies the meaning of the similarity score, and tells the agent when to route to score_prospect_fit, which is all an agent needs to call it correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema carries the parameter meaning. The tool description adds no parameter-specific insight beyond what the schema already provides, so it meets the baseline but does not exceed it.

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 description states a specific verb and resource: building a first-pass candidate list of B2B companies via semantic vector search. It also explicitly frames the output as a candidate net, not a qualified list, and names score_prospect_fit as the follow-up, which distinguishes it from sibling tools.

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

Usage Guidelines5/5

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

It clearly identifies when to use the tool: for a first-pass candidate list before scoring. It also gives an explicit exclusion by warning that the similarity figure is not a fit score and that every account should go through score_prospect_fit before outreach.

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