Skip to main content
Glama
dmarsters

ASCII Art & Unicode Diagrams MCP Server

by dmarsters

ASCII Art & Unicode Diagrams MCP Server

Lushy Pattern 2 implementation for text-based visual generation with zero rendering dependencies.

Features

Pure Text Output - No image generation, instant results
Categorical Composition - Functor-based aesthetic parameters
Rich Visual Vocabulary - Unicode box drawing, ASCII shading, layout systems
Deterministic - Same parameters = same output
Universal Compatibility - Works in terminal, markdown, artifacts, documentation

Quick Start

# Install pip install -e . # Run locally python server.py # Deploy to FastMCP Cloud fastmcp deploy

Tools

create_ascii_box

Create bordered boxes with optional shading.

create_ascii_box( width=50, height=15, title="System Status", line_style='double', # light|heavy|double|rounded shading_palette='blocks', # ascii_standard|blocks|dots|density|braille shading_direction='radial', # horizontal|vertical|radial|diagonal contrast=0.8 )

Output:

╔══════════════ System Status ══════════════╗ ║███████████████████ ░░░░▒▒▒▓▓██████║ ║████████████▓▓▓▓▓▓▓ ░░░░▒▒▒▓▓██████║ ║███████▓▓▓▓▓▓▓▒▒▒▒▒ ░░░░▒▒▒▓▓██████║ ║████▓▓▓▓▓▒▒▒▒▒▒▒░░░ ░░░░▒▒▒▓▓██████║ ╚═══════════════════════════════════════════╝

create_ascii_table

Create data tables with borders.

create_ascii_table( headers=["Task", "Status", "Progress"], rows=[ ["Deploy API", "Complete", "100%"], ["Run Tests", "Running", "65%"], ["Write Docs", "Pending", "0%"] ], line_style='heavy' )

Output:

┏━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┓ ┃ Task ┃ Status ┃ Progress ┃ ┣━━━━━━━━━━━━╋━━━━━━━━━━╋━━━━━━━━━━┫ ┃ Deploy API ┃ Complete ┃ 100% ┃ ┃ Run Tests ┃ Running ┃ 65% ┃ ┃ Write Docs ┃ Pending ┃ 0% ┃ ┗━━━━━━━━━━━━┻━━━━━━━━━━┻━━━━━━━━━━┛

list_ascii_styles

Get all available styles with intentionality.

Functors

Box Drawing

  • Line styles: light (minimal), heavy (bold), double (formal), rounded (friendly)

  • Symmetry: bilateral, radial, asymmetric

  • Intentionality: Visual weight affects emphasis and hierarchy

ASCII Shading

  • Palettes: ascii_standard (classic), blocks (smooth), dots (geometric), density (detailed), braille (fine)

  • Contrast: 0.0-1.0 controls dramatic vs subtle

  • Direction: horizontal, vertical, radial, diagonal

  • Intentionality: Different palettes create different textural qualities

Layout Composition

  • Canvas size: 20-120 width, 5-50 height

  • Alignment: horizontal (left/center/right), vertical (top/middle/bottom)

  • Patterns: single_box, nested_boxes, grid, table

  • Intentionality: Size and alignment affect viewing distance and emphasis

Use Cases

📊 CLI Tools - Beautiful terminal output
📝 Documentation - Markdown-compatible diagrams
💬 Chat Interfaces - Rich text formatting
📈 Data Visualization - ASCII charts and graphs
🎨 Art & Design - Generative text art

Architecture

Lushy Pattern 2:

Layer 1: Categorical Structure (functors in YAML) ↓ Layer 2: Intentionality (why aesthetics work) ↓ Layer 3: Rendering (deterministic text output)

Zero Dependencies:

  • No image libraries

  • No external rendering

  • Pure Python + Unicode

  • Instant output

Examples

Status Dashboard

create_ascii_box( width=60, height=12, title="🚀 Deployment Status", line_style='double', shading_palette='blocks', contrast=0.3 )

Build Progress

create_ascii_table( headers=["Stage", "Time", "Status"], rows=[ ["Compile", "12.3s", "✓"], ["Test", "45.1s", "✓"], ["Deploy", "8.2s", "⏳"] ], line_style='light' )

Log Separator

create_ascii_box( width=80, height=3, line_style='heavy', shading_palette='ascii_standard', shading_direction='horizontal' )

Deployment

# Deploy to FastMCP Cloud fastmcp deploy # Use with Claude Desktop # Add to claude_desktop_config.json: { "mcpServers": { "ascii-art": { "url": "https://ascii-art-mcp.fastmcp.app" } } }

Next: SVG Generator

Phase 2 will add SVG generation with the same functor composition system for:

  • Scalable vector graphics

  • Geometric shapes and charts

  • Browser/artifact rendering

  • Export to files

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dmarsters/ascii-art-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server