Free B2B funnel diagnostic for small medical and legal practices. Finds the leaks.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use this when a business owner wants to know where they are losing inbound leads or opportunities, wants their acquisition funnel diagnosed, or asks how much their slow response time and weak follow-up are costing them. Returns six scored leak categories (response speed, capture, follow-up, staff overload, data exposure, offer clarity), the single biggest leak, a conservative cost-of-delay estimate with stated assumptions, and prioritised actions. Do NOT use this for a personal fitness or lifestyle question — that is a different tool. Do not use it to produce guaranteed revenue claims or medical, legal, or clinical outcomes; this is a business diagnostic only. Every estimate is a model, not a promise, and the assumptions are returned so they can be corrected.
0-10. How reliably stale leads and no-shows get followed up.
The prospect's industry. Drives which offer language and recommendations lead.
True if there is a documented before/after case study.
0-10. How clearly the offer reads as a specific business outcome.
Who handles follow-up today.
0-10. How fast a new inquiry gets a human response.
0-10. How much repetitive intake work the front desk absorbs.
True if the site uses lead-capture forms.
0-10. How well protected sensitive client/patient data is today.
Inbound inquiries per month — calls, forms, DMs, referrals, combined.
0-1. What share of inbound inquiries currently become a booked customer.
Average dollar value of one booked customer.
True if sensitive client or patient data currently flows into generic cloud AI tools.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http growth-audit https://hivemindintelligence.com/api/mcp
Use this when a business owner wants to know where they are losing inbound leads or opportunities, wants their acquisition funnel diagnosed, or asks how much their slow response time and weak follow-up are costing them. Returns six scored leak categories (response speed, capture, follow-up, staff overload, data exposure, offer clarity), the single biggest leak, a conservative cost-of-delay estimate with stated assumptions, and prioritised actions. Do NOT use this for a personal fitness or lifestyle question — that is a different tool. Do not use it to produce guaranteed revenue claims or medical, legal, or clinical outcomes; this is a business diagnostic only. Every estimate is a model, not a promise, and the assumptions are returned so they can be corrected.
| Argument | Type | Description |
|---|---|---|
| followUp* | integer | 0-10. How reliably stale leads and no-shows get followed up. |
| vertical* | string | The prospect's industry. Drives which offer language and recommendations lead. |
| hasCaseStudy* | boolean | True if there is a documented before/after case study. |
| offerClarity* | integer | 0-10. How clearly the offer reads as a specific business outcome. |
| followUpOwner* | string | Who handles follow-up today. |
| responseSpeed* | integer | 0-10. How fast a new inquiry gets a human response. |
| staffOverload* | integer | 0-10. How much repetitive intake work the front desk absorbs. |
| usesLeadForms* | boolean | True if the site uses lead-capture forms. |
| dataProtection* | integer | 0-10. How well protected sensitive client/patient data is today. |
| monthlyInquiries* | integer | Inbound inquiries per month — calls, forms, DMs, referrals, combined. |
| currentBookingRate* | number | 0-1. What share of inbound inquiries currently become a booked customer. |
| avgValuePerCustomer* | number | Average dollar value of one booked customer. |
| sensitiveDataInGenericAI* | boolean | True if sensitive client or patient data currently flows into generic cloud AI tools. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vertical",
"monthlyInquiries",
"currentBookingRate",
"avgValuePerCustomer",
"responseSpeed",
"followUp",
"offerClarity",
"staffOverload",
"dataProtection",
"followUpOwner",
"sensitiveDataInGenericAI",
"usesLeadForms",
"hasCaseStudy"
],
"properties": {
"followUp": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "0-10. How reliably stale leads and no-shows get followed up."
},
"vertical": {
"enum": [
"medical",
"legal",
"fitness",
"real_estate",
"agency",
"other"
],
"type": "string",
"description": "The prospect's industry. Drives which offer language and recommendations lead."
},
"hasCaseStudy": {
"type": "boolean",
"description": "True if there is a documented before/after case study."
},
"offerClarity": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "0-10. How clearly the offer reads as a specific business outcome."
},
"followUpOwner": {
"enum": [
"owner",
"staff",
"outsourced",
"nobody"
],
"type": "string",
"description": "Who handles follow-up today."
},
"responseSpeed": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "0-10. How fast a new inquiry gets a human response."
},
"staffOverload": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "0-10. How much repetitive intake work the front desk absorbs."
},
"usesLeadForms": {
"type": "boolean",
"description": "True if the site uses lead-capture forms."
},
"dataProtection": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "0-10. How well protected sensitive client/patient data is today."
},
"monthlyInquiries": {
"type": "integer",
"maximum": 100000,
"minimum": 0,
"description": "Inbound inquiries per month — calls, forms, DMs, referrals, combined."
},
"currentBookingRate": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "0-1. What share of inbound inquiries currently become a booked customer."
},
"avgValuePerCustomer": {
"type": "number",
"maximum": 1000000,
"minimum": 0,
"description": "Average dollar value of one booked customer."
},
"sensitiveDataInGenericAI": {
"type": "boolean",
"description": "True if sensitive client or patient data currently flows into generic cloud AI tools."
}
}
}Use this when you are on a discovery call with a prospect and need to run the Blank Spreadsheet Close, or when the prospect has told you what they need their system to do and what it is worth monthly. Takes the prospect's OWN words as rows and organizes them into a Feature / Priority / Would Pay sheet, then returns the next question to ask and, once the sheet is quantified, the close script. Do NOT fill in features the prospect did not state, do not assign priorities they did not give, and do not invent dollar amounts — the entire mechanism depends on the prospect filling in this themselves. Use this only when prospect-stated rows are available.
| Argument | Type | Description |
|---|---|---|
| rows* | array | The rows the prospect has actually filled in. |
| hasBudgetAuthority | boolean | True if the prospect has confirmed they can sign off on spend. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rows"
],
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"feature",
"priority"
],
"properties": {
"feature": {
"type": "string",
"maxLength": 300,
"minLength": 1,
"description": "The capability, in the prospect's own words. Do not paraphrase into consultant language."
},
"priority": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "1-10 importance, as the prospect stated it."
},
"verbatim": {
"type": "string",
"maxLength": 500,
"description": "Optional exact phrasing the prospect used, for the pitch later."
},
"wouldPay": {
"anyOf": [
{
"type": "number",
"maximum": 1000000,
"minimum": 0
},
{
"type": "null"
}
],
"description": "Monthly value the prospect stated. Leave null if they have not said a number yet — do not estimate one."
}
}
},
"description": "The rows the prospect has actually filled in."
},
"hasBudgetAuthority": {
"type": "boolean",
"description": "True if the prospect has confirmed they can sign off on spend."
}
}
}Use this when the user needs offer copy, a headline, a subheadline, a call to action, or landing-page language for a local AI systems engagement, or wants their existing copy checked against the rules. Returns growth-tied offer language built around the specific outcome plus mechanism plus time frame, and scans any supplied copy for prohibited claims. Do NOT use it for consumer fitness coaching copy — this is for business services. Do NOT produce guaranteed revenue, HIPAA-compliant, patient-outcome, or legal-outcome claims; those are prohibited and the tool will refuse them.
| Argument | Type | Description |
|---|---|---|
| vertical* | string | The prospect's industry. |
| timeFrame | string | Implementation time frame, e.g. '14-30 days' or '30 days'. Defaults to 30 days. |
| existingCopy | string | Existing headline or copy to check for prohibited claims and weak language. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vertical"
],
"properties": {
"vertical": {
"enum": [
"medical",
"legal",
"fitness",
"real_estate",
"agency",
"other"
],
"type": "string",
"description": "The prospect's industry."
},
"timeFrame": {
"type": "string",
"maxLength": 40,
"description": "Implementation time frame, e.g. '14-30 days' or '30 days'. Defaults to 30 days."
},
"existingCopy": {
"type": "string",
"maxLength": 2000,
"description": "Existing headline or copy to check for prohibited claims and weak language."
}
}
}Use this when a user asks whether their funnel fixes are actually working, wants to compare recent audits, or asks if progress is real. Returns up to five recent derived scores with the change between them. Do NOT use before the user has completed at least two audits — one data point is not a trend, and saying otherwise would be making it up. Only returns stored derived scores and the conservative estimate, never the raw business inputs.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many recent audits to include (1-10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1,
"description": "How many recent audits to include (1-10)."
}
}
}Use this ONLY when a business owner explicitly asks to talk to someone about a strategy call or a fixed-scope audit. Records name, email, company, and what they said they need, then creates a request for a human to follow up on. Do NOT use proactively, do NOT use as an upsell at the end of a free audit, and do NOT use it as a lead-capture step. There is no in-plugin purchase: the audit is a fixed-scope engagement booked directly, and this tool only records intent.
| Argument | Type | Description |
|---|---|---|
| name* | string | The contact's name. |
| need* | string | What they said the system needs to do, in their own words. This is what scopes the audit. |
| note | string | Optional message. Do not include patient or client identifiers, medical history, matter numbers, or payment details — those are rejected and not stored. |
| email* | string | The contact's email address, for a human to reply to. |
| company* | string | The company or practice name. |
| vertical* | string | The company's industry. |
| consentGranted* | boolean | Must be true. Confirms the user agreed to be contacted about a strategy call. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name",
"email",
"company",
"vertical",
"need",
"consentGranted"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "The contact's name."
},
"need": {
"type": "string",
"maxLength": 1000,
"minLength": 3,
"description": "What they said the system needs to do, in their own words. This is what scopes the audit."
},
"note": {
"type": "string",
"maxLength": 1000,
"description": "Optional message. Do not include patient or client identifiers, medical history, matter numbers, or payment details — those are rejected and not stored."
},
"email": {
"type": "string",
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
"description": "The contact's email address, for a human to reply to."
},
"company": {
"type": "string",
"maxLength": 160,
"minLength": 1,
"description": "The company or practice name."
},
"vertical": {
"enum": [
"medical",
"legal",
"fitness",
"real_estate",
"agency",
"other"
],
"type": "string",
"description": "The company's industry."
},
"consentGranted": {
"type": "boolean",
"const": true,
"description": "Must be true. Confirms the user agreed to be contacted about a strategy call."
}
}
}Use this when you need to decide whether a prospect is worth pushing a close on, needs nurturing, or should be let go. Scores six buying signals (filled spreadsheet, named dollar amount, budget authority, timeline under two weeks, urgent pain, warm intro) and returns a band with the specific next action. Do NOT use this to rank or judge people as human beings — it is a routing signal about deal readiness, and a low score means send something useful, not that the prospect is low quality. Do not use it to decide employment, credit, or anything outside a sales pipeline.
| Argument | Type | Description |
|---|---|---|
| warmIntro* | boolean | Came in through a warm introduction. |
| namedAmount* | boolean | The prospect named a specific dollar amount. |
| painIsUrgent* | boolean | The pain is urgent, not a nice-to-have. |
| filledSpreadsheet* | boolean | The prospect filled in the spreadsheet themselves. |
| hasBudgetAuthority* | boolean | The prospect has budget authority. |
| timelineUnderTwoWeeks* | boolean | Decision timeline is under two weeks. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"filledSpreadsheet",
"namedAmount",
"hasBudgetAuthority",
"timelineUnderTwoWeeks",
"painIsUrgent",
"warmIntro"
],
"properties": {
"warmIntro": {
"type": "boolean",
"description": "Came in through a warm introduction."
},
"namedAmount": {
"type": "boolean",
"description": "The prospect named a specific dollar amount."
},
"painIsUrgent": {
"type": "boolean",
"description": "The pain is urgent, not a nice-to-have."
},
"filledSpreadsheet": {
"type": "boolean",
"description": "The prospect filled in the spreadsheet themselves."
},
"hasBudgetAuthority": {
"type": "boolean",
"description": "The prospect has budget authority."
},
"timelineUnderTwoWeeks": {
"type": "boolean",
"description": "Decision timeline is under two weeks."
}
}
}Use this when a user asks what is stored, agrees to have their audit scores tracked, or asks to stop tracking. Stores the consent decision for derived funnel scores and, separately, for a strategy-call request. Only ever called in response to an explicit user decision — never proactively, and never as a default prompt at the end of a conversation.
| Argument | Type | Description |
|---|---|---|
| optOut | boolean | True to delete all stored data for this user and stop tracking. |
| storeAuditScores* | boolean | True to store derived funnel scores so progress can be tracked over time. |
| allowStrategyContact* | boolean | True to allow a strategy-call request to be stored and contacted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"storeAuditScores",
"allowStrategyContact"
],
"properties": {
"optOut": {
"type": "boolean",
"description": "True to delete all stored data for this user and stop tracking."
},
"storeAuditScores": {
"type": "boolean",
"description": "True to store derived funnel scores so progress can be tracked over time."
},
"allowStrategyContact": {
"type": "boolean",
"description": "True to allow a strategy-call request to be stored and contacted."
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 15, 2026.