Etincel Nonfiction MCP server
{
"mcpServers": {
"etincel-nonfiction": {
"type": "http",
"url": "https://etincel.ai/api/mcp"
}
}
}{
"mcpServers": {
"etincel-nonfiction": {
"type": "http",
"url": "https://etincel.ai/api/mcp"
}
}
}{
"mcpServers": {
"etincel-nonfiction": {
"type": "http",
"url": "https://etincel.ai/api/mcp"
}
}
}{
"servers": {
"etincel-nonfiction": {
"type": "http",
"url": "https://etincel.ai/api/mcp"
}
}
}{
"mcpServers": {
"etincel-nonfiction": {
"type": "http",
"url": "https://etincel.ai/api/mcp"
}
}
}file .mcp.json (in your project root)file claude_desktop_config.jsonfile ~/.cursor/mcp.jsonfile .vscode/mcp.jsonfile ~/.codeium/windsurf/mcp_config.jsoninstall npx -y etincelversion 0.10.1
What it does
An MCP server that audits non-fiction prose for AI-writing patterns using deterministic, local analysis, and trains Claude or other MCP clients to draft in a measured voice derived from your own writing samples. It exposes tools for style management, vocabulary control, and text auditing without sending text to any model. Intended for writers, editors, and teams who want to detect and reduce AI tells in documents before publishing.
- Audit a draft blog post or memo for AI tells—uniform paragraph lengths, overused hedging phrases, banned vocabulary—with severity ratings and locations, all locally without a network call.
- Train a named writing voice from your own prose samples, then instruct Claude to draft new content in that voice using measured rhythm and contraction rates rather than a prompt-level description.
- Gate a documentation pull request in CI by running the lint command, which exits non-zero if any file exceeds a configured severity threshold such as orange or red.
Tools this server exposes
| Tool | Does |
|---|---|
| list_styles | Returns available style presets, user-trained voices, and any team style defined in a repo-local .etincelrc file. |
| get_style_guide | Returns the drafting instructions and dials for a specified style, used to configure a model before drafting. |
| train_style | Learns a writing voice from provided prose samples by measuring sentence rhythm, contraction rate, em-dash use, paragraph variance, and recurring phrasing. |
| create_style_from_dials | Creates a new style from explicit numeric dials for formality, warmth, directness, sentence length, and other mechanical parameters instead of from samples. |
| update_style | Renames a trained voice or adjusts its dials in place. |
| fork_style | Copies a preset's or public style's dials and guide into a new trained voice that can be retrained or hand-tuned. |
| delete_style | Permanently removes a trained voice from local storage. |
| set_default_style | Sets a style as the default so it is used automatically without specifying it each request. |
| check_voice_match | Compares a draft's measured rhythm and mechanics against a trained voice's baseline; not an authorship or AI-detection check. |
| check_self_repetition | Compares a draft against a voice's own recent training samples to surface repeated openers or phrases across past pieces; local install only. |
| audit_text | Runs a deterministic, rules-based scan for AI-writing tells, returning a severity tier, specific findings with locations, and a strengths signal; accepts an opt |
| second_read | Makes a single model call to report what a careful human editor would notice in a draft, unscored and without rewriting; hosted server only, unavailable in this |
| add_banned_word | Adds a word to a banned-vocabulary list checked by audit_text at global or style scope. |
| remove_banned_word | Removes a word from the banned-vocabulary list at global or style scope. |
| add_custom_word | Adds a word to an always-allowed list so audit_text never flags it, for org acronyms or house terms. |
| remove_custom_word | Removes a word from the always-allowed list. |
| list_dictionary | Shows the banned and custom words saved for a scope and, for a style, the effective merged list used during auditing. |
| set_style_instructions | Saves free-text drafting rules for a scope—required elements, forbidden topics, format constraints—merged into get_style_guide output. |
| clear_style_instructions | Removes saved drafting instructions for a specified scope. |
| get_style_instructions | Reads the currently saved drafting instructions for a specified scope. |
Before you enable it
An MCP server runs with whatever access you give it. Start with a development account rather than production, and check which tools the server exposes before you let an agent call them unattended.