AffinityMCP Server

Provides tools to automate Affinity apps via natural language, with parallel processing and file operations.
  • rust

1

GitHub Stars

rust

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "tacyan-affinitymcp": {
      "command": "npx",
      "args": [
        "affinity-mcp"
      ],
      "env": {
        "AFFINITY_MCP_API_KEY": "YOUR_API_KEY_PLACEHOLDER"
      }
    }
  }
}

AffinityMCP is a Rust-based universal MCP server that exposes tools to automate Affinity Photo, Designer, and Publisher workflows using natural language commands. It enables you to control Affinity apps, perform file operations, and run batch tasks from MCP-compatible clients with straightforward setup and parallel processing for efficiency.

How to use

You interact with the server through an MCP-compatible client (for example, Cursor or other MCP-enabled interfaces). You issue natural language requests that map to specific Affinity actions, such as opening files, creating documents, applying filters, exporting, or performing batch operations. The server interprets your command and executes the corresponding tool against the chosen Affinity application. You can run multiple operations in parallel (up to 16) to maximize throughput, making workflows faster when handling large sets of files.

How to install

Prerequisites you need to install and run the server:

  • Node.js 18+ for the thin npx wrapper
  • Rust 1.76+ / Cargo for local builds

Additional setup and configuration

To run AffinityMCP locally, you build the server, place the binary in a distribution folder, and configure MCP clients to connect to it. You may need an API key if Canva Connect/MCP endpoints are used. The following configuration shows how to run the server and register it with an MCP client.

Configuration and usage notes

  • If your tools require Canva APIs, set AFFINITY_MCP_API_KEY with your real key in the environment where the server runs.

Examples and common workflows

  • Open a file: ask Affinity to open a file in the appropriate Affinity app (Photo, Designer, or Publisher) by path.

Troubleshooting and tips

  • Ensure your API key (if used) is correctly set in the running environment.

Available tools

affinity.open_file

Open a file in an Affinity application (Photo, Designer, or Publisher) by path; returns opened flag, app, and path.

affinity.create_new

Create a new Affinity document with optional width and height; returns created flag and app.

affinity.export

Export the current document to a chosen format (pdf/png/jpg/tiff/svg) with optional quality; returns exported flag and path.

affinity.apply_filter

Apply a specified filter to the active document with optional intensity; returns applied flag and filter name.

affinity.get_active_document

Query information about the currently open document; returns is_open, name, and path.

affinity.close_document

Close the currently open document; returns closed flag.

affinity.batch_open_files

Open multiple files in parallel (up to 16); inputs are paths and optional app; returns counts and results.

affinity.batch_export

Export multiple documents in parallel (up to 16) with multiple export configurations; returns counts and results.

canva.create_design

Create a Canva design with optional template, width, and height; returns design_id and URL.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
AffinityMCP Server MCP Server - tacyan/affinitymcp | VeilStrat