Integration

Junie codes in your JetBrains IDE. Windcraft keeps it on-system.

Junie brings an agent into IntelliJ, WebStorm, and the rest of the JetBrains IDEs, and it can call MCP servers. Windcraft is the design layer it reads from — so the components Junie writes match your tokens instead of guessing them.

Why IDE agents drift on design

Junie executes coding tasks inside your IDE, reasoning about the change in front of it. It has your code in view, but not a structured source of your design values, so UI work leans on the model’s priors — a generic gray here, an off-scale padding there. Across tasks the look fragments, because nothing in the loop hands it your actual tokens to read.

How Windcraft plugs into Junie

Junie reads MCP servers from a JSON config in your project or globally. Add Windcraft and Junie can fetch your tokens, contracts, and patterns as it works, generating against your real values.

  1. Run npx windcraft init in your repo to generate the config.
  2. Add the Windcraft server to .junie/mcp/mcp.json (or via Tools | Junie | MCP Settings).
  3. Junie calls get_design_tokens / get_component_contract / get_page_pattern as it codes.
  4. Run npx windcraft check to flag any drift before you commit.

Junie MCP config (.junie/mcp/mcp.json)

{
  "mcpServers": {
    "windcraft": {
      "command": "npx",
      "args": ["windcraft", "mcp"]
    }
  }
}

FAQ

Does it work across the JetBrains IDEs?
Yes. Junie’s MCP support is the same whether you run it in IntelliJ IDEA, WebStorm, PyCharm, or another JetBrains IDE — register Windcraft once and the design tools are available wherever Junie runs.
Project-level or global config?
Either. Add Windcraft to .junie/mcp/mcp.json in the project to version it with the repo, or add it globally through the Junie MCP settings so it applies everywhere.
Does my source code leave my machine?
No. The MCP server and analyzer run locally. Only metadata — tokens, contracts, rule violations — is synced to the cloud.

Related

Make every page speak the same language.