Skip to main content
Glama

Servidor MCP de dibujo

insignia de herrería

Servidor de dibujo MCP: una herramienta de dibujo sencilla para asistentes de IA

Dibujar un vaquero usando las herramientas de lienzo (registro de chat)

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona capacidades de dibujo para asistentes de IA.

Características

  • Crea un lienzo con dimensiones específicas

  • Dibuja rectángulos rellenos con colores personalizados

  • Exportar lienzo como imagen PNG

  • Obtener datos de lienzo sin procesar como JSON

Related MCP server: Napkin

Instalación

Instalación mediante herrería

Para instalar mcp-painter para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @flrngel/mcp-painter --client claude

Instalación manual

Agregue esto a su configuración de MCP

    "painter": {
      "command": "npx",
      "args": ["-y", "github:flrngel/mcp-painter"]
    }

Available Tools

4 tools
drawing_fillRectangleC

Fill a rectangle on the drawing canvas with a specified color and coordinates.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYesX coordinate of the top-left corner of the rectangle
yYesY coordinate of the top-left corner of the rectangle
widthYesWidth of the rectangle
heightYesHeight of the rectangle
colorYesColor to fill the rectangle with (RGB)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It states the action ('Fill a rectangle') which implies a mutation/write operation, but doesn't clarify if this overwrites existing content, requires specific permissions, has side effects, or provides any return value. For a mutation tool with zero annotation coverage, this leaves significant behavioral gaps unaddressed.

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 immediately conveys the core functionality. Every word contributes essential information with zero redundancy. It's appropriately sized for this straightforward drawing operation.

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?

For a mutation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what happens after filling (e.g., returns success/failure, modifies canvas state), doesn't mention error conditions, and provides minimal behavioral context. Given the complexity of a canvas modification operation, more completeness is needed.

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 5 parameters. The description mentions 'color and coordinates' which aligns with parameters but adds no additional semantic context beyond what's in the schema (e.g., coordinate system origin, units, color format details). This meets the baseline for high schema coverage.

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 action ('Fill a rectangle'), resource ('on the drawing canvas'), and key parameters ('with a specified color and coordinates'). It distinguishes from siblings like drawing_generateCanvas (creation) and drawing_getCanvasData/getCanvasPng (retrieval) by focusing on modification. However, it doesn't explicitly differentiate from potential future drawing tools that might also modify the canvas.

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 prerequisites (e.g., needing an existing canvas from drawing_generateCanvas), when not to use it (e.g., for non-rectangular shapes), or how it relates to sibling tools. The agent must infer usage from tool names alone.

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

drawing_generateCanvasC

Generate a new drawing canvas with specified width and height.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthYesWidth of the canvas in pixels
heightYesHeight of the canvas in pixels

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 states the tool generates a canvas but lacks details on side effects (e.g., if it overwrites existing canvases, requires specific permissions, or has rate limits). This leaves significant gaps for a creation tool with no structured safety hints.

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 directly states the tool's purpose and parameters without unnecessary words. It is front-loaded and appropriately sized for its simple function.

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?

For a creation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what the tool returns (e.g., a canvas ID or status), potential errors, or how it interacts with sibling tools. Given the complexity of a generative operation, more context is needed for 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 both parameters (width and height) clearly documented in the schema. The description adds no additional meaning beyond implying these parameters are required, which is already covered by the schema's required fields. Baseline 3 is appropriate as the schema handles the heavy lifting.

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 verb ('Generate') and resource ('a new drawing canvas'), making the purpose understandable. However, it doesn't explicitly differentiate this tool from its siblings (e.g., drawing_getCanvasData, drawing_getCanvasPng), which also involve canvas operations but for retrieval rather than creation.

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 prerequisites, such as needing an existing canvas for sibling tools, or specify contexts where generating a canvas is appropriate (e.g., initialization vs. modification).

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

drawing_getCanvasDataB

Get the current pixel data of the drawing canvas as JSON.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/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 retrieves data ('Get'), implying a read-only operation, but doesn't clarify if it requires specific permissions, has rate limits, or what happens if the canvas is empty. For a tool with zero annotation coverage, this leaves significant gaps in understanding its behavior and constraints.

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, clear sentence that efficiently conveys the tool's function without unnecessary words. It is front-loaded with the core action and resource, making it easy to parse. Every part of the sentence earns its place by specifying the data format (JSON), which is crucial for differentiation.

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

Completeness3/5

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

Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is adequate but has gaps. It explains what the tool does but lacks details on behavioral aspects like error handling or return structure. Without an output schema, the agent doesn't know the JSON format specifics, which could be important for integration. The description is minimal but functional for a basic read operation.

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

Parameters4/5

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

The tool has 0 parameters with 100% schema description coverage, so the schema fully documents the lack of inputs. The description doesn't need to add parameter details, as there are none to explain. It appropriately focuses on the tool's purpose without redundant information, meeting the baseline for zero parameters.

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 action ('Get') and resource ('current pixel data of the drawing canvas as JSON'), making the purpose immediately understandable. It distinguishes from siblings like drawing_getCanvasPng by specifying JSON format, but doesn't fully differentiate from drawing_generateCanvas which might also retrieve canvas data. The description is specific but not exhaustive about sibling differentiation.

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?

No explicit guidance on when to use this tool versus alternatives like drawing_getCanvasPng or drawing_generateCanvas is provided. The description implies it's for retrieving pixel data in JSON format, but doesn't specify use cases, prerequisites, or exclusions. Without annotations or context signals indicating limitations, the agent must infer usage from the tool name and description alone.

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

drawing_getCanvasPngA

Get the current drawing canvas as a PNG image (base64 encoded).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations provided, the description carries full burden. It clearly indicates this is a read operation ('Get') that returns encoded image data, but doesn't disclose behavioral traits like performance characteristics, error conditions, or whether it requires a pre-existing canvas. It adds basic context about the output format but lacks deeper operational details.

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?

Single sentence that's perfectly front-loaded with the core purpose, zero wasted words, and appropriately sized for a simple retrieval tool. Every element ('Get', 'current drawing canvas', 'PNG image', 'base64 encoded') earns its place by clarifying the operation.

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

Completeness3/5

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

For a zero-parameter read tool with no annotations and no output schema, the description adequately covers the basic operation but lacks completeness about what 'current' means (e.g., requires an existing canvas), error handling, or response structure. It's minimally viable but leaves contextual gaps an agent might need.

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

Parameters4/5

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

The tool has 0 parameters with 100% schema description coverage, so the schema fully documents the empty parameter set. The description appropriately doesn't discuss parameters, maintaining focus on the tool's purpose. Baseline for 0 parameters is 4, as no parameter guidance is needed.

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

Purpose5/5

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

The description clearly states the specific action ('Get') and resource ('current drawing canvas'), specifying the output format ('PNG image') and encoding ('base64 encoded'). It distinguishes from siblings like drawing_fillRectangle (modification) and drawing_getCanvasData (different data format).

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

Usage Guidelines3/5

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

The description implies usage when a PNG representation of the canvas is needed, but doesn't explicitly state when to use this vs. alternatives like drawing_getCanvasData (which might return raw data). No exclusions or prerequisites are mentioned, leaving some ambiguity about optimal tool selection.

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

TDQS

A3.5/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: generating a canvas, filling a rectangle, retrieving canvas data as JSON, and retrieving canvas data as PNG. There is no overlap in functionality, making it easy for an agent to select the correct tool for each operation.

Naming Consistency5/5

All tools follow a consistent 'drawing_verbNoun' pattern (e.g., drawing_generateCanvas, drawing_fillRectangle). This predictability enhances usability and reduces confusion, as the naming convention is uniform across all tools.

Tool Count4/5

With 4 tools, the server is well-scoped for basic drawing operations, covering canvas creation, drawing, and data retrieval. However, it lacks advanced features like drawing other shapes or clearing the canvas, which might be expected in a drawing domain, making it slightly under-equipped but reasonable.

Completeness3/5

The tools cover core operations for a drawing server: create canvas, draw (fill rectangle), and retrieve data. However, there are notable gaps, such as no tools for drawing other shapes (e.g., circles, lines), clearing the canvas, or updating existing drawings, which limits the agent's ability to perform more complex tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A shared whiteboard for you and your AI agent I wanted my AI agent and me to be able to point at the same thing. Any MCP-capable agent can read the canvas, draw on it, drop thought bubbles, animate elements, and react when you sketch something.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to drive a live SVG/vector editor, allowing a full observe-and-act loop on a canvas with real tools, state reading, and PNG rendering.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to draw animated, hand-drawn diagrams on a live whiteboard through MCP tools, allowing users to visually explain concepts and edit scenes interactively.
    45
    AGPL 3.0

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/flrngel/mcp-painter'

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