Skip to main content
Glama
resccrew

affinity-mcp

by resccrew

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
screenshotA

Take a screenshot of the whole screen. Coordinates for other tools refer to this image.

clickB

Click at (x, y) in the last screenshot. button: left/right/middle; modifiers e.g. ["command"].

double_clickC

Double-click at (x, y) in the last screenshot.

dragC

Drag with the left button from (x1, y1) to (x2, y2) in the last screenshot.

type_textC

Type text into the focused field (via clipboard, so any language works). press_enter sends it.

press_keyC

Press one key, e.g. enter, esc, tab, up, down, backspace.

hotkeyC

Press a key combination, e.g. ["command", "n"] for a new document.

scrollB

Scroll: positive = up, negative = down. Pass x, y (last screenshot) to scroll over a specific area.

set_fieldB

Replace the value of a panel field at (x, y) (X/Y/W/H, colour hex, ...) and commit with Enter.

menuA

Choose a menu item by path, e.g. ["Vector", "Geometry", "Add"]. Exact, no clicking.

list_menuB

List menu names: [] = menu bar, ["Vector"] = its items, ["Vector", "Geometry"] = submenu.

batchA

Run many GUI steps in one call, one screenshot at the end. Stops at the first failing step.

Each step: {"action": ..., ...}. Actions: click{x,y,button?,modifiers?}, double_click{x,y}, drag{x1,y1,x2,y2,duration?}, type{text,press_enter?}, key{key}, hotkey{keys}, scroll{amount,x?,y?}, field{x,y,value}, menu{path}, wait{seconds}. Coordinates refer to the last screenshot taken before this call.

open_affinityC

Launch or bring the Affinity app to the front.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.3/5.0

Scored across 13 tools

Disambiguation4/5

Most tools have clearly distinct purposes: click vs double_click, type_text vs press_key vs hotkey are all separable. The only mild overlaps are between menu and list_menu, and between direct click/drag actions and the batch wrapper, but descriptions make the intended use clear.

Naming Consistency4/5

Nearly all names follow snake_case with a verb_noun or clear action pattern (type_text, press_key, list_menu, open_affinity). Minor deviations like the bare nouns 'menu' and 'batch' are still readable and consistent in casing.

Tool Count5/5

13 tools is well-scoped for a GUI-automation server, covering input primitives, menu access, screenshotting, and batch execution without bloat. Each tool earns its place.

Completeness4/5

The surface covers the full input lifecycle (screenshot, click, double-click, drag, type, keys, hotkey, scroll, field, menu, batch, launch). Minor gaps like an explicit hover/move or context-menu helper are workable via click with right button.

Maintenance

ActivityMaintained
ResponsivenessNo issues