Getting Started with MPS 2026.1 EAP: A Hands-On Guide to New Features
Introduction
The Early Access Program (EAP) for MPS 2026.1 is now live, bringing a host of improvements and new capabilities. This guide walks you through downloading, installing, and leveraging the key features introduced in this build, including the platform upgrade, natural language checks, binary operation splitting, the read-only inspector style, and transitive dependency management. Whether you're a language designer or a project developer, these steps will help you take full advantage of the latest enhancements.

What You Need
- A supported operating system (Windows, macOS, or Linux)
- At least 4 GB of RAM (8 GB recommended)
- Java Development Kit (JDK) 25 or later (bundled with the EAP)
- An existing MPS project (or a new one to test features)
- Internet connection for downloading the EAP build
Step-by-Step Guide
Step 1: Download and Install MPS 2026.1 EAP
Begin by obtaining the latest EAP build from the official JetBrains website. Follow these steps:
- Navigate to the MPS download page and locate the 2026.1 EAP section.
- Click the download link for your operating system.
- Run the installer and follow the on-screen instructions. The installer includes JDK 25 and Kotlin 2.3.0 support, so no separate setup is needed.
- Once installed, launch MPS. You can open an existing project or create a new one to test the features below.
Step 2: Enable and Use Natural Language Checks for ICheckedNamePolicy
MPS now integrates with the IntelliJ Platform’s natural language support via Grazie. This allows you to verify that names in intentions, actions, and tools follow proper capitalization rules for a chosen language. To set it up:
- Go to File | Settings | Languages & Frameworks | Natural Languages.
- Add a language pack (e.g., English, German) by clicking the “+” button and downloading the required dictionaries.
- In your MPS project, create or locate an
ICheckedNamePolicyimplementation (e.g., for an intention or action). - Open the policy and check its Capitalization property. You’ll see four options:
- Title-case (default, follows standard rules)
- Sentence-case (intelligent platform rules)
- Inherited (uses the rules from the closest ancestor policy)
- No capitalization rules (disables checking)
- Select the desired option. MPS will automatically detect the language of the string and suggest corrections if capitalization is off. You can also manually specify a language in the policy settings to bypass detection.
Step 3: Split Binary Operations Across Multiple Lines
Long expressions with binary operators (e.g., a + b + c + d) can now be broken into multiple lines for better readability. To use this feature:
- Open an editor with a BinaryOperation node (like an addition or logical AND).
- Place your cursor anywhere on the binary operation line.
- Press Alt+Enter (or equivalent intention shortcut) to open the intention menu.
- Select “Split binary operation into multiple lines”. MPS will reformat the expression so each operator starts a new line.
- To revert, use the same intention and choose “Join binary operation into single line”. You can toggle between layouts as needed.
Step 4: Apply the Read-Only Inspector Style
The new read-only-inspector boolean editor style lets you enforce read-only behavior specifically in the inspector for selected nodes. Follow these steps to use it:

- Open your editor definition (e.g., a concept editor).
- Select a cell in the main editor that you want to become read-only when its node is inspected.
- In the Properties pane for that cell, locate the Boolean Editor Styles list.
- Enable the read-only-inspector style (disabled by default). This style is inheritable and can be overridden in child cells of the inspector.
- Now, when you click that node in the main editor and open the inspector (e.g., via Alt+Shift+I), all cells in the inspector become read-only. The style does not affect the main editor itself.
- To override, set read-only or not-read-only on individual inspector cells to fine-tune permissions.
Step 5: Manage Transitive Dependencies in Build Language
Build Language scripts no longer require explicit listing of every transitive build script. This simplifies dependency management for complex projects. To take advantage:
- Open your Build Language script (e.g.,
buildA.msl). - Define a dependency on
buildBusing thedependenciesdirective. - Ensure
buildBitself depends onbuildC. MPS will automatically resolvebuildCthrough the transitive chain. - In the generated Ant script, artifacts from
buildCwill be referenced as${artifacts.BuildC}– you can supply these from an outer build tool like Gradle or Maven. - No need to add
buildCexplicitly inbuildA’s dependencies list. This reduces duplication and maintenance effort.
Tips for a Smooth EAP Experience
- Back up your projects before testing the EAP, as it may not be fully stable.
- Explore natural language settings early – the Grazie integration can help enforce consistent naming across your languages.
- Use binary operation splitting to improve code readability in complex expressions; it works best with long chains.
- Combine the read-only inspector style with other editor styles to create secure inspection environments for sensitive node types.
- Test transitive dependency changes by checking generated output – the
${artifacts.XXX}properties should be resolved correctly in your build pipeline. - Report issues via the MPS issue tracker to help improve the final release.
Related Articles
- Anthropic Explores Next-Gen AI Chips: Talks with UK's Fractile for DRAM-Less Inference Accelerators
- Mastering Frame Generation: A Gamer's Guide to What It Really Does (and Doesn't Do)
- Framework Unveils 13 Pro with Panther Lake, Promises Upgradability Without Redesign
- Huawei's AI Chip Ambitions: $12 Billion Revenue on the Horizon as Domestic Demand Surges
- Intel's 18A-P Node: Unpacking the Performance and Efficiency Advances
- Cybercrime's Blueprint: MITRE ATT&CK Becomes Indispensable for Threat Detection
- AMD's MI350P AI Accelerator: 8 Key Features You Need to Know
- Rust 1.97 Drops Support for Older NVIDIA GPUs and CUDA Drivers