mcp-swing-17

Official registry AI and agents

Java 17 MCP server and agent for automating Swing and JavaFX desktop applications.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

MCPB package https://github.com/kirnfs/mcp-swing-17/releases/download/v1.5.0-java17/mcp-swing-17-1.5.0-java17.mcpb

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. mcp-swing-17
  2. Contents
  3. Build
  4. Run
  5. Differences from upstream
  6. Security

mcp-swing-17

MCP server and Java agent for automating Swing and JavaFX desktop applications, built for Java 17. Fork of Swing MCP.

  • Version: 1.5.0-java17
  • Upstream commit: abfacfa
  • License: MIT (see LICENSE)
  • Usage guide: USAGE.md

Contents

dist/mcp-swing-17-server.jar    MCP server (stdio)
dist/mcp-swing-17-agent.jar     Java agent loaded into the target JVM
dist/*.mcpb                      MCPB bundle for one-click clients
build.ps1                       Windows build (JDK 17)
build.sh                        Linux/macOS build
mcp-swing-17-server/            server sources
mcp-swing-17-agent/             agent sources
mcp-swing-17-common/            shared classes

Build

powershell -NoProfile -ExecutionPolicy Bypass -File build.ps1

Requires JDK 17. Maven 3.9.9 is downloaded into .build/ on first use.

On Linux/macOS:

./build.sh

or:

mvn -s maven-settings.xml -DskipTests package

Run

SWING_MCP_AGENT_JAR=<path>/dist/mcp-swing-17-agent.jar
java -jar <path>/dist/mcp-swing-17-server.jar

The server uses stdio and is normally started by an MCP client. The agent attaches to an already running Java application by PID through attach_to_app.

{
  "mcpServers": {
    "mcp-swing-17": {
      "command": "java",
      "args": ["-jar", "<path>/dist/mcp-swing-17-server.jar"],
      "env": {
        "SWING_MCP_AGENT_JAR": "<path>/dist/mcp-swing-17-agent.jar"
      }
    }
  }
}

Differences from upstream

  1. Java 17 instead of Java 21: virtual threads replaced with a regular executor.
  2. Removed the Java 17-incompatible JMenu instanceof JMenuItem pattern.
  3. Replaced List.getFirst() with get(0).
  4. Relocated the agent's Jackson package so the target application's Jackson cannot shadow it.
  5. java.version=17, JavaFX 17.
  6. Real-mouse robot input is disabled by default.
  7. close_window closes only the focused dialog unless a windowIndex is passed explicitly.

Security

  • the agent listens on loopback only;
  • keep evaluate_java disabled;
  • use as a development/testing tool;
  • do not expose the agent port or the response-file token.

Frequently asked questions

What is mcp-swing-17?

Java 17 MCP server and agent for automating Swing and JavaFX desktop applications.

How do I install mcp-swing-17?

Follow the installation steps in its documentation, shown on this page and in its repository.

Does mcp-swing-17 need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is mcp-swing-17 open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains mcp-swing-17?

It is published by kirnfs. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.