Using IconVectors with Junie

Junie can use the running IconVectors application to adapt SVGs, create icons, inspect previews and produce application assets from your IDE. This page covers a local Windows setup; MCP Integration explains the shared safety rules.

The connection has three parts: Junie launches IconVectorsMcp.exe over stdio; that companion contacts IconVectors.exe through loopback TCP. Start IconVectors normally first. Do not register the GUI executable, the independent IconVectorsCli.exe, or an .mcpb bundle as the MCP command.

Choose a tool profile

IconVectors provides three companion profiles (2.20+):

Profile

Tools

Intended work

small

40

Basic drawing, inspection, paint/strokes, Undo, previews and export.

medium

80

Small plus Styles, grouping, variants/resizing and Explorer batches.

full

170

Complete editing, paths, gradients, palettes and Explorer management.

Use Medium for the workflow below, or Small if other MCP servers consume much of the client’s tool budget. Full is the default for configurations that omit --profile. Profiles retain the normal tool names and argument schemas; they do not bypass permissions, licensing or filesystem safeguards.

Important

JetBrains documents a 100-tool total limit for the standalone Junie plugin. Other MCP servers share that total. Medium leaves twenty tools of headroom; Small leaves sixty. Do not assume Full is usable because its server appears connected. See the Junie plugin documentation.

Configure the MCP client

Use the following JSON, adjusting the executable path for your installation. Keep the application and companion versions matched.

{
  "mcpServers": {
    "iconvectors": {
      "command": "C:\\Program Files\\Axialis\\IconVectors\\IconVectorsMcp.exe",
      "args": ["--host", "127.0.0.1", "--port", "61337", "--profile", "medium"]
    }
  }
}

Junie inside AI Chat

In current JetBrains AI Chat, register this local stdio server under Settings ‣ Tools ‣ AI Assistant ‣ Model Context Protocol (MCP). Apply the configuration, then enable Pass custom MCP servers under Tools ‣ AI Assistant ‣ Agents and select Junie by JetBrains in AI Chat. Configuring the IDE’s own MCP Server is a different operation.

See JetBrains’ Junie in AI Chat instructions and AI Assistant MCP setup. Availability and menu labels depend on the installed plugin version.

Standalone Junie plugin

For the separate Junie tool window, put the JSON in .junie/mcp/mcp.json under the project, or in %USERPROFILE%\.junie\mcp\mcp.json for user-wide access. Manage these connections under Tools ‣ Junie ‣ MCP Settings, not only the AI Assistant page. These are distinct client configurations.

Reconnect after changing the profile or port. The standalone plugin’s Status menu shows the tools actually exposed to it. Check them before planning edits.

Junie CLI

Junie CLI uses the same project/user JSON locations. Its /mcp command shows configured servers and their state. This is Junie’s CLI, not IconVectors’ independent SVG-processing CLI. See the official Junie CLI MCP instructions.

Check the application, not just the server

MCP initialization and tool enumeration are answered by the companion even when the desktop application is unavailable. Begin with this read-only prompt:

Use the IconVectors MCP connection only. Do not modify any document or file.
Call app_ping, app_getInfo, app_getCapabilities and app_get_workspace.
Report the real results, the application version and workspace, and which
IconVectors tools this connection actually exposes. Stop if a call fails;
do not substitute shell edits or claim success from the tool count alone.

These four tools take empty arguments. For example, app_ping receives:

{}

The app capability result describes the application engine. The companion’s tools/list and profile metadata describe the callable subset in this connection; they need not contain every capability advertised by the app. The initialize and tools/list responses identify the profile in _meta["com.axialis.iconvectors/toolProfile"].

The normal requested port is 61337. When that port is unavailable, matching application/companion versions discover the app’s runtime fallback (2.10+). A custom requested port must agree on both sides. After an application restart, reconnect and reinspect the target. See Bridge status and logs.

Give Junie a short project brief

Keep the distributed MCP documentation folder accessible to the agent, including IconVectors-2-LLM-Junie-Integration-Guide.md and the complete iconvectors-mcp skill/reference folder. Copying these files alone does not register the server or make Junie read them.

The standalone plugin prefers .junie/AGENTS.md for project guidance; consult its documentation for precedence and older guideline locations. For AI Chat, use the context/rules mechanism provided by that installed client. Point it to the real guide and references rather than pasting the whole catalog into every prompt. A compact brief can say:

For icon tasks, read docs/iconvectors/README.md and the Junie workflow guide.
Discover the exposed tool schemas; never invent tool arguments or ordinals.
Search the approved local asset folders before drawing a new icon.
Match the named reference family's canvas, stroke, palette and padding.
Inspect -> make one bounded edit -> inspect -> preview -> correct.
Ask before replacing a document or overwriting an output file.

Also specify intended UI actions, reference SVG paths, canvas sizes, theme colors, output names and project asset folders. A library on disk is not automatically a semantic catalog: let the IDE search only the folders you approved, then have IconVectors adapt the chosen SVG.

Local MCP transport does not establish where the model runs. Verify the selected Junie model/provider and its data-handling settings separately before exposing private source files or artwork.

Try a bounded icon workflow

After the health checks pass, try:

Inspect the current IconVectors document and ask before replacing unsaved work.
Use the approved reference icons in C:\IconProject\References to propose two
distinct 24-by-24 concepts for Add Person and Add Package. Show the plan first.
Prefer adapting an existing asset. Match its stroke, padding and palette.
After approval, create or adapt one icon at a time using the exposed schemas.
Explicitly set fill/stroke states so drawing defaults cannot add stray strokes.
Inspect and preview each result on light and dark backgrounds before saving.
Ask before overwriting any destination and report exactly which files exist.

Use document transactions for compatible multi-step edits. Document Undo does not undo exports, file replacement or Explorer batch writes. Reinspect after structural changes: old ordinals can become stale.

For a dark preview, render_previewPng accepts:

{"mode": "vector", "background": "dark", "sizePx": 128}

The preview result contains PNG base64 data, not an MCP image block. If Junie cannot display or inspect that image, review it yourself or use an approved client image-viewing mechanism. The assistant must not claim visual inspection merely because rendering returned successfully.

Save SVG and create a multi-size ICO

Keep an editable SVG as the source. Ask Junie to save to an approved absolute Windows path, then export the active Editor icon, for example with export:

{
  "format": "ico",
  "path": "C:\\IconProject\\Output\\add-person.ico",
  "sizes": [16, 24, 32, 48, 256]
}

Confirm the current document and replacement permission first. Single-file export has no overwrite: false switch. Check the returned path, image count and sizes, then confirm the file with a read-only filesystem check. PNG export uses export_toBitmap; its arguments are different. See Exporting Windows ICO files (2.10+) for the complete export contract.

Plan and review an Explorer batch

Batch tools are in Medium and Full, not Small. Start from the actual accepted Explorer folder/selection, not a guessed file list. Wait for asynchronous folder navigation to finish and review that state before planning. For Apply Color Palette, select the desired palette in the application first; direct palette management requires Full.

For example, explorer_batch_export_icons can plan PNG and ICO generation:

{
  "mode": "plan",
  "use_explorer_selection": true,
  "output_folder": "C:\\IconProject\\Output\\Batch",
  "formats": ["png", "ico"],
  "png_sizes": [24, 48],
  "ico_sizes": [16, 24, 32, 48, 256],
  "current_color": "#202020",
  "overwrite": false
}

Ask Junie to summarize inputs, outputs, replacements and diagnostics, then wait for approval. Apply only the returned live plan_id:

{"mode": "apply", "plan_id": "RETURNED_PLAN_ID"}

Replace that placeholder with the exact reviewed plan ID; never invent one. A consumed, expired or stale plan needs a fresh preview/approval. A client timeout is not cancellation: inspect state/results before retrying. Batch filesystem writes are not Editor Undo. See Selection, preview and safety and Explorer batch commands at a glance.

Troubleshooting

Junie has no IconVectors tools

Verify the correct client configuration: AI Chat and the standalone plugin are separate. Check JSON, the executable path and server status. Merely giving the agent a Markdown guide does not establish an MCP connection.

Too many tools, or some tools are missing

Reconnect with --profile small or --profile medium and review other connected servers. Full exposes 170 tools. Do not guess missing schemas or assume a model’s textual tool inventory is accurate.

Tool not available in the selected profile

This is a companion profile rejection, not a bad SVG or bridge bind failure. Choose a suitable profile, reconnect and reinspect before continuing. The companion does not silently widen the profile or forward the rejected call.

The server connects, but every app call fails

Run app_ping and inspect its real error. Check that IconVectors is running, the requested ports match and the intended instance is selected. See Bridge status and logs; do not remove Windows reserved port ranges.

The connection fails after restarting IconVectors

Reconnect the companion. Its session is pinned to the previous app identity and must not silently switch to another window.

Junie asks for approval

Keep confirmation for sensitive calls. For the standalone plugin, review specific Action Allowlist entries rather than enabling unrestricted Brave Mode. Client approval settings do not make filesystem writes undoable.

Logs are needed

Inspect the client’s MCP diagnostics. AI Assistant documents Help ‣ Show Log in Explorer and the logs directory’s mcp subfolder. Review logs for private paths or SVG content before sharing.

Client/model behavior can change independently of IconVectors. Complete the read-only health check, verify the actual exposed tools, and test on disposable copies before using the connection on valuable assets.