scuffed-painter
Scuffed Painter
Pillow를 사용하여 그리기 명령을 래스터 이미지로 렌더링하는 MCP(Model Context Protocol) 서버입니다. 다음 두 가지 도구를 제공합니다:
draw_image— 명령을 렌더링하고 결과를 인라인 PNG 이미지로 반환합니다.draw_image_to_file— 명령을 렌더링하고 결과를 파일에 저장합니다.
다섯 가지 도형이 지원되며, 각 도형은 "shape" 필드로 구분되는 JSON 객체입니다:
shape | 매개변수 |
|
|
|
|
|
|
|
|
|
|
명령은 고정 크기의 흰색 캔버스에 목록 순서대로 실행되며, 나중에 실행된 명령이 이전 명령 위에 덧칠합니다. 색상은 CSS 색상 이름 또는 16진수 코드입니다.
설치
pip install .이 패키지는 scuffed-painter 콘솔 스크립트를 제공하며, 이 스크립트는 기본적으로 stdio를 통해 MCP 서버를 시작합니다. python -m scuffed_painter도 동등한 대안입니다. 같은 명령으로 HTTP(MCP Streamable HTTP 전송)를 통해 서버를 제공할 수도 있습니다:
scuffed-painter # stdio transport (default)
scuffed-painter --transport http # HTTP on 127.0.0.1:8000
scuffed-painter --transport http --host H --port P--host와 --port는 HTTP 전송에만 적용되며, 기본값은 각각 127.0.0.1과 8000입니다. 필요한 경우 --enable-cors로 CORS를 활성화할 수 있습니다.
Related MCP server: openai-imagegen-mcp
MCP 호스트 구성
stdio
MCP 호스트의 stdio 서버 구성에 서버를 추가하세요:
{
"mcpServers": {
"scuffed-painter": {
"command": "scuffed-painter"
}
}
}참고: PATH가 제한된 호스트에서 실행하거나 virtualenv 안에서 실행하는 경우, 설치된 scuffed-painter 스크립트의 절대 경로를 대신 사용하세요(예: which scuffed-painter가 보고하는 경로).
Streamable HTTP
서버를 직접 시작한 다음, MCP 호스트가 엔드포인트를 가리키게 하세요(경로는 /mcp입니다):
scuffed-painter --transport http --host 127.0.0.1 --port 8000{
"mcpServers": {
"scuffed-painter": {
"type": "streamable-http",
"url": "http://127.0.0.1:8000/mcp"
}
}
}(키 이름을 MCP 호스트의 구성 형식에 맞게 조정하세요.)
참고: draw_image_to_file을 사용할 때 output_path는 서버가 실행되는 머신을 가리킵니다. stdio를 통할 때는 그 머신이 MCP 클라이언트와 동일한 호스트이고, HTTP를 통해 서버에 접근할 때는 서버 호스트가 됩니다.
도구 호출 예시
{
"width": 200,
"height": 200,
"commands": [
{"shape": "circle", "center": [100, 80], "radius": 50, "fill": "gold", "outline": "orange", "width": 3},
{"shape": "triangle", "points": [[50, 170], [150, 170], [100, 70]], "fill": "darkgreen"},
{"shape": "line", "start": [20, 185], "end": [180, 185], "color": "black", "width": 2}
]
}개발
저장소 구조:
scuffed_painter/ the package
server.py server, tools, command models, rendering
__init__.py re-exports mcp, defines __version__
__main__.py python -m scuffed_painter support
py.typed typing marker
tests/ pytest suite (in-process fastmcp.Client)설정 및 테스트 실행:
pip install -e ".[dev]"
python -m pytestMaintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables creation, management, and export of Excalidraw drawings through natural language. Supports CRUD operations on drawings and export to SVG, PNG, and JSON formats with file-based storage.81,917The Unlicense
- FlicenseNot gradedqualityDmaintenanceEnables image generation and editing via OpenAI's gpt-image-1 model, with options for saving, format control, and transparency.
- FlicenseNot gradedqualityDmaintenanceEnables to create, compose, and export SVG documents programmatically using the svgwrite library through tool calls. Supports shapes, groups, gradients, and pattern generators.
- FlicenseNot gradedqualityBmaintenanceEnables image generation and editing via third-party relay services. Returns local file paths and Markdown display hints.
Related MCP Connectors
Generate images, GIFs, and PDFs from HTML, URLs, or templates — from your AI agent.
Create diagrams in chat, rendered as live interactive draw.io diagrams. 10,000+ searchable shapes.
Generate logos, social posts, app screenshots, comic panels & visual-novel assets from prompts.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/viktor-haag/scuffed-painter'
If you have feedback or need assistance with the MCP directory API, please join our Discord server