Drawing Guides

Access step-by-step drawing tutorials and guides from easydrawingguides.com for artists of all skill levels.

Drawing Guides MCP Server

A Model Context Protocol (MCP) server that provides access to drawing tutorials and guides from easydrawingguides.com, making it easy to find and retrieve step-by-step drawing instructions for artists of all skill levels.

Overview

This MCP server acts as a bridge between AI assistants and popular drawing tutorial websites, specifically designed to:

  • Comprehensive Search: Search across Easy Drawing Guides for drawing tutorials
  • Detailed Tutorials: Retrieve complete drawing guides with step-by-step instructions
  • Content Extraction: Parse and structure drawing instructions for easy consumption
  • Category Navigation: Browse available drawing categories and topics
  • Family-Friendly: Access kid-friendly and beginner-oriented drawing content

Features

šŸ” Search Tool

  • Search across drawing tutorials from Easy Drawing Guides
  • Returns structured metadata and ranked list of relevant guides
  • Validates all returned URLs to ensure they are accessible
  • Includes instructions for LLMs on how to use exact URLs with the get_guide tool
  • Configurable result limits

šŸ“‹ Guide Retrieval Tool

  • Retrieve complete drawing tutorial content from URLs as Markdown
  • Extract content from the main article section (removes ads)
  • Preserve original formatting and structure in Markdown format
  • Clean, readable output with metadata

šŸ“š Categories Tool

  • List available drawing categories from Easy Drawing Guides
  • Discover popular drawing topics and themes
  • Get suggestions for search terms and ideas

Installation & Setup

Prerequisites

  • Python 3.12 or higher
  • uv package manager

Quick Start

Run directly with uvx (once published):

uvx mcp-drawing-guides

Or run from local directory:

uvx --from . mcp-drawing-guides

Or install locally:

  1. Clone or download this project

  2. Install dependencies:

    cd mcp-drawing-guides
    uv sync
    
  3. Run the server:

    uv run python main.py
    

Integration with AI Assistants

This MCP server is designed to work with AI assistants that support the Model Context Protocol. Configure your AI assistant to connect to this server via stdio.

Example configuration for Claude Desktop:

{
  "mcpServers": {
    "drawing-guides": {
      "command": "uvx",
      "args": ["--from", "/path/to/mcp-drawing-guides", "mcp-drawing-guides"]
    }
  }
}

Or if using a local installation:

{
  "mcpServers": {
    "drawing-guides": {
      "command": "uv",
      "args": ["run", "python", "/path/to/mcp-drawing-guides/main.py"]
    }
  }
}

Available Tools

search

Search for drawing tutorials across supported sites.

Parameters:

  • query (required): Search terms (e.g., "cat", "anime character", "flower")
  • limit (optional): Max results to return (1-20, default: 10)
  • source (optional): Which site to search - "easy" (default: "easy")

Returns:

  • Search metadata (query, results count, sources searched)
  • List of matching drawing guides with titles and validated URLs
  • Instructions for using the get_guide tool with exact URLs from the results

Example:

{
  "name": "search",
  "arguments": {
    "query": "cute cat",
    "limit": 5,
    "source": "easy"
  }
}

get_guide

Retrieve detailed content of a specific drawing guide.

Parameters:

  • url (required): URL of the drawing guide from easydrawingguides.com

Returns:

  • Guide metadata (title, source, URL, content length)
  • Complete tutorial content formatted as Markdown

Example:

{
  "name": "get_guide",
  "arguments": {
    "url": "https://easydrawingguides.com/draw-cat/"
  }
}

list_categories

List available drawing categories and popular topics.

Parameters:

  • None required

Returns:

  • Categories from Easy Drawing Guides
  • Popular search terms and suggestions

Example:

{
  "name": "list_categories",
  "arguments": {}
}

Supported Sites

Easy Drawing Guides (easydrawingguides.com)

  • Focus: Step-by-step drawing tutorials for all skill levels
  • Content: Animals, people, plants, cartoons, objects, anime, video games
  • Features: Detailed instructions, printable worksheets, video tutorials
  • Audience: Kids, beginners, and hobbyists

How It Works

Content Extraction Process

  1. Web Scraping: Uses requests and BeautifulSoup to fetch and parse web content
  2. Content Targeting: Extracts content specifically from <div class="inside-article">
  3. Ad Removal: Removes <div class="mv-ad-box"> elements to clean up content
  4. Markdown Conversion: Converts HTML content to clean, readable Markdown format
  5. Metadata Generation: Creates structured metadata for each guide

Search Algorithm

  1. Site Search: Queries Easy Drawing Guides for relevant tutorials
  2. Relevance Ranking: Sorts results by keyword relevance in titles
  3. URL Validation: Validates each URL to ensure it's accessible before including in results
  4. Content Filtering: Filters out irrelevant or duplicate results
  5. Source Attribution: Clearly identifies the source of each result

Structured Output Format

All tools return structured responses with separate blocks for:

  • Metadata: Source, URL, content statistics, search parameters
  • Content: Main tutorial content and descriptions
  • Instructions: Step-by-step drawing instructions when available
  • References: Image URLs and alt text for visual reference

Use Cases

For Art Students & Beginners

  • Find step-by-step tutorials for specific subjects
  • Learn fundamental drawing techniques
  • Access beginner-friendly instructions with clear steps

For Parents & Teachers

  • Discover family-friendly drawing activities
  • Find age-appropriate art projects for children
  • Access educational content for art classes

For Digital Artists & Hobbyists

  • Get inspiration for new drawing subjects
  • Find reference materials and instruction guides
  • Learn new drawing styles and techniques

For Content Creators

  • Source tutorial content for art education
  • Find step-by-step processes to reference
  • Access structured drawing instruction data

Quick Start Guide

  1. Clone or download this repository

  2. Install dependencies:

    cd mcp-drawing-guides
    uv sync
    
  3. Test the server:

    uv run python main.py
    

    Press Ctrl+C to stop the server.

  4. Configure your AI assistant to use this MCP server

Examples

Basic Search

Ask your AI assistant: "Search for drawing tutorials about dogs"

The server will:

  1. Search Easy Drawing Guides for "dogs"
  2. Return structured metadata (query, result count, sources)
  3. Provide a list of relevant tutorials with validated URLs
  4. Include direct access to full guides

Retrieve Specific Guide

Ask your AI assistant: "Get the detailed instructions for this drawing guide: [URL]"

The server will:

  1. Fetch the complete tutorial content from the URL
  2. Extract content from the main article section (removes ads)
  3. Convert HTML content to clean Markdown format
  4. Return structured metadata and formatted content

Browse Categories

Ask your AI assistant: "What drawing categories are available?"

The server will:

  1. Return organized lists of categories from Easy Drawing Guides
  2. Provide popular search terms and suggestions
  3. Help you discover new drawing topics and themes

Development

Project Structure

mcp-drawing-guides/
ā”œā”€ā”€ main.py          # Main MCP server implementation
ā”œā”€ā”€ pyproject.toml   # Project dependencies and metadata
ā”œā”€ā”€ README.md        # This documentation
└── .venv/           # Virtual environment (created by uv)

Key Dependencies

  • mcp: Model Context Protocol framework
  • requests: HTTP library for web scraping
  • beautifulsoup4: HTML parsing and content extraction
  • lxml: Fast XML and HTML parser
  • markdownify: HTML to Markdown conversion

Customization

The server can be easily customized by modifying main.py:

  • Add New Sites: Extend the search functions to support additional tutorial sites
  • Improve Parsing: Enhance content extraction for better step identification
  • Content Filtering: Add custom filters for content quality or appropriateness
  • Caching: Implement caching to improve performance and reduce server load

Testing the Server

Test the server directly:

cd mcp-drawing-guides
uvx --from . mcp-drawing-guides

Or with local installation:

cd mcp-drawing-guides
uv run python main.py

The server communicates via JSON-RPC over stdin/stdout, so you'll need an MCP client or AI assistant to interact with it properly.

Troubleshooting

Common Issues

  1. Import Errors: Make sure all dependencies are installed with uv sync
  2. Network Issues: Check internet connectivity for accessing tutorial sites
  3. Parsing Errors: Some pages may have different structures; the server handles this gracefully
  4. Rate Limiting: Be respectful of the source sites' server resources

Debugging

Enable debug logging by modifying the logging level in main.py:

logging.basicConfig(level=logging.DEBUG)

Ethical Considerations

  • Respect: This server respects the robots.txt and terms of service of source sites
  • Attribution: All content is properly attributed to its original source
  • Non-Commercial: Intended for educational and personal use
  • Fair Use: Extracts only necessary content for tutorial purposes

Contributing

This is a simple, single-file implementation designed for clarity and ease of modification. Feel free to:

  • Add support for additional drawing tutorial sites
  • Improve content extraction algorithms
  • Add caching for better performance
  • Extend with additional drawing-related features

License

This project uses the same license as its dependencies. The drawing tutorial content accessed through this server remains the property of the original sites and creators.


This MCP server makes drawing tutorials more accessible by providing structured access to step-by-step drawing guides from trusted educational sources.

Related Servers