GrowthKit Revenue Intelligence
REMOTE · MCP.GROWTHKIT.TOOLS · SCANNED SEP 20
Sales intelligence for B2B SMEs — lead scoring, ICP fit, CRM enrichment & writeback.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security60
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the tool list to see what that exposes. View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability0
- Schema blocked by authentication: the endpoint requires auth we don't have to read it. See how to fix → Unverified
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
- Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Tool Safety0
- Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Capabilities0
- Capabilities blocked by authentication: the endpoint requires auth we don't have to read them. See how to fix → Unverified
Unverified: 5 categories
Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm. Claim this server and supply a read-only token to verify it and lift the score.
How do I install the GrowthKit Revenue Intelligence MCP server?
GrowthKit Revenue Intelligence is a hosted endpoint at https://mcp.growthkit.tools/, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.growthkit.tools
claude mcp add --transport http tools-growthkit-revenue-intelligence 'https://mcp.growthkit.tools/'
{
"mcpServers": {
"tools-growthkit-revenue-intelligence": {
"url": "https://mcp.growthkit.tools/"
}
}
} {
"servers": {
"tools-growthkit-revenue-intelligence": {
"type": "http",
"url": "https://mcp.growthkit.tools/"
}
}
} [mcp_servers.tools-growthkit-revenue-intelligence] url = "https://mcp.growthkit.tools/"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"tools-growthkit-revenue-intelligence": {
"type": "remote",
"url": "https://mcp.growthkit.tools/",
"enabled": true
}
}
} openclaw mcp add tools-growthkit-revenue-intelligence --url 'https://mcp.growthkit.tools/' --transport streamable-http
mcp_servers:
tools-growthkit-revenue-intelligence:
url: "https://mcp.growthkit.tools/" {
"McpServers": {
"tools-growthkit-revenue-intelligence": {
"Transport": "http",
"Url": "https://mcp.growthkit.tools/"
}
}
} assistant mcp add tools-growthkit-revenue-intelligence -t streamable-http -u 'https://mcp.growthkit.tools/'
{
"mcpServers": {
"tools-growthkit-revenue-intelligence": {
"type": "http",
"url": "https://mcp.growthkit.tools/"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 26 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 11 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 7 Aug 26 0
- Endpoint reachability: reachable → behind authorisation ▼ security
- Stability: 0.37 → unverified ▼ security
- Authorization: pass → unverified ▼ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- 31 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 27 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 0
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Probed https://mcp.growthkit.tools
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=growthkit.tools | CN=WE1,O=Google Trust Services,C=US | 11 Aug 2026 | 9 Nov 2026 | ECDSA 256 | ECDSA-SHA256 | 6ff1f89a6044c611367632937ebf334 |
| SANs: growthkit.tools, mcp.growthkit.tools | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of mcp.growthkit.tools. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| tools. | present | 13831 | 8 | Verified |
| growthkit.tools. | present | 2371 | 13 | Verified |
| mcp.growthkit.tools. | Verified address RRset verified with the apex keys |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.growthkit.tools | Verified | 200 | |
| http (plaintext) | http://mcp.growthkit.tools | HTTPS enforced | 301 | https://mcp.growthkit.tools/ |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
place_call Place Call (app-private) ~111
APP-PRIVATE: initiates a click-to-call to one lead from the user's own verified caller ID. Not model-callable (hidden via _meta.ui.visibility:["app"]). Invoked only by the lead-call-card iframe when the human clicks ☎ Anrufen. The gk_ session token is taken server-side; the app passes campaign_lead_id only.
| Name | Type | Req | Description |
|---|---|---|---|
| campaign_lead_id | string | yes | ID of the campaign lead to call (campaign_lead_id from show_callable_leads' structuredContent). |
No output schema declared.
No examples provided.
restoreVersion Restore Memory Version ~62
Restore a memory to a previous version. Works for both existing and deleted memories. Use version_id from getHistory or listDeleted results.
| Name | Type | Req | Description |
|---|---|---|---|
| version_id | string | yes | The version ID (restore_id) to restore to. Get this from getHistory or listDeleted. |
No output schema declared.
No examples provided.
save_call_outcome Save Call Outcome (app-private) ~148
APP-PRIVATE: saves the post-call disposition / note / next action for one call. Not model-callable (hidden via _meta.ui.visibility:["app"]). Invoked only by the lead-call-card iframe after a call. The gk_ session token is taken server-side; the app passes call_log_id (from place_call) plus optional disposition / notes / next_action.
| Name | Type | Req | Description |
|---|---|---|---|
| call_log_id | string | yes | call_log_id returned by place_call in its structuredContent. |
| disposition | string | – | Optional call disposition. |
| next_action | object | – | Optional follow-up reminder (typically for a callback disposition). |
| notes | string | – | Optional free-text note about the call. |
No output schema declared.
No examples provided.
scoreLeads Lead Scoring: Run ~213
Trigger lead scoring against ICP for this user's CRM companies. Scores each (company, contact) pair on 4 dimensions (industry 35%, employees 25%, geo 20%, seniority 20%) with missing-data renormalization. Use mode='full' for all companies, 'delta' for new/changed since last run, 'company_ids' for specific IDs. Persists to lead_scores table; read results via getTopLeads. Returns counts and per-user summary. Requires Pro plan (active or trialing). Write-operation — scores are persisted to lead_scores table.
| Name | Type | Req | Description |
|---|---|---|---|
| company_ids | array | – | CRM company IDs to score. Required and only used when mode='company_ids'. Max 100 recommended per call. |
| mode | string | yes | Scoring scope. 'full' scores all companies (slow for >1k). 'delta' scores only companies updated since last run or not yet scored (recommended for routine updates). 'company_ids' scores a specific li… |
No output schema declared.
No examples provided.
searchMemory Search Memory ~169
Search long-term memory using semantic similarity. ALWAYS SEARCH BEFORE ANSWERING marketing/strategy questions. Use short, specific keywords as queries. Available chapters: icp, strategy, campaigns, analytics, brand, competitors, learnings, general, pipeline, signals, playbook. TAG FILTERING: Memories are auto-tagged. Use metadata_filter with tags key to filter (e.g. metadata_filter: { chapter: 'campaigns', tags: 'linkedin' }).
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results. Default: 10. |
| match_threshold | number | – | Min similarity (0-1). Default: 0.5. |
| metadata_filter | object | – | Filter by metadata. Use chapter to search within a specific chapter. |
| query | string | yes | Search keywords — short and specific. |
No output schema declared.
No examples provided.
sendNotification Send Notification ~107
Send a notification to a team member. First use listTeam to find the recipient. For 2-person teams, the recipient is auto-resolved.
| Name | Type | Req | Description |
|---|---|---|---|
| broadcast | boolean | – | If true, sends to ALL team members. Default: false. |
| context | object | – | Optional context, e.g. {chapter: 'icp'}. |
| message | string | yes | The notification message to send. |
| to_prefix | string | – | Recipient's token_prefix or display_name from listTeam. |
No output schema declared.
No examples provided.
setTaskWeights Set Task Weights ~128
Set the workspace effort weights (constraint vs non-constraint lane) and optional display labels. Re-stamps open tasks so their ICE re-ranks.
| Name | Type | Req | Description |
|---|---|---|---|
| label_constraint | string | – | Optional display label for the constraint lane (e.g. 'Engineering'). |
| label_nonconstraint | string | – | Optional display label for the non-constraint lane (e.g. 'Design'). |
| w_constraint | number | yes | Weight for the constraint (bottleneck) effort lane in the ICE score. |
| w_nonconstraint | number | yes | Weight for the non-constraint effort lane in the ICE score. |
No output schema declared.
No examples provided.
setWorkingMemory Working Memory: Set ~330
Store structured state for the current chat session. Use this to persist data that must survive history compression — wizard fields, suggestion lists, active entities. Three kinds: 'wizard' (multi-turn field collection), 'working_set' (ephemeral suggestion lists with TTL), 'pinned_entity' (durable context). Call this AFTER the user confirms a value, BEFORE moving to the next step. The state object replaces (not merges) — fetch first if you need to merge.
| Name | Type | Req | Description |
|---|---|---|---|
| key | string | yes | Logical identifier within a kind. Examples: 'campaign_briefing', 'lead_candidates', 'active_campaign'. Use snake_case. |
| kind | string | yes | wizard = multi-turn field collection. working_set = ephemeral suggestion lists with TTL. pinned_entity = durable context across turns. |
| session_id | string | yes | The current chat session_id. REQUIRED. Comes from the conversation context. |
| state | object | yes | The full state object to store. Replaces any previous state for this (kind, key). Schema is free-form but conventions: wizard = { fields, required, collected, current_step }; working_set = { items, c… |
| status | string | – | Default 'active'. Set to 'completed' when a wizard finishes successfully (triggers completed_at timestamp). |
| ttl_turns | integer | – | Optional TTL in user-turns. After this many turns, the record auto-expires. NULL/omit = permanent (typical for wizard and pinned_entity). Use 5 for working_set / suggestion lists. |
No output schema declared.
No examples provided.
show_callable_leads ☎ Show Callable Leads ~186
Render an interactive call card of leads that have a phone number, each with a ☎ Anrufen button. The HUMAN user clicks a button to place a click-to-call from their own verified caller ID. This tool ONLY displays the card — it never places a call itself, and there is no model-callable call tool (UWG § 7: calls are human-initiated only). Optionally scope to one campaign_id; omit it to aggregate all callable leads across the user's campaigns. Use when the user asks to see or call leads (e.g. "zeig mir anrufbare Leads", "welche Leads kann ich anrufen").
| Name | Type | Req | Description |
|---|---|---|---|
| campaign_id | string | – | Optional campaign UUID (from listCampaigns). Omit to aggregate callable leads across all campaigns. |
| limit | integer | – | Max leads to render. Default 50, max 100. |
No output schema declared.
No examples provided.
toggleStep Toggle Step ~129
Check off or re-open a single step in a task's checklist. Provide the task `id` and the `step_id` of the step to toggle. Omit `done` to flip the step's current state; set done=true/false to force a specific state (idempotent). Use when the user completes or reopens a checklist item on a task that has steps.
| Name | Type | Req | Description |
|---|---|---|---|
| done | boolean | – | Omit to flip the current state. |
| id | string | yes | Task UUID. |
| step_id | string | yes | ID of the step to toggle (from the task's steps). |
No output schema declared.
No examples provided.
updateCampaign Campaign: Update ~304
Update fields on an existing campaign. Pass only the fields to change.
| Name | Type | Req | Description |
|---|---|---|---|
| campaign_id | string | yes | ID of the campaign to update (from listCampaigns). |
| channels | array | – | Outreach channels for this campaign. |
| end_date | string | – | Optional ISO date YYYY-MM-DD. Null = open-ended. |
| icp_snapshot | object | – | Frozen ICP for this campaign. May be a narrowed variant of the global ICP. |
| messaging_angle | string | – | The hook in the first email/message — the news/trend/insight that earns the read. |
| name | string | – | Short campaign label, 3-200 chars. |
| notes | string | – | Optional internal notes about the campaign. |
| offer | string | – | The concrete CTA, NOT the product name. E.g. 'Free 30-day pilot'. |
| pain_hypothesis | string | – | ONE sentence stating the specific pain this campaign assumes the persona has. |
| persona_snapshot | object | – | Frozen target persona for this campaign. |
| product_snapshot | object | – | Frozen product info. Schema: { name, description, value_props[], differentiators[], pricing_hint }. |
| start_date | string | – | ISO date YYYY-MM-DD. |
| status | string | – | Campaign status: draft | active | paused | completed | archived. |
| success_metric | object | – | { type: 'replies'|'demos'|'sqls'|'pipeline_eur', target: number } |
No output schema declared.
No examples provided.
updateCampaignLead Campaign: Update Lead ~172
Update fields on an existing campaign lead. Pass lead_id (UUID from listCampaignLeads) and an updates object with only the fields to change. Use this to mark leads as rejected, manually correct enrichment data, or attach custom metadata. Setting lifecycle_stage='rejected' REQUIRES rejected_reason in the same call. The metadata field is shallow-merged into existing metadata jsonb — existing keys are preserved unless overwritten by the same key. Score/dim_*/icp_version_hash are NOT writable here (those come from scoreLeads). crm_external_id/crm_synced_at are NOT writable either (CRM-Sync owns those).
| Name | Type | Req | Description |
|---|---|---|---|
| lead_id | string | yes | UUID of the campaign_lead to update |
| updates | object | yes | Object with fields to change. metadata is shallow-merged. |
No output schema declared.
No examples provided.
updateMemory Update Memory ~135
Update content or metadata of a stored memory. Use to enrich, fix, or reclassify. You MUST provide a change_reason explaining WHAT changed and WHY. The reason is stored in the version history audit log.
| Name | Type | Req | Description |
|---|---|---|---|
| change_reason | string | yes | REQUIRED: Why this memory is being updated, e.g. 'Added Q2 metrics', 'Fixed company name', 'User requested update'. Stored in audit log. |
| embedding_id | string | yes | ID of the memory to update. |
| new_content | string | – | Updated text content. |
| new_metadata | object | – | Optional metadata to replace, e.g. chapter or tags. |
No output schema declared.
No examples provided.
updateTask Update Task ~225
Update fields of a task. Partial update; status='done' sets done_at automatically. ice_score recomputes when impact/confidence/effort change.
| Name | Type | Req | Description |
|---|---|---|---|
| bucket | string | – | Time horizon: now | next | later | follow-up. |
| confidence | number | – | ICE confidence, 0-1 (probability the impact materializes). |
| detail | string | – | Optional longer description of the task. |
| effort_constraint | integer | – | Effort on the bottleneck lane (see workspace label_constraint). |
| effort_nonconstraint | integer | – | Effort on the non-bottleneck lane. |
| id | string | yes | ID of the task to update (from listTasks). |
| impact | integer | – | ICE impact, 1-10 (higher = more impact). |
| owner | string | – | Assignee (free text). |
| status | string | – | New status: open | in_progress | done | dropped. |
| steps | array | – | Replace the task's checklist. Omit to leave unchanged. |
| title | string | – | Optional new task title. |
No output schema declared.
No examples provided.
uploadDocument Upload Document ~136
Upload a file to GrowthKit document storage. Optionally extracts text and embeds insights.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Optional storage category. |
| chapter | string | – | Optional memory chapter to associate extracted insights with. |
| description | string | – | Optional short description of the document. |
| extract_insights | boolean | – | If true, extract text and embed insights into memory. Default: false. |
| file_base64 | string | yes | Base64-encoded file content. |
| filename | string | yes | Filename with extension. |
| mime_type | string | yes | MIME type. |
| title | string | – | Optional document title. Defaults to the filename. |
No output schema declared.
No examples provided.
verifyEmail Verify Email ~34
Check if an email is deliverable. Use before outreach.
| Name | Type | Req | Description |
|---|---|---|---|
| string | yes | Email address to verify for deliverability. |
No output schema declared.
No examples provided.
What is the GrowthKit Revenue Intelligence MCP server?
GrowthKit Revenue Intelligence is an MCP server listed in the public MCP registry as tools.growthkit/revenue-intelligence. Sales intelligence for B2B SMEs, lead scoring, ICP fit, CRM enrichment & writeback. This page covers its hosted endpoint (https://mcp.growthkit.tools).
Is the GrowthKit Revenue Intelligence MCP server safe to use?
GrowthKit Revenue Intelligence scores 34 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the GrowthKit Revenue Intelligence MCP server expose?
GrowthKit Revenue Intelligence exposes 66 tools: embedMemory, searchMemory, listMemories, updateMemory, deleteMemories, and 61 more. Their descriptions and schemas cost roughly 7,921 tokens of context every time the server is loaded.
Does the GrowthKit Revenue Intelligence MCP server require authentication?
No. We connected to GrowthKit Revenue Intelligence without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the GrowthKit Revenue Intelligence MCP server still maintained?
GrowthKit Revenue Intelligence is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.