initialize did not return a supported protocolVersion and serverInfo.name.
Fail
Lists tools
tools/list did not return a tool.
Not measured
Current protocol
No negotiated protocol version.
Pass
HTTPS
The endpoint URL is https.
Performance
Not measured
Fast (p50)
Median latency 492 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.
Not measured
Consistent (p95)
95th percentile 492 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.
Not measured
Reliable (uptime)
1 of 2 attempts returned a tool list in 30 days (50%). The bar is 99%. Need at least 30 samples.
Not measured
Stable tool list
Fewer than two successful probes in 30 days, so tool-list stability is not measured.
Access
Not measured
Open access
The latest probe was timeout, so open access is not measured.
Not measured
Standard auth
Auth is not required, so the OAuth metadata check does not apply.
Not measured
Free tier cited
No publisher quote has been checked.
Tools
Pass
Tools described
Every tool description is at least 20 characters.
Pass
Valid input schemas
Every inputSchema is a JSON Schema object.
Pass
Parameters documented
16 of 16 parameters have a description (100%). The bar is 80%.
Pass
Safety hints
Every tool sets readOnlyHint or destructiveHint.
Publisher
Pass
Verified namespace
Listed in the Official MCP Registry.
Pass
Website matches publisher
The website host matches the reverse-domain namespace.
Pass
Source repo linked
A repository URL is on file.
Not measured
Repo owner matches
This namespace is not an io.github login, so the owner comparison does not apply.
Pass
Recently updated
Updated 2026-09-08T14:31:36.308004Z, within 180 days.
Not measured
Open-source licence
The GitHub licence lookup has not returned an OSI result yet.
Start using Moltline Outbound Engine
Connect to this server
Choose your client, copy the configuration, then enable the server in your client’s MCP settings.
Run this command in your terminal, then restart Claude Code.
Claude Code
claude mcp add --transport http moltline-outbound-engine https://mcp.moltlinestudio.com/outbound
Capabilities
Tools 8
audit_copy
Audit outreach copy for spam triggers and deliverability risks. FREE. Checks spam-trigger phrases, length, structure, caps, links, and personalization signals. Typical input {"subject": "Quick question", "body": "<email text>"} returns {"score": 0-100, "findings": ["Spam-trigger phrases: ...", "Long for cold outreach (200 words; aim 50-125)"], "note": "..."}. Use on the body of an outreach message. Not for the subject line alone (subject_line_scorer) and not for the send schedule (sequence_planner). Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Discovered get_free_skill
Load a product's free gateway skill with its complete instructions. FREE. Typical input {"slug": "linkedin-outreach-pro"} returns {"slug": ..., "skill": "<skill name>", "instructions": "<full skill text>"}. Returns exactly one skill - the product's free gateway skill - chosen automatically from the slug, with no plan required. Use when the caller wants usable instructions immediately. Not for the product's other skills: those are named and need get_full_skill with a skill_name, which requires a paid plan. Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": "<what is wrong and how to fix it>"} (for example {"error": "unknown slug '<value>'. Use list_products."}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Discovered get_full_product
Load one product in full: its persona plus every paid skill. PREMIUM (license). Typical input {"slug": "linkedin-outreach-pro"} returns {"slug": ..., "name": ..., "persona": "<persona text>", "skills": [{"name": ..., "instructions": ...}, ...], "free_skill": {...}}. Returns persona plus every skill for one product. Use when the caller wants the whole product. Not for a single skill (get_full_skill) and not for a free look, which list_products and get_free_skill provide with no plan. Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": "<what is wrong and how to fix it>"} (for example {"error": "unknown slug '<value>'"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Discovered get_full_skill
Load one paid skill's complete instructions from a product. PREMIUM (license). Typical input {"slug": "linkedin-outreach-pro", "skill_name": "outreach-sequence-writer"} returns {"slug": ..., "skill": ..., "instructions": "<full skill text>"}. Returns one named skill, selected by skill_name. Use when the caller wants one specific paid skill. Not for the free gateway skill, which get_free_skill returns with no plan, and not for every skill at once (get_full_product). Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": "<what is wrong and how to fix it>"} (for example {"error": "unknown slug '<value>'"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Discovered list_products
List the 7 outbound products with their included skills. FREE. Takes no arguments. Returns a list of product objects, each {"slug": "linkedin-outreach-pro", "name": ..., "tagline": ..., "skills": ["outreach-sequence-writer", ...], "free_skill": "connection-request-rewriter"}. Use the returned slug values with get_free_skill, get_full_product, or get_full_skill. Returns metadata only - no persona text and no skill instructions. Use when the caller wants to see what this server covers. Not for keyword search across the whole 138-product catalog, which the catalog server's search_catalog does, and not for instructions the caller can act on (get_free_skill). Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Discovered sequence_planner
Plan an outreach cadence with expanding gaps and per-touch purposes. FREE. Spaces N touches across D days, alternating channels. Typical input {"touches": 5, "days": 14, "channels": ["email", "linkedin"]} returns {"days": 14, "plan": [{"touch": 1, "day": 0, "channel": "email", "purpose": "open with a specific, researched reason"}, ...], "rule": "..."}. Use when cadence and per-touch purpose are the question. Not for the wording of any single message (audit_copy). Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Discovered subject_line_scorer
Score and rank up to 20 email subject lines, best first. FREE. Scores 0-100 on length, spam triggers, caps, personalization merge fields, and curiosity cues. Typical input {"subjects": ["Quick question about {{company}}", "ACT NOW!!!"]} returns {"ranked": [{"subject": ..., "score": 92, "notes": ["personalized (+)", "question format"]}, ...]}. Use when several subject lines need ranking against deliverability and curiosity signals. Not for article headlines, which the creator server's headline_analyzer ranks, and not for message bodies (audit_copy). Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Discovered utm_builder
Build a UTM-tagged URL for campaign tracking. FREE. Typical input {"url": "https://example.com/pricing", "source": "newsletter", "medium": "email", "campaign": "spring-launch"} returns {"tagged_url": "https://example.com/pricing?utm_source=newsletter& utm_medium=email&utm_campaign=spring-launch"}. Use to build one tagged tracking URL. Not for analyzing campaign results and not for anything that belongs in the message body (audit_copy). Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": "<what is wrong and how to fix it>"} (for example {"error": "url must start with http(s)://"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.