Skip to main content
Glama

🪄 UNO: Unified Narrative Operator

✨ Overview

UNO (Unified Narrative Operator) is a magical text enhancement tool that transforms ordinary story content into rich, detailed narratives. Using advanced literary techniques and heuristic analysis, UNO can double the length of your text while preserving the original voice and intent.

Think of UNO as your personal narrative assistant, capable of:

  • 📊 Analyzing your text to understand its strengths and weaknesses

  • 🌱 Growing underdeveloped story elements

  • 🎨 Enriching environmental descriptions

  • ⚡ Intensifying action sequences

  • 🌊 Smoothing prose flow and rhythm

  • 🔄 Eliminating repetitive language

Related MCP server: Clear Thought 1.5

🛠️ Features

UNO provides three powerful MCP tools:

1. 🔍 analyze_text

Performs deep analysis of your story pages and generates a comprehensive report including:

  • 📝 Narrative position assessment (beginning, middle, climax, resolution)

  • 👤 Character focus identification

  • 🎭 Scene type classification

  • 🌡️ Mood and tone evaluation

  • 📈 Enhancement recommendations for each technique

  • 🔄 Repetition pattern detection

2. ✨ enhance_text

Transforms your text by applying all five enhancement techniques:

  • Automatically expands text to meet target length (default: 200%)

  • Intelligently applies techniques based on what your text needs most

  • Balances expansions across the entire text

3. ⚙️ custom_enhance_text

Gives you complete control over the enhancement process:

  • Choose which enhancement techniques to apply

  • Set custom expansion targets (100%-500%)

  • Focus on specific aspects of your narrative

🌟 Enhancement Techniques

1. 👻 Golden Shadow Enhancement

Identifies underdeveloped elements in your story and expands them:

  • Develops mentioned but undeveloped characters

  • Explores implied but unexplained plot elements

  • Surfaces subtext and hidden meanings

2. 🏞️ Environmental Expansion

Enriches your settings with immersive details:

  • Adds vivid sensory experiences (visual, auditory, tactile, olfactory)

  • Creates memorable focus on insignificant objects

  • Deepens the atmosphere and mood

3. ⚡ Action Scene Enhancement

Transforms action sequences into dynamic, high-intensity experiences:

  • Manipulates perceived time (slowing crucial moments)

  • Intensifies sensory details during action

  • Creates rhythmic alternation between explosive action and momentary stillness

  • Makes environments active participants in the action

4. 🌊 Prose Smoothing

Improves the flow and rhythm of your writing:

  • Enhances transitions between paragraphs

  • Varies sentence structure for better readability

  • Creates a natural rhythm that pulls readers through the text

5. 🔄 Repetition Elimination

Reduces unintentional repetition while preserving style:

  • Identifies and replaces repeated words with meaningful alternatives

  • Maintains the author's voice and intent

  • Distinguishes between intentional and unintentional repetition

📋 Installation

Installing via Smithery

To install Unified Narrative Operator for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @MushroomFleet/uno-mcp --client claude

Prerequisites

  • Node.js (v14 or higher)

  • NPM (v6 or higher)

Step-by-Step Installation

  1. Clone or download the repository

    git clone https://github.com/your-username/uno-mcp.git
    cd uno-mcp
  2. Install dependencies

    npm install
  3. Build the TypeScript files

    npm run build
  4. Make the server executable (skip on Windows)

    chmod +x dist/index.js
  5. Test the server

    node test-run.js

    This will run the server on a sample story and generate three files:

    • test-analysis.md: Sample analysis report

    • test-enhanced.txt: Sample enhanced text (200%)

    • test-custom-enhanced.txt: Sample custom enhancement (150%)

🔌 MCP Integration

Claude Desktop Integration

  1. Edit Claude configuration file

    • Windows: C:\Users\[username]\AppData\Roaming\Claude\claude_desktop_config.json

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  2. Add UNO to the MCP servers section

    {
      "mcpServers": {
        "uno": {
          "command": "node",
          "args": ["/absolute/path/to/uno-mcp/dist/index.js"],
          "disabled": false,
          "autoApprove": []
        }
      }
    }

    Be sure to use the absolute path to your UNO installation.

  3. Restart Claude After saving the configuration, restart Claude to activate the UNO MCP server.

VS Code Integration

  1. Edit VS Code Claude extension configuration

    • Windows: c:\Users\[username]\AppData\Roaming\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json

    • macOS: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json

  2. Add the same configuration as shown above for Claude Desktop.

  3. Restart VS Code or reload the window.

🚀 Usage Examples

Analyzing a Story

<use_mcp_tool>
<server_name>uno</server_name>
<tool_name>analyze_text</tool_name>
<arguments>
{
  "text": "As Sarah walked into the garden, she noticed the old statue in the corner. It was covered in moss and vines, almost hidden from view. She felt drawn to it somehow."
}
</arguments>
</use_mcp_tool>

This will return a detailed analysis report with insights about the narrative position, character focus, enhancement opportunities, and more.

Enhancing a Story (200% Expansion)

<use_mcp_tool>
<server_name>uno</server_name>
<tool_name>enhance_text</tool_name>
<arguments>
{
  "text": "As Sarah walked into the garden, she noticed the old statue in the corner. It was covered in moss and vines, almost hidden from view. She felt drawn to it somehow."
}
</arguments>
</use_mcp_tool>

This will return a version of your text that's approximately double the original length, with all five enhancement techniques applied.

Custom Enhancement

<use_mcp_tool>
<server_name>uno</server_name>
<tool_name>custom_enhance_text</tool_name>
<arguments>
{
  "text": "As Sarah walked into the garden, she noticed the old statue in the corner. It was covered in moss and vines, almost hidden from view. She felt drawn to it somehow.",
  "expansionTarget": 150,
  "enableGoldenShadow": true,
  "enableEnvironmental": true,
  "enableActionScene": false,
  "enableProseSmoother": true,
  "enableRepetitionElimination": false
}
</arguments>
</use_mcp_tool>

This example applies only Golden Shadow Enhancement, Environmental Expansion, and Prose Smoothing, targeting a 150% expansion.

⚡ Integration Use Cases

📝 Creative Writing Assistant

Can you enhance this scene with more environmental details?

<use_mcp_tool>
<server_name>uno</server_name>
<tool_name>custom_enhance_text</tool_name>
<arguments>
{
  "text": "Jack entered the abandoned warehouse, searching for clues.",
  "expansionTarget": 300,
  "enableEnvironmental": true,
  "enableGoldenShadow": false,
  "enableActionScene": false,
  "enableProseSmoother": false,
  "enableRepetitionElimination": false
}
</arguments>
</use_mcp_tool>

📚 Writing Coach

Let me analyze this paragraph to give you feedback:

<use_mcp_tool>
<server_name>uno</server_name>
<tool_name>analyze_text</tool_name>
<arguments>
{
  "text": "[student's writing sample]"
}
</arguments>
</use_mcp_tool>

Based on the analysis, I recommend focusing on developing your character motivations more clearly.

🎮 Game Narrative Development

Here's a more intense version of your action scene:

<use_mcp_tool>
<server_name>uno</server_name>
<tool_name>custom_enhance_text</tool_name>
<arguments>
{
  "text": "[original action scene]",
  "enableActionScene": true,
  "enableEnvironmental": true,
  "enableGoldenShadow": false,
  "enableProseSmoother": true,
  "enableRepetitionElimination": true
}
</arguments>
</use_mcp_tool>

📔 Novel Expansion

Let me help you expand this chapter:

<use_mcp_tool>
<server_name>uno</server_name>
<tool_name>enhance_text</tool_name>
<arguments>
{
  "text": "[chapter excerpt]",
  "expansionTarget": 180
}
</arguments>
</use_mcp_tool>

💡 Tips & Tricks

  • 🔍 Always start with analyze_text to understand what your text needs

  • 🎯 For subtle enhancements, use custom_enhance_text with a lower expansion target (120-150%)

  • 🧩 Break longer texts into smaller sections for processing, then combine the results

  • 🔄 Apply Repetition Elimination as the final step when enhancing longer works

  • ⚡ Use enableActionScene: true only for scenes that contain action elements

📄 License

ISC

🙏 Acknowledgements

UNO is based on advanced literary enhancement techniques and narrative theory. Special thanks to the storytellers, writers, and narrative theorists whose work inspired this project.


Made with love by the UNO team

See Also

Available Tools

3 tools
analyze_textC

Analyzes a story page and generates a report with insights

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe story page text to analyze or enhance

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions analysis and report generation but lacks details on what 'insights' entail, whether the operation is read-only or has side effects, performance characteristics, or error handling. This is a significant gap for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core functionality ('Analyzes a story page') and adds the outcome ('generates a report with insights') without any wasted words. It is appropriately sized for the tool's apparent complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the 'report' or 'insights' look like, potential limitations, or how it differs from sibling tools. For a tool with no structured behavioral or output information, more context is needed to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the single parameter 'text' documented as 'The story page text to analyze or enhance'. The description adds no additional parameter semantics beyond what the schema provides, so the baseline score of 3 is appropriate as the schema handles the documentation adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

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 ('analyzes') and resource ('a story page'), and specifies the output ('generates a report with insights'). However, it doesn't explicitly differentiate from sibling tools like 'custom_enhance_text' or 'enhance_text', which appear to have related but potentially different functions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus its siblings ('custom_enhance_text' and 'enhance_text'), nor does it mention any prerequisites, alternatives, or exclusions. It only states what the tool does without contextual usage information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

custom_enhance_textC

Enhances a story page using selected techniques

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe story page text to enhance
expansionTargetNoTarget expansion percentage (default: 200)
enableGoldenShadowNoEnable Golden Shadow enhancement
enableEnvironmentalNoEnable Environmental expansion
enableActionSceneNoEnable Action Scene enhancement
enableProseSmootherNoEnable Prose Smoothing
enableRepetitionEliminationNoEnable Repetition Elimination

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'enhances' text, implying a transformation, but doesn't describe the nature of the enhancement, potential side effects, rate limits, or output format. This is a significant gap for a tool with multiple parameters and no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action ('enhances a story page'). It avoids unnecessary words, but could be more informative given the tool's complexity, making it slightly under-specified rather than perfectly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what 'enhance' entails, how techniques interact, or what the output looks like, leaving critical gaps for an agent to understand and use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 7 parameters. The description mentions 'selected techniques' but doesn't add meaning beyond the schema, which already details each enhancement technique and parameter. The baseline score of 3 reflects adequate coverage by the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool 'enhances a story page using selected techniques,' which provides a general purpose but lacks specificity. It mentions the resource ('story page') and verb ('enhances'), but doesn't clarify what 'enhance' means or how it differs from sibling tools like 'enhance_text' and 'analyze_text', leaving the purpose somewhat vague.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'enhance_text' or 'analyze_text', nor does it specify prerequisites, contexts, or exclusions for usage, leaving the agent without clear direction on tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

enhance_textC

Enhances a story page using all techniques to meet expansion target

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe story page text to enhance
expansionTargetNoTarget expansion percentage (default: 200)

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'using all techniques' but doesn't explain what these techniques are, whether the enhancement is reversible, what permissions or rate limits apply, or what the output looks like. For a tool with no annotations and an implied mutation ('enhances'), this leaves critical behavioral traits undisclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action. It avoids unnecessary words and gets straight to the point. However, it could be slightly more structured by explicitly separating purpose from constraints, but overall it's appropriately concise for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's implied complexity (enhancing text with multiple techniques) and lack of annotations and output schema, the description is incomplete. It doesn't explain what 'enhance' entails, what techniques are used, or what the result looks like. For a tool that likely modifies content, more context is needed to guide the agent effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with clear descriptions for both parameters ('text' and 'expansionTarget'). The description adds no additional meaning beyond what the schema provides, such as examples or contextual usage. However, since the schema adequately documents the parameters, a baseline score of 3 is appropriate as the description doesn't detract from the schema's clarity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool 'enhances a story page using all techniques to meet expansion target', which provides a vague purpose. It specifies the resource ('story page') and goal ('meet expansion target'), but the verb 'enhances' is generic and doesn't clearly differentiate from sibling tools like 'analyze_text' or 'custom_enhance_text'. The description lacks specificity about what 'enhance' means operationally.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'analyze_text' or 'custom_enhance_text', nor does it specify contexts, prerequisites, or exclusions for usage. The agent must infer usage based on the tool name alone, which is insufficient for informed selection.

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.

  1. 3 tool updates
    • First observedanalyze_text
    • First observedcustom_enhance_text
    • First observedenhance_text

TDQS

C2.7/5.0

Scored across 3 tools

Disambiguation2/5

The tools 'custom_enhance_text' and 'enhance_text' have overlapping purposes, both focused on enhancing story pages, with only a vague distinction based on technique selection versus using all techniques. This creates ambiguity where an agent might struggle to choose between them for a given enhancement task. The 'analyze_text' tool is more distinct but the enhancement tools lack clear boundaries.

Naming Consistency4/5

All tools follow a consistent snake_case naming pattern with a verb_noun structure (e.g., analyze_text, enhance_text). The naming is predictable and readable, with only minor deviation in 'custom_enhance_text' where the adjective 'custom' adds some variation but maintains the overall convention.

Tool Count3/5

With only 3 tools, the server feels thin for a domain like story analysis and enhancement, potentially lacking coverage for broader operations. While it covers basic analyze and enhance functions, the low count may limit agent capabilities in handling more complex workflows or additional CRUD-like actions.

Completeness2/5

The tool set is severely incomplete for a story analysis and enhancement domain, as it only includes analysis and enhancement without any CRUD operations (e.g., create, update, delete story pages) or lifecycle management. This creates significant gaps that will likely cause agent failures when trying to perform full workflows beyond simple text processing.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables iterative deep research by integrating AI agents with search engines, web scraping, and large language models for efficient data gathering and comprehensive reporting.
    4 npm
    323
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    Provides 30+ unified reasoning operations including systematic thinking, mental models, debugging approaches, statistical analysis, interactive notebooks, and advanced problem-solving frameworks for enhanced decision-making and complex reasoning tasks.
    96 npm
    53
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Enables AI-guided hierarchical fiction writing through structured XML documents. Supports step-by-step narrative expansion from book-level planning down to individual paragraphs, with custom Roo Code modes for collaborative story development.
    19
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Combines structured sequential thinking with batch operation execution, enabling step-by-step reasoning with revision/branching capabilities and chained operations with variable piping between steps.
    15
    1
    MIT