Strategic Flow MCP
Audit B2B SaaS lifecycle emails with the 7-point Decision Friction Model: score, patterns, fixes.
Should I use this
Quality & Safety
A
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
~1,485Tokens (tool definitions)
~9.5 KBTypical response size
Moderate attention impact (1.16% of 128k context)
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"mcp": {
"url": "https://mcp.strategicflow.tech/api/mcp"
}
}
}Remote endpoints
https://mcp.strategicflow.tech/api/mcpstreamable-httpWhat it can do
Tool inventory
Tools (2)
🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
⚪ask_strategic_flow(api_key, question)
Ask Strategic Flow about email conversion, funnel friction, the Decision Friction Model methodology, or Strategic Flow Tech services.
Input Schema
{
"type": "object",
"properties": {
"api_key": {
"type": "string",
"minLength": 1,
"description": "Required API key from /api/mcp/claim-key."
},
"question": {
"type": "string",
"minLength": 1,
"description": "Your question about email conversion, funnel friction, the Decision Friction Model methodology, or Strategic Flow Tech services."
}
},
"required": [
"api_key",
"question"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪audit_email(api_key, subject, preview_text, body, email_type, ...)
Audit a SaaS lifecycle email using the 7-point Decision Friction Model and return a structured conversion diagnosis.
Input Schema
{
"type": "object",
"properties": {
"api_key": {
"type": "string",
"minLength": 1,
"description": "Required API key from /api/mcp/claim-key."
},
"subject": {
"type": "string",
"minLength": 1,
"description": "The email subject line to audit."
},
"preview_text": {
"description": "Optional preview or preheader text shown beside the subject.",
"type": "string"
},
"body": {
"type": "string",
"minLength": 1,
"description": "The full email body, including its copy and calls to action."
},
"email_type": {
"description": "Optional lifecycle context, such as \"trial onboarding\", \"changelog\", or \"re-engagement\".",
"type": "string"
},
"audience": {
"description": "Optional description of the intended email audience.",
"type": "string"
},
"desired_action": {
"description": "Optional action the sender wants the reader to take.",
"type": "string"
}
},
"required": [
"api_key",
"subject",
"body"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"result_type": {
"type": "string",
"enum": [
"structured",
"unstructured",
"rate_limited"
],
"description": "Whether the diagnosis was parsed into validated model fields."
},
"overall_score": {
"description": "Structural email score from 0/10 to 10/10.",
"type": "string",
"pattern": "^(?:10(?:\\.0+)?|[0-9](?:\\.\\d+)?)\\/10$"
},
"primary_friction_pattern": {
"description": "The main Decision Friction Model pattern found.",
"type": "string",
"enum": [
"Filing Label Subject",
"Feature-First Bias",
"Consequence-After-Caveat",
"Missing Visual Hierarchy",
"Implied Transformation",
"Buried or Zero Social Proof",
"Guest Language CTA"
]
},
"primary_friction_pattern_definition": {
"description": "Plain-language definition of the primary pattern.",
"type": "string",
"minLength": 1
},
"primary_friction_pattern_evidence": {
"description": "Exact problematic phrase from this email showing the primary pattern.",
"type": "string",
"minLength": 1
},
"primary_friction_pattern_impact": {
"description": "Concrete reason the primary pattern can reduce response or conversion.",
"type": "string",
"minLength": 1
},
"secondary_friction_pattern": {
"description": "A secondary Decision Friction Model pattern, if present.",
"anyOf": [
{
"type": "string",
"enum": [
"Filing Label Subject",
"Feature-First Bias",
"Consequence-After-Caveat",
"Missing Visual Hierarchy",
"Implied Transformation",
"Buried or Zero Social Proof",
"Guest Language CTA"
]
},
{
"type": "string",
"const": "None identified"
}
]
},
"secondary_friction_pattern_definition": {
"description": "Plain-language definition of the secondary pattern, when present.",
"type": "string",
"minLength": 1
},
"secondary_friction_pattern_evidence": {
"description": "Exact problematic phrase from this email showing the secondary pattern.",
"type": "string",
"minLength": 1
},
"secondary_friction_pattern_impact": {
"description": "Concrete reason the secondary pattern can reduce response or conversion.",
"type": "string",
"minLength": 1
},
"short_diagnosis": {
"description": "Brief explanation of the core structural conversion friction.",
"type": "string",
"minLength": 1
},
"recommended_structural_change": {
"description": "The highest-impact structural change to make.",
"type": "string",
"minLength": 1
},
"cta_diagnosis_direction": {
"description": "Diagnosis and direction for the call to action.",
"type": "string",
"minLength": 1
},
"cta_pattern": {
"description": "The Decision Friction Model pattern that best describes the CTA.",
"anyOf": [
{
"type": "string",
"enum": [
"Filing Label Subject",
"Feature-First Bias",
"Consequence-After-Caveat",
"Missing Visual Hierarchy",
"Implied Transformation",
"Buried or Zero Social Proof",
"Guest Language CTA"
]
},
{
"type": "string",
"const": "None identified"
}
]
},
"cta_pattern_definition": {
"description": "Plain-language definition of the CTA pattern.",
"type": "string",
"minLength": 1
},
"cta_exact_line": {
"description": "Exact CTA line from the email, or an explicit no-CTA statement.",
"type": "string",
"minLength": 1
},
"cta_weakness": {
"description": "Concrete explanation of why this CTA is weak.",
"type": "string",
"minLength": 1
},
"cta_rewrite": {
"description": "A specific rewritten CTA for this email.",
"type": "string",
"minLength": 1
},
"raw_response": {
"description": "The upstream diagnosis when it cannot be safely parsed into validated fields.",
"type": "string",
"minLength": 1
},
"message": {
"description": "Friendly usage or next-step message when no diagnosis is returned.",
"type": "string",
"minLength": 1
},
"original_subject": {
"description": "The original email subject sent for rebuilding.",
"type": "string",
"minLength": 1
},
"audit_record_id": {
"description": "Identifier of the stored upstream audit record.",
"type": "string",
"minLength": 1
},
"original_score": {
"description": "Original structural email score from 0 to 10 for members.",
"type": "number",
"minimum": 0,
"maximum": 10
},
"rebuilt_subject": {
"description": "The rebuilt email subject.",
"type": "string",
"minLength": 1
},
"rebuilt_score": {
"description": "Rebuilt structural email score from 0 to 10 for members.",
"type": "number",
"minimum": 0,
"maximum": 10
},
"rebuilt_body": {
"description": "The rebuilt email body.",
"type": "string",
"minLength": 1
},
"rebuilt_cta": {
"description": "The rebuilt call to action.",
"type": "string",
"minLength": 1
},
"variants": {
"description": "Alternative rebuild variants returned by the audit service.",
"type": "array",
"items": {}
},
"changes": {
"description": "Changes made by the audit service.",
"type": "array",
"items": {}
},
"structured_fixes": {
"description": "Structured email fixes returned by the audit service.",
"type": "array",
"items": {
"type": "object",
"properties": {
"fix_id": {},
"field_name": {},
"before_value": {},
"after_value": {},
"pattern": {},
"element": {},
"why": {}
},
"required": [
"fix_id",
"field_name",
"before_value",
"pattern",
"element",
"why"
],
"additionalProperties": {}
}
},
"audits_used": {
"description": "Number of audits used after this request.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"audits_remaining": {
"description": "Number of audits remaining after this request.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"upgrade_url": {
"description": "Upgrade URL returned by the audit service.",
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
]
}
},
"required": [
"result_type"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Community
Evidence
Recent observations
verifiedversion not recorded2 tools