{"name":"moltline-humanizer","description":"Voice-matching editor for AI drafts. Free: ai_tell_scan (find AI-isms with evidence), voice_fingerprint (metric profile from writing samples), burstiness_report. Premium: humanize_plan (rewrite brief with measurable targets) and verify_rewrite (prove the rewrite moved toward the voice). This is...","url":"https://mcp.moltlinestudio.com/humanizer","transport":"streamable-http","homepage":"https://moltlinestudio.com/servers.html","serverInfo":{"name":"moltline-humanizer","version":"1.1.0"},"toolCounts":{"total":5,"free":3,"premium":2},"protocolVersion":"2025-11-25","protocolVersions":["2024-11-05","2025-03-26","2025-06-18","2025-11-25"],"pricing":{"freeTier":{"tools":3,"price":"0","currency":"USD","description":"Free forever. No account, no registration and no credentials are required to call them."},"details":"https://moltlinestudio.com/.well-known/pricing","terms":"https://moltlinestudio.com/terms.html","agentPayment":{"protocol":"x402","resource":"https://moltlinestudio.com/api","network":"eip155:8453","asset":"USDC","amount":"19000000","discovery":"https://moltlinestudio.com/.well-known/x402","description":"GET or POST the resource to receive an HTTP 402 carrying a machine-readable payment demand; retry with the transaction hash in the X-PAYMENT header and the licence key is returned in the response."},"premium":{"tools":2,"plan":"All-Access","price":"19.00","currency":"USD","period":"month","description":"One licence key unlocks the premium tools on every Moltline server. Billed monthly, cancellable at any time.","purchaseUrl":"https://moltlinestudio.com/#allaccess"}},"authentication":{"required":false},"tools":[{"name":"ai_tell_scan","description":"Scan a draft for the measurable tells of AI-generated prose. FREE.\n\nFlags stock phrases (with exact quotes), structural reflexes, uniform\nsentence rhythm, em-dash overuse, and hedging boilerplate — every flag\ncites the actual text. Typical input {\"text\": \"<draft>\"} returns\n{\"reads_human_score\": 0-100, \"metrics\": {\"burstiness\": ...,\n\"avg_sentence_len\": ..., ...}, \"evidence\": [{\"type\": \"stock_phrase\",\n\"quote\": \"...\"}], \"note\": \"...\"}.\n\nUse for a first read on whether a draft carries machine-writing signals.\nReports measurable patterns, not a verdict on who wrote the text, and must\nnot be used to accuse a person of anything. Not for rhythm detail\n(burstiness_report) or for a rewrite brief (humanize_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\": \"empty text\"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.","tier":"free","inputSchema":{"additionalProperties":false,"properties":{"text":{"type":"string","description":"The draft to scan — at least one full sentence of plain text."}},"required":["text"],"type":"object"}},{"name":"voice_fingerprint","description":"Build a measurable voice profile from samples of a person's real writing. FREE.\n\nFeed it 2+ samples (emails, posts, essays — 150+ words total) and use\nthe result with humanize_plan / verify_rewrite. Typical input\n{\"samples\": [\"<email text>\", \"<blog post>\"]} returns {\"label\":\n\"my-voice\", \"target_metrics\": {\"avg_sentence_len\": ..., \"burstiness\":\n..., ...}, \"favorite_words\": [...], \"signature_habits\": [\"...\"],\n\"words_analyzed\": N}.\n\nUse on samples the person actually wrote, to build a target profile. Not\nfor scoring an unknown draft (ai_tell_scan) and not on text the person did\nnot write. 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\": \"need 150+ words of real writing across the samples\"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.","tier":"free","inputSchema":{"additionalProperties":false,"properties":{"samples":{"items":{"type":"string"},"type":"array","description":"List of real writing samples by the same person; 150+\nwords combined across all samples."},"label":{"default":"my-voice","type":"string","description":"Optional name for this voice profile. Default \"my-voice\"."}},"required":["samples"],"type":"object"}},{"name":"burstiness_report","description":"Map a draft's sentence rhythm and find where it goes flat. FREE.\n\nReports per-sentence lengths, the burstiness coefficient, and runs of\nsimilar-length sentences. Typical input {\"text\": \"<draft>\"} returns\n{\"sentence_lengths\": [12, 14, 13, 5, 28], \"burstiness\": 0.52,\n\"flat_runs\": [{\"sentences\": \"1-3\", \"lengths\": [12, 14, 13]}],\n\"tip\": \"...\"}.\n\nUse when prose reads flat and sentence-length pattern is the suspect. Not\nfor a full inventory of tells (ai_tell_scan). 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\": \"need 3+ sentences\"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.","tier":"free","inputSchema":{"additionalProperties":false,"properties":{"text":{"type":"string","description":"The draft to analyze; needs at least 3 sentences."}},"required":["text"],"type":"object"}},{"name":"humanize_plan","description":"Produce a precise rewrite brief that de-AIs a draft, with numeric targets. PREMIUM (license).\n\nLists every flagged tell with its fix and sentence-rhythm surgery\ntargets; when a voice_fingerprint result is supplied, adds numeric\ntargets to hit that person's voice. Apply the brief with your agent,\nthen confirm with verify_rewrite. Typical input {\"text\": \"<draft>\",\n\"fingerprint\": <voice_fingerprint result>} returns {\"current_score\":\n0-100, \"edit_list\": [\"...\"], \"numeric_targets\": {...}, \"process\": ...,\n\"integrity_note\": ...}.\n\nUse after a scan has identified what to fix; returns a brief, not\nrewritten prose. Not for checking whether a rewrite worked\n(verify_rewrite). 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.","tier":"premium","inputSchema":{"additionalProperties":false,"properties":{"text":{"type":"string","description":"The AI draft to plan a rewrite for."},"fingerprint":{"additionalProperties":true,"default":null,"type":"object","description":"Optional voice profile object exactly as returned by\nvoice_fingerprint; omit for a style-only pass."}},"required":["text"],"type":"object"}},{"name":"verify_rewrite","description":"Verify a rewrite actually improved: score delta, meaning check, voice distance. PREMIUM (license).\n\nCompares reads-human score before/after, a meaning-preservation proxy,\nand (with a fingerprint) numeric distance to the target voice. Typical\ninput {\"original\": \"<draft>\", \"rewrite\": \"<edited draft>\"} returns\n{\"score_before\": N, \"score_after\": N, \"score_delta\": N,\n\"content_word_retention_pct\": N, \"remaining_tells\": [...],\n\"verdict\": \"Improved — ship it\" | \"Marginal — ...\"}.\n\nUse only when both the before and the after text are available. Not for\nscoring a single draft (ai_tell_scan). 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\": \"both texts must be non-empty\"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.","tier":"premium","inputSchema":{"additionalProperties":false,"properties":{"original":{"type":"string","description":"The draft before editing."},"rewrite":{"type":"string","description":"The same content after the humanize_plan edits."},"fingerprint":{"additionalProperties":true,"default":null,"type":"object","description":"Optional voice profile object exactly as returned by\nvoice_fingerprint, to measure distance to the target voice."}},"required":["original","rewrite"],"type":"object"}}],"resources":[],"prompts":[]}