mcp-icp-fit-scorer
This server scores a company against your Ideal Customer Profile (ICP) using weighted signals, returning a 0–100 icp_score, an A–D icp_tier, a lead_tag, and a per-signal breakdown across hiring, tech stack, headcount, funding, and industry.
Define your ICP three ways:
Use a prebuilt template (e.g.,
b2b_saas) for quick setupProvide a custom JSON scoring config with your own signal weights
Write a plain-English description (requires an OpenAI or Anthropic API key)
Key features:
Requires a company domain as input; optionally accepts a display name
Enable
fetch_signalsto automatically retrieve hiring and tech-stack data before scoringEnable
include_explanationto get a natural-language breakdown of the scoreReturns flat, Clay-ready JSON for easy integration into CRMs or AI agent workflows
Allows using OpenAI's API (e.g., GPT models) to interpret plain-English Ideal Customer Profile descriptions and convert them into scoring configurations.
ICP Fit Scorer MCP Server
An MCP server that scores a company against your ideal customer profile. It wraps the Mamba Labs ICP Fit Scorer actor on Apify and returns a Clay-ready flat JSON row to any MCP client.
What's Inside
Related MCP server: Company Firmographic Enricher MCP Server
What it does
Give it a company domain and a definition of your ICP, and it scores the company on weighted signals, returning a 0 to 100 score, an A to D tier, and a per-signal breakdown. Define your ICP three ways: a prebuilt template, a JSON scoring config, or a plain-English description (which uses your own LLM key). Turn on fetch_signals and the actor will gather hiring and tech-stack signals for you before scoring. One flat row, ready for Clay, a CRM, or an AI agent workflow. All of the scoring runs on Apify. This package is a thin client that calls the actor and hands back the result.
Quick start
You need Node.js 18 or newer and an Apify account with an API token.
Add this to your Claude Desktop config:
{
"mcpServers": {
"mamba-icp-scorer": {
"command": "npx",
"args": ["-y", "@mambalabsdev/mcp-icp-fit-scorer"],
"env": {
"APIFY_TOKEN": "your-apify-token"
}
}
}
}Get your token at https://console.apify.com/account/integrations, paste it in, and restart Claude Desktop. The score_icp_fit tool will be available.
Prerequisites
Node.js 18 or newer
An Apify account with an API token
Example prompts
"Score clay.com against the b2b_saas template and fetch its signals."
"How well does stripe.com fit an ICP of mid-market fintech companies? Explain the score."
"Score figma.com with my scoring config and include the per-signal breakdown."
"Rate openai.com against this ICP description: enterprise AI teams hiring for go-to-market."
Inputs
company_domain(required): the primary domain of the company to score. Example:clay.comcompany_name(optional): display name of the company.template(optional): name of a prebuilt scoring config.scoring_config(optional): a JSON object of scoring weights.icp_description(optional): plain-English ICP description. Requiresllm_api_key.llm_api_key(optional): your OpenAI or Anthropic key, used only withicp_description.llm_provider(optional):openaioranthropic.fetch_signals(optional): let the actor gather hiring and tech-stack signals automatically.include_explanation(optional): add ascore_explanationstring to the output.
Define your ICP with exactly one of template, scoring_config, or icp_description.
This server exposes the single-company scoring path. The actor also supports batch inputs (a dataset or CSV of companies) and a results webhook. For those, run the actor directly on Apify.
Output
The tool returns the actor's flat JSON row for the scored company, including icp_score (0 to 100), icp_tier (A to D), the per-signal breakdown, and an optional explanation. See the Apify Store page for the full output schema.
Example output
{
"company_domain": "ramp.com",
"icp_score": 87,
"icp_tier": "A",
"lead_tag": "priority",
"score_hiring": 25,
"score_tech_stack": 22,
"score_headcount": 20,
"score_funding": 20,
"score_industry": 0,
"run_date": "2026-05-28"
}Features
User-defined JSON scoring config with custom weights
Returns icp_score (0 to 100), icp_tier (A to D), and lead_tag
Per-signal point breakdown: hiring, tech stack, headcount, funding, industry
Replaces 6+ manual formula columns in Clay
Full actor documentation
This server is a thin client and holds no scoring logic. For the complete input and output reference, pricing, and run history, see the Apify Store page:
https://apify.com/mambalabs/icp-account-lead-scoring-fit-scorer-0-100-for-clay
Mamba Labs GTM Suite
This server is part of the Mamba Labs GTM Suite, a fleet of twelve specialized MCP servers for go-to-market signal intelligence, each backed by a dedicated Apify actor.
Actor | Immutable Actor ID |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
Built by Mamba Labs | npm | Apify Store
License
MIT
Built by Mamba Labs. https://apify.com/mambalabs
Available Tools
1 toolscore_icp_fitScore ICP FitARead-onlyIdempotent
Score a company against your ideal customer profile (ICP) using weighted signals. Returns a 0 to 100 icp_score, an A to D icp_tier, and a per-signal breakdown as a flat, Clay-ready JSON row. Define your ICP with a prebuilt template, a JSON scoring_config, or a plain-English icp_description (which requires llm_api_key). Read-only; requires an APIFY_TOKEN and consumes Apify credits per call.
| Name | Required | Description | Default |
|---|---|---|---|
| company_domain | Yes | The primary domain of the company to score. Example: clay.com | |
| company_name | No | Optional display name of the company. | |
| template | No | Name of a prebuilt scoring config. Alternative to scoring_config or icp_description. | |
| scoring_config | No | JSON object of scoring weights. Alternative to template or icp_description. | |
| icp_description | No | Plain-English description of your target ICP. Requires llm_api_key. Alternative to template or scoring_config. | |
| llm_api_key | No | Your OpenAI or Anthropic API key. Required only when using icp_description. | |
| llm_provider | No | LLM provider to use with icp_description: openai or anthropic. | |
| fetch_signals | No | If true, the actor fetches hiring and tech-stack signals for the company automatically before scoring. | |
| include_explanation | No | If true, adds a score_explanation string to the output describing how the score was derived. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals key behavioral traits beyond annotations: read-only nature, requirement for APIFY_TOKEN, credit consumption, and output structure. It also clarifies the optional LLM usage for icp_description. This adds value on top of the readOnlyHint annotation. However, it does not discuss rate limits or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with two sentences. The first sentence states purpose and output; the second covers input methods and requirements. No wasted words, and key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (9 parameters, no output schema), the description provides a good overview of inputs and outputs. It mentions the return format (icp_score, icp_tier, per-signal breakdown) and optional explanation. However, it omits details on the exact structure of the per-signal breakdown or scoring_config format, which are left to the schema. Overall, it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds meaning by explaining the relationship between template, scoring_config, icp_description, and llm_api_key. It also clarifies the purpose of fetch_signals and include_explanation. This additional context improves parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: scoring a company against an ICP using weighted signals. It specifies the output format (icp_score, icp_tier, per-signal breakdown) and input options. With no sibling tools, the purpose is unambiguous and distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on how to define the ICP (template, JSON, or plain-English description) and notes prerequisites (APIFY_TOKEN, credits). It also explains optional parameters like fetch_signals and include_explanation. While it doesn't explicitly state when not to use alternatives, the guidance is sufficient given no sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v1.0.3- First observed
score_icp_fit
TDQS
With only one tool, there is no risk of confusion between tools. The tool's purpose is clearly defined in its description.
A single tool name cannot be inconsistent. The name 'score_icp_fit' follows a clear verb_noun pattern.
A single tool feels insufficient for a server dedicated to ICP fit scoring. The domain likely requires additional tools for managing ICP templates, historical scores, or configuration.
The tool covers only the scoring operation. Missing are tools for creating or managing ICP templates, listing past scores, or configuring signals.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Sales intelligence for B2B SMEs — lead scoring, ICP fit, CRM enrichment & writeback.
Score, rank and prioritize an existing Italian B2B lead list into explained JSON decisions.
Score an IP, email, phone, domain or device for fraud in one call, with the signals behind it.
AI-native B2B sales research, ranking, and CRM enrichment.
Related MCP Servers
- AlicenseAqualityAmaintenanceDetects a company's technology stack from its public web presence. Returns structured tech signals for sales targeting and competitive analysis.12011MIT
- AlicenseAqualityAmaintenanceEnables enriching company domains into structured firmographics including employee band, industry, HQ, founded year, revenue estimate, logo, and description, with source provenance and data completeness scoring.1941MIT
- AlicenseAqualityAmaintenanceResolves any combination of company name, domain, or LinkedIn URL into the canonical company identity (name, domain, LinkedIn URL) with confidence scores and match method.198MIT
- AlicenseNot gradedqualityBmaintenanceSales intelligence for DACH & EU SMEs — lead scoring, ICP fit, CRM enrichment & writeback.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mambalabsdev/mcp-icp-fit-scorer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server