mcpField
M
MCP Server for Microsoft Paint

MCP Server for Microsoft Paint

Local
ghuntley.comMedia & Design25Updated 82w ago

About MCP Server for Microsoft Paint

MCP Server for Microsoft Paint is a JSON-RPC 2.0 server written in Rust that controls the Paint application on Windows. It suits users who want to script drawing operations in Paint. The project is a basic implementation with a small set of documented methods.

Key features

  1. 01Launch or connect to a Paint window
  2. 02Draw lines, shapes and single pixels
  3. 03Set colors and tool properties
  4. 04Activate and control the Paint window

Use cases

  1. 01Scripting automated drawing on a Paint canvas
  2. 02Testing JSON-RPC based drawing control

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

MCP Server for Microsoft Paint

A JSON-RPC 2.0 compatible server for controlling Microsoft Paint through the Microsoft Commandline Protocol (MCP).

Features

  • Launch and connect to Microsoft Paint
  • Draw lines, shapes, and pixels
  • Set colors and tool properties
  • Control the Paint window

Requirements

  • Windows 10/11 with Microsoft Paint installed
  • Rust (for building the server)
  • Python (for the test client examples)

Building and Running

To build the server:

cargo build --release

To run the server:

cargo run --release

The server accepts JSON-RPC 2.0 requests via stdin and responds via stdout.

JSON-RPC Methods

initialize

Finds or launches Microsoft Paint.

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "initialize",
  "params": {}
}
connect

Connects to an already running Paint window.

Request:

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "connect",
  "params": {
    "client_id": "your-client-id",
    "client_name": "Your Client Name"
  }
}
draw_line

Draws a line from one point to another.

Request:

{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "draw_line",
  "params": {
    "start_x": 100,
    "start_y": 100,
    "end_x": 300,
    "end_y": 100,
    "color": "#FF0000",
    "thickness": 3
  }
}
Other Methods
  • activate_window - Brings the Paint window to the foreground
  • get_canvas_dimensions - Returns the current canvas size
  • draw_pixel - Draws a single pixel
  • draw_shape - Draws a shape (rectangle, ellipse, etc.)
  • select_tool - Selects a drawing tool
  • set_color - Sets the current color
  • And more...

Example Test Client

A simple test client is provided in final_test.py to demonstrate how to use the server:

python final_test.py

Troubleshooting

If you encounter issues with the server connecting to Paint:

  1. Make sure Microsoft Paint is installed and accessible
  2. Try manually launching Paint before starting the server
  3. Check the server logs for detailed error messages

License

This project is available under the MIT License.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.