Moltline Humanizer
Server Details
Find AI-isms with evidence and fingerprint a writing voice from samples. 3 of 5 free.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Server Listing
- moltline-mcp
Available Tools
5 toolsai_tell_scanAi Tell ScanARead-onlyIdempotentInspect
Scan a draft for the measurable tells of AI-generated prose. FREE.
Flags stock phrases (with exact quotes), structural reflexes, uniform sentence rhythm, em-dash overuse, and hedging boilerplate — every flag cites the actual text. Typical input {"text": ""} returns {"reads_human_score": 0-100, "metrics": {"burstiness": ..., "avg_sentence_len": ..., ...}, "evidence": [{"type": "stock_phrase", "quote": "..."}], "note": "..."}.
Use for a first read on whether a draft carries machine-writing signals. Reports measurable patterns, not a verdict on who wrote the text, and must not be used to accuse a person of anything. Not for rhythm detail (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": ""} (for example {"error": "empty text"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The draft to scan — at least one full sentence of plain text. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already set readOnlyHint, idempotentHint, and destructiveHint. The description adds significant value by detailing error handling ('never raises a protocol error — it returns {"error": ...}'), idempotency safety for retries, and the exact response structure. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single well-structured paragraph that front-loads the purpose, follows with a usage example, then usage guidelines, and ends with error behavior. Every sentence adds value; no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite only one input parameter, the description fully explains the return structure (reads_human_score, metrics, evidence, note) and error handling. The presence of an output schema is supplemented by clear documentation. The tool scope is simple and completely covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (text) with 100% schema coverage. The description adds meaning beyond the schema by providing a typical input example ('{"text": "<draft>"}') and clarifying input requirements ('at least one full sentence of plain text'). This aids correct invocation beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Scan') and resource ('draft') and clearly states the outcome ('measurable tells of AI-generated prose'). It distinguishes from siblings by explicitly naming alternative tools (burstiness_report, humanize_plan) and what those tools cover.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage context: 'Use for a first read on whether a draft carries machine-writing signals.' Also states when not to use: 'must not be used to accuse a person of anything' and lists alternative tools, satisfying the when/when-not/alternatives criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
burstiness_reportBurstiness ReportARead-onlyIdempotentInspect
Map a draft's sentence rhythm and find where it goes flat. FREE.
Reports per-sentence lengths, the burstiness coefficient, and runs of similar-length sentences. Typical input {"text": ""} returns {"sentence_lengths": [12, 14, 13, 5, 28], "burstiness": 0.52, "flat_runs": [{"sentences": "1-3", "lengths": [12, 14, 13]}], "tip": "..."}.
Use when prose reads flat and sentence-length pattern is the suspect. Not for 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": ""} (for example {"error": "need 3+ sentences"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The draft to analyze; needs at least 3 sentences. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by detailing error behavior: 'on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ...}' and that it always returns a requested error. It confirms read-only and idempotent behavior beyond the annotations, and explains what results look like. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise with 3 short paragraphs, each earning its place. It front-loads the purpose in the first sentence, then delivers a clear example, usage guidance, error handling, and safety guarantees—all in fewer than 100 words. No fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (single parameter, good annotations, provided output schema), the description is complete. It covers purpose, usage, behavior, error handling, and safety. The descriptions and sister names provide clear differentiation from siblings. There is no missing information for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by showing a typical input format with an example and specifying that the text needs at least 3 sentences, which is not fully captured by the schema's description. This additional context justifies a 4, though no detailed parameter metadata is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb-resource combination: 'Map a draft's sentence rhythm and find where it goes flat.' It immediately distinguishes itself from sibling tools like 'ai_tell_scan' by explicitly naming it as an alternative for a different use case. The example output further solidifies understanding.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance: 'Use when prose reads flat and sentence-length pattern is the suspect. Not for a full inventory of tells (ai_tell_scan).' This tells the agent exactly when to use this tool and when to choose a sibling instead. The retry safety note after error also clarifies correct usage patterns.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
humanize_planHumanize PlanARead-onlyIdempotentInspect
Produce a precise rewrite brief that de-AIs a draft, with numeric targets. PREMIUM (license).
Lists every flagged tell with its fix and sentence-rhythm surgery targets; when a voice_fingerprint result is supplied, adds numeric targets to hit that person's voice. Apply the brief with your agent, then confirm with verify_rewrite. Typical input {"text": "", "fingerprint": } returns {"current_score": 0-100, "edit_list": ["..."], "numeric_targets": {...}, "process": ..., "integrity_note": ...}.
Use after a scan has identified what to fix; returns a brief, not rewritten prose. Not for checking whether a rewrite worked (verify_rewrite). Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The AI draft to plan a rewrite for. | |
| fingerprint | No | Optional voice profile object exactly as returned by voice_fingerprint; omit for a style-only pass. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint false), the description adds critical behavioral traits: 'never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"}' and 'Every call is read-only and idempotent, so after correcting the input it is always safe to retry.' This explains error handling and retry safety, which annotations do not cover.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but not overly long. It is front-loaded with the main purpose in the first sentence. Each subsequent sentence adds useful detail (output fields, usage context, error behavior). There is no fluff, but it could be slightly more concise by combining some ideas. Still, it is well-structured and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (nested objects, output schema, premium license), the description covers all necessary aspects: purpose, input, output, error handling, workflow sequence, and sibling relationships. It mentions the typical return format and the integrity_note, which is helpful even though an output schema exists. The description is complete for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with good descriptions for both parameters. The description adds value by explaining the effect of the fingerprint parameter: 'when a voice_fingerprint result is supplied, adds numeric targets to hit that person's voice.' It also provides a concrete example of typical input, which helps the agent understand how to use the parameters together. This goes beyond the schema's static type definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Produce a precise rewrite brief that de-AIs a draft, with numeric targets.' It lists specific outputs (edit_list, numeric_targets) and distinguishes itself from siblings like verify_rewrite and ai_tell_scan, making the tool's unique role obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells when to use the tool: 'Use after a scan has identified what to fix; returns a brief, not rewritten prose.' It also tells when not to use it: 'Not for checking whether a rewrite worked (verify_rewrite).' Additionally, it provides a workflow hint: 'Apply the brief with your agent, then confirm with verify_rewrite.' This is comprehensive guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_rewriteVerify RewriteARead-onlyIdempotentInspect
Verify a rewrite actually improved: score delta, meaning check, voice distance. PREMIUM (license).
Compares reads-human score before/after, a meaning-preservation proxy, and (with a fingerprint) numeric distance to the target voice. Typical input {"original": "", "rewrite": ""} returns {"score_before": N, "score_after": N, "score_delta": N, "content_word_retention_pct": N, "remaining_tells": [...], "verdict": "Improved — ship it" | "Marginal — ..."}.
Use only when both the before and the after text are available. Not for scoring a single draft (ai_tell_scan). Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""} (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.
| Name | Required | Description | Default |
|---|---|---|---|
| rewrite | Yes | The same content after the humanize_plan edits. | |
| original | Yes | The draft before editing. | |
| fingerprint | No | Optional voice profile object exactly as returned by voice_fingerprint, to measure distance to the target voice. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable behavioral context: the tool never raises a protocol error but returns an error object, and it provides a typical output example. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a bolded one-line summary, followed by detailed explanation, usage notes, and error handling. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema, the description adequately covers input format, usage constraints, error behavior, idempotency, and licensing. It also references the sibling tool for single-draft scoring, making the context complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so a baseline of 3. The description adds meaning by showing the typical input format and clarifying that the optional fingerprint is used to 'measure distance to the target voice', which goes beyond the schema's static type description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool 'Verify a rewrite actually improved: score delta, meaning check, voice distance', providing a specific verb and resource. It distinguishes from the sibling ai_tell_scan by explicitly noting this tool is not for scoring a single draft.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance: 'Use only when both the before and the after text are available. Not for scoring a single draft (ai_tell_scan).' It also notes that every call is safe to retry after correcting input, which guides on error recovery.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
voice_fingerprintVoice FingerprintARead-onlyIdempotentInspect
Build a measurable voice profile from samples of a person's real writing. FREE.
Feed it 2+ samples (emails, posts, essays — 150+ words total) and use the result with humanize_plan / verify_rewrite. Typical input {"samples": ["", ""]} returns {"label": "my-voice", "target_metrics": {"avg_sentence_len": ..., "burstiness": ..., ...}, "favorite_words": [...], "signature_habits": ["..."], "words_analyzed": N}.
Use on samples the person actually wrote, to build a target profile. Not for scoring an unknown draft (ai_tell_scan) and not on text the person did not write. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""} (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.
| Name | Required | Description | Default |
|---|---|---|---|
| label | No | Optional name for this voice profile. Default "my-voice". | my-voice |
| samples | Yes | List of real writing samples by the same person; 150+ words combined across all samples. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description reinforces this explicitly: 'Every call is read-only and idempotent, so after correcting the input it is always safe to retry.' It also discloses error handling behavior ('never raises a protocol error — it returns {"error": ...}') and notes it is free. No contradictions and meaningful additional context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a short intro, a detailed example block, and usage guidance. It is slightly long but every sentence adds value. The information is front-loaded with the core purpose and key constraints. Minor redundancy in repeating the 'real writing' constraint could be trimmed, but overall it is efficient for the necessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple 2-parameter schema, presence of annotations and output schema, the description fully covers all aspects: workflow (input → profile), error behavior, integration with sibling tools, requirements for samples, and idempotency. No gaps remain for an agent to understand how to select and invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters clearly described. The description adds significant context beyond the schema: example input format ('{"samples": ["<email text>", "<blog post>"]}'), explanation of default label behavior, and details about output fields that help understand how parameters shape the result. This elevates meaning beyond the baseline schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Build a measurable voice profile from samples of a person's real writing.' It identifies the specific verb 'build' and resource 'voice profile' and distinguishes from sibling tools by stating 'Not for scoring an unknown draft (ai_tell_scan)' and references humanize_plan/verify_rewrite. The purpose is explicit and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use guidance ('Feed it 2+ samples... use the result with humanize_plan / verify_rewrite') and when-not-to-use ('Not for scoring an unknown draft (ai_tell_scan) and not on text the person did not write'). It also warns about errors and gives retry advice, making it clear when to apply this tool versus alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
- First observed
ai_tell_scan - First observed
burstiness_report - First observed
humanize_plan - First observed
verify_rewrite - First observed
voice_fingerprint
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Loads your personal writing voice into any AI and scores how closely a draft matches it.
Free mechanical checks for AI text: unnamed counts, dangling references, bad arithmetic, misquotes.
Build a voice from your own texts, measure whether a text still sounds like you, then write in it.
1Track AI visibility (ChatGPT, Gemini, AI Overviews), research SEO keywords, write, publish, prove.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceDetects AI-generated content by analyzing 24 writing patterns, provides style analysis, plagiarism check, text humanization suggestions, and offers batch detection and version comparison tools.-
- AlicenseAqualityBmaintenanceA private, open-source AI-text checker. Get a read on whether text looks AI-written, the exact AI-tell spans to fix, a reuse check, and a grammar pass.4MIT
- AlicenseAqualityAmaintenanceBilingual (EN/ES) AI-writing detection that shows the evidence instead of a percentage: named tells with line and column, hidden-character inspection, and citation cross-checking against a document's own bibliography. Seven of its nine tools run entirely locally and never touch the network.1020MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI content detection with sentence-level and paragraph-level AI probability scoring to identify and fix AI-generated text.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Each tool has a clearly distinct role: ai_tell_scan is a broad AI-tell scanner, burstiness_report focuses on sentence rhythm, humanize_plan creates a rewrite brief, verify_rewrite checks a rewrite, and voice_fingerprint builds a voice profile. Cross-references in descriptions explicitly clarify boundaries between overlapping functions.
Tool names are descriptive but follow mixed patterns: 'burstiness_report' and 'voice_fingerprint' are noun phrases, 'verify_rewrite' is an imperative verb phrase, while 'ai_tell_scan' and 'humanize_plan' are ambiguous combinations. There is no consistent verb_noun convention across the set.
Five tools is well-scoped for a humanization server, covering scanning, rhythm analysis, planning, verification, and voice profiling without redundancy or bloat. Each tool earns its place in the workflow.
The tool surface covers the full intended workflow: scan for tells, analyze rhythm, generate a rewrite brief, verify the rewrite, and build a voice fingerprint for personalization. The only absent operation—actually rewriting—is intentionally delegated to the agent, so there are no dead ends.